Skip to content
Snippets Groups Projects
user avatar
Cam Saul authored
* First crack at drill-thru, adding quick-filter-drill

* Adding object detail drill

Needs tests for the multi-PK case

* Add distribution-drill and foreign-key-drill

* Add sort drill

* summarize-column and part of automatic-insights

* Add `display-info` for drill-thrus and the special pivot functions

Clean up and should be ready for FE first crack

* Add `drill-thru` implementations for all current drills

* small fixes

* overhaul of available-drill-thru

Fixes several issues with targeting, merges in Mode logic, fixes
pivot-drills

Still TODO: other drills' mode conditions; lots of checking and testing
the various cases of what should be shown; writing tests for that.

* Add `display-info` for drill-thrus and the special pivot functions

Clean up and should be ready for FE first crack

* Add `display-info` for drill-thrus and the special pivot functions

Clean up and should be ready for FE first crack

* Integrating the basic drill-thru ops, with some debugging hacks

* Fix bad spelling of parameters

* bunch of a progress, :null sentinel, refactor to context

* tests for lots more cases; two missing drills

* adding underlying records drills, not yet working

* fixing up to work with upstream changes

* fixes from Denis' PR

* more progress debugging FE drills and adding tests

* drill tests coming along

* cleanup, test fixes

* display-info-js for recursion

* Add TS typing for displayInfo of drill thrus

* partial changes for underlying records

* hack hack

* splitting out progression logic to a separate file

* First crack at drill-thru, adding quick-filter-drill

* Adding object detail drill

Needs tests for the multi-PK case

* Add distribution-drill and foreign-key-drill

* Add sort drill

* summarize-column and part of automatic-insights

* Add `display-info` for drill-thrus and the special pivot functions

Clean up and should be ready for FE first crack

* Add `drill-thru` implementations for all current drills

* small fixes

* overhaul of available-drill-thru

Fixes several issues with targeting, merges in Mode logic, fixes
pivot-drills

Still TODO: other drills' mode conditions; lots of checking and testing
the various cases of what should be shown; writing tests for that.

* Add `display-info` for drill-thrus and the special pivot functions

Clean up and should be ready for FE first crack

* Add `display-info` for drill-thrus and the special pivot functions

Clean up and should be ready for FE first crack

* Integrating the basic drill-thru ops, with some debugging hacks

* Fix bad spelling of parameters

* bunch of a progress, :null sentinel, refactor to context

* tests for lots more cases; two missing drills

* adding underlying records drills, not yet working

* fixing up to work with upstream changes

* fixes from Denis' PR

* more progress debugging FE drills and adding tests

* drill tests coming along

* cleanup, test fixes

* display-info-js for recursion

* Add TS typing for displayInfo of drill thrus

* partial changes for underlying records

* hack hack

* splitting out progression logic to a separate file

* Lint and test cleanup

* MLv2 pivot reorganization part 1

* MLv2 pivots reorganization

* Revert some unneeded changes

* Don't enable the histogram test

* Fix lint errors and add a drill-thru-method implementation for sort

* `drill-thru` should support > 3 args

* Implement timeseries zoom drill thru

* Fix circular refs

* Fix `mu/defmethod` for Cljs

* Fix reader error in commented-out code :unamused:



* appease Eastwood

* PR feedback

---------

Co-authored-by: default avatarBraden Shepherdson <braden@metabase.com>
Co-authored-by: default avatarDenis Berezin <denis.berezin@metabase.com>
00e2565e
History

Metabase

Metabase is the easy, open-source way for everyone in your company to ask questions and learn from data.

Metabase Product Screenshot

Latest Release codecov Docker Pulls

Features

Take a tour of Metabase.

Supported databases

Installation

Metabase can be run just about anywhere. Check out our Installation Guides.

Contributing

Quick Setup: Dev environment

In order to spin up a development environment, you need to start the front end and the backend as follows:

Frontend quick setup

The following command will install the Javascript dependencies:

$ yarn install

To build and run without watching changes:

$ yarn build

To build and run with hot-reload:

$ yarn build-hot 

Backend quick setup

In order to run the backend, you'll need to build the drivers first, and then start the backend:

$ ./bin/build-drivers.sh
$ clojure -M:run

For a more detailed setup of a dev environment for Metabase, check out our Developers Guide.

Internationalization

We want Metabase to be available in as many languages as possible. See which translations are available and help contribute to internationalization using our project over at POEditor. You can also check out our policies on translations.

Extending Metabase

Hit our Query API from Javascript to integrate analytics. Metabase enables your application to:

  • Build moderation interfaces.
  • Export subsets of your users to third party marketing automation software.
  • Provide a custom customer lookup application for the people in your company.

Check out our guide, Working with the Metabase API.

Security Disclosure

See SECURITY.md for details.

License

This repository contains the source code for both the Open Source edition of Metabase, released under the AGPL, as well as the commercial editions of Metabase, which are released under the Metabase Commercial Software License.

See LICENSE.txt for details.

Unless otherwise noted, all files © 2023 Metabase, Inc.

Metabase Experts

If you’d like more technical resources to set up your data stack with Metabase, connect with a Metabase Expert.