A lightweight, hand-crafted, semantic layer as a library.
- Python 99.6%
- Shell 0.3%
|
Beto Dealmeida
38d53144f1
All checks were successful
Publish Docs / docs (push) Successful in 1m9s
Reviewed-on: #50 |
||
|---|---|---|
| .forgejo/workflows | Improve types | |
| docs | docs: more examples for segments | |
| examples | Improving style | |
| scripts | Split service | |
| src/cantrip | More work | |
| tests | Add tests | |
| .coveragerc | ||
| .flake8 | ||
| .gitignore | More work | |
| .pre-commit-config.yaml | ||
| cantrip-i-cla.md | ||
| databases.yml.example | ||
| docker-compose.yml | ||
| LICENSE | ||
| Makefile | Fix Makefile | |
| poetry.lock | Testing | |
| pyproject.toml | Testing | |
| README.md | docs: derived metrics | |
| setup.cfg | ||
| TODO.md | More work | |
💫 Cantrip
Cantrip is a lightweight, hand-crafted, semantic layer as a library, written in modern Python. Semantics are stored as database views, so you can use native SQL to define metrics, dimensions, relationships and more, without the need for any external services. Cantrip generates the SQL queries needed to compute arbitrarily complex requests for multiple metrics and dimensions, and can even run the query for you.
Currently supported/planned databases:
- SQLite
- DuckDB
- Postgres
- BigQuery
- Snowflake
- MariaDB
- MySQL
- Oracle (19c)
- Databricks
- SQL Server
- CockroachDB
- ClickHouse
- Redshift
- Trino