GStars
    cube-js

    cube-js/cube

    ๐Ÿ“Š Cube Core is open-source semantic layer for AI, BI and embedded analytics

    ai
    analytics
    database
    agentic-analytics
    agents
    bi
    bigquery
    business-intelligence
    businessintelligence
    conversational-analytics
    cube
    databricks
    embedded-analytics
    headless-bi
    mysql
    postgresql
    rust
    semantic-layer
    snowflake
    sql
    Rust
    NOASSERTION
    19.5K stars
    2.0K forks
    19.5K watching
    Updated 2/27/2026
    View on GitHub
    Backblaze Advertisement

    Loading star history...

    Health Score

    75

    Weekly Growth

    +0

    +0.0% this week

    Contributors

    1

    Total contributors

    Open Issues

    892

    Generated Insights

    About cube

    Cube โ€” Semantic Layer for Data Applications


    Website โ€ข Getting Started โ€ข Docs โ€ข Examples โ€ข Blog โ€ข Slack โ€ข X

    npm version GitHub Actions FOSSA Status

    Cube is the universal semantic layer for modern data applications. Born in the cloud era, Cube represents the next evolution of OLAP technology, helping data engineers and application developers access data from modern data stores, organize it into consistent definitions, and deliver it to every application.

    Learn more about connecting Cube to data sources and analytics & visualization tools.

    Cube was designed to work with all SQL-enabled data sources, including cloud data warehouses like Snowflake or Google BigQuery, query engines like Presto or Amazon Athena, and application databases like Postgres. Cube has a built-in relational caching engine to provide sub-second latency and high concurrency for API requests.

    For more details, see the introduction page in our documentation.

    Why Cube?

    As data infrastructure evolved from traditional relational databases to cloud data platforms, OLAP capabilities that once lived in specialized servers like SQL Server Analysis Services and Oracle Essbase were left behind. Today's organizations face several challenges:

    1. Analytics Modeling and Multidimensionality. Modern cloud data platforms excel at processing large volumes of data but lack native support for multidimensional analysis and modeling. Cube brings OLAP-style analytics to these platforms, enabling consistent metric definitions and multidimensional analysis.

    2. Performance Optimization. While cloud data warehouses have improved query performance through column-oriented storage and distributed processing, they still struggle with complex analytical workloads. Cube provides intelligent caching and pre-aggregation strategies that dramatically improve query response times.

    3. Access Control and Governance. Securing and governing access to data across all consuming applications remains critical. Cube offers robust access control to ensure consistent security across your entire data ecosystem.

    4. API Flexibility. Legacy OLAP tools were limited in how they exposed data. Cube provides modern REST, GraphQL, and SQL APIs along with support for traditional MDX and DAX interfaces, making it a truly universal semantic layer.

    Cube is the missing OLAP engine for the cloud data platform era that provides the necessary infrastructure and features to implement efficient data modeling, access control, and performance optimizations without duplicating analytics modeling, data, or security permissions across different tools.

    Getting Started ๐Ÿš€

    Cube Cloud

    Cube Cloud is the fastest way to get started with Cube. It provides managed infrastructure as well as an instant and free access for development projects and proofs of concept.

    Get started now

    For a step-by-step guide on Cube Cloud, see the docs.

    Docker

    Alternatively, you can get started with Cube locally or self-host it with Docker.

    Once Docker is installed, in a new folder for your project, run the following command:

    docker run -p 4000:4000 \
      -p 15432:15432 \
      -v ${PWD}:/cube/conf \
      -e CUBEJS_DEV_MODE=true \
      cubejs/cube
    

    Then, open http://localhost:4000 in your browser to continue setup.

    For a step-by-step guide on Docker, see the docs.

    Resources

    Contributing

    There are many ways you can contribute to Cube! Here are a few possibilities:

    • Star this repo and follow us on X.
    • Add Cube to your stack on Stackshare.
    • Upvote issues with ๐Ÿ‘ reaction so we know what's the demand for particular issue to prioritize it within road map.
    • Create issues every time you feel something is missing or goes wrong.
    • Ask questions on Stack Overflow with cube.js tag if others can have these questions as well.
    • Provide pull requests for all open issues and especially for those with help wanted and good first issue labels.

    All sort of contributions are welcome and extremely helpful ๐Ÿ™Œ Please refer to the contribution guide for more information.

    License

    Cube Client is MIT licensed.

    Cube Backend is Apache 2.0 licensed.

    FOSSA Status

    Discover Repositories

    Search across tracked repositories by name or description