Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Light-weight Python OLAP framework for multi-dimensional data analysis
Python JavaScript HTML CSS

Merge pull request #284 from gitter-badger/gitter-badge-1

Add a Gitter chat badge to
latest commit 004eb82e23
@Stiivi Stiivi authored
Failed to load latest commit information.
bin [slicer] moved into the package
cubes Added 1.0.1 changes and bumped version to 1.0.1
doc Added 1.0.1 changes and bumped version to 1.0.1
examples Increase debug level in hello_world example. Closes #277
goodies Added some syntax candy
incubator/modeler Separated dictionary metadata management
models Renamed date/time to base_date/base_time and moved to internal dir
tests more compat for tutorial
.coverage Added 1.0.1 changes and bumped version to 1.0.1
.gitignore initial work on ressurecting the mongo backend and making it work wit…
.hgignore initial commit after extraction from brewery
.hgtags Added tag v0.6 for changeset 39416fc0d89e
.travis.yml add travis-ci test for py3k
AUTHORS added more authors and credits
CHANGES No CHANGES file any more.
LICENSE moved cross_table to aggregation results; minor fixes Added Gitter badge
README.rst Renamed README to .md. Added Flattr link. Added visualizer instructions
jsonschema.json Share attribute properties in cube schema; fixed dimension schema
requirements-optional.txt Removed duplicate requirement for flask
requirements.txt Preliminary model validation using jsonschema (added dependency) Added 1.0.1 changes and bumped version to 1.0.1

Cubes - Online Analytical Processing Framework for Python

Join the chat at

Flattr this git repo

Cubes is a light-weight Python framework and set of tools for Online Analytical Processing (OLAP), multidimensional analysis and browsing of aggregated data.

Focus on data analysis, in human way


Purpose is to provide a framework for giving analyst or any application end-user understandable and natural way of presenting the multidimensional data. One of the main features is the logical model, which serves as abstraction over physical data to provide end-user layer.


  • OLAP and aggregated browsing (default backend is for relational databse - ROLAP)
  • multidimensional analysis
  • logical view of analysed data - how analysts look at data, how they think of data, not not how the data are physically implemented in the data stores
  • hierarchical dimensions (attributes that have hierarchical dependencies, such as category-subcategory or country-region)
  • localizable metadata and data
  • SQL query generator for multidimensional aggregation queries
  • OLAP server – HTTP server based on Flask Blueprint, can be easily integrated into your application.


Latest release documentation:

Development documentation:


See examples directory in the source code repository for simple examples and use-cases.

See for more complex examples.


For cubes models see


Source code is in a Git repository on GitHub <>_. ::

git clone git://

After you've cloned, you might want to install all of the development dependencies. ::

pip install -e .[dev]

Build the documentation like so. ::

cd doc
make help
make html

Outputs will go in doc/_*.


Python >= 2.7 and Python >= 3.4.1

Most of the requirements are soft (optional) and need to be satisfied only if certain parts of cubes are being used.


If you have questions, problems or suggestions, you can send a message to the Google group cubes-discuss.

IRC channel #databrewery on server

Report bugs using github issue tracking.


If you are browsing the code and you find something that:

  • is over-complicated or not obvious
  • is redundant
  • can be done in better Python-way

... please let it be known.


Cubes is written and maintained by Stefan Urbanek (@Stiivi on Twitter) and various contributors. See AUTHORS file for more information.


Cubes is licensed under MIT license with following addition.

If your version of the Software supports interaction with it remotely through a computer network, the above copyright notice and this permission notice shall be accessible to all users.

Simply said, that if you use it as part of software as a service (SaaS) you have to provide the copyright notice in an about, legal info, credits or some similar kind of page or info box.

For full license see the LICENSE file.

Something went wrong with that request. Please try again.