A versatile data management platform combining spreadsheet simplicity with relational database capabilities for efficient data organization and analysis.

Overview:

Grist is an open-source relational spreadsheet that combines the flexibility of a spreadsheet with the robustness of a database. It uses named columns that hold one type of data, similar to databases, and supports spreadsheet-style formulas that automatically update when referenced cells change. Grist is suitable for users who need more structure than a traditional spreadsheet but more flexibility than a database application. It is available as a self-hosted server (grist-core), a desktop application for local use (grist-desktop), and a static build for embedding on websites (grist-static).

Core Features:

  • Python-based formulas: Full Python syntax including the standard library, plus many Excel functions and an AI Formula Assistant that works with OpenAI, Llama, and other models via OpenRouter.

  • Relational data model: Columns are named and typed; supports references and reference lists for cross-referencing records between tables, with two-way automatic synchronization.

  • Drag-and-drop dashboards: Includes charts, card views, a calendar widget, summary tables, widget linking, and a filter bar for data visualization.

  • Incremental imports: Allows importing CSV data in stages without duplicating previously imported records.

  • Access control: Share documents, workspaces, or team sites; control access to individual rows, columns, and tables based on cell values and user attributes. OIDC and SAML support for single sign-on.

  • Collaboration features: Cell comments with threaded replies and @-mentions, real-time awareness of other viewers, and a "suggest changes" workflow inspired by source control.

Use Cases:

  • Self-hosting a database-driven spreadsheet server: Organizations that want full control over their data can run Grist on their own infrastructure using Docker, with support for SQLite-based portable files.

  • Building internal data applications: Teams can create structured spreadsheets with relational tables, formulas, and dashboards for tasks like project tracking, inventory management, or reporting.

  • Embedding interactive data views on static websites: Using grist-static, developers can display and share spreadsheets on a static site without requiring a back-end server.

  • Managing data with fine-grained permissions: Users can share documents or team sites and restrict access at the row, column, or table level, suitable for environments where data sensitivity varies per user.

Why It Matters:

Grist is a practical open-source option for users who need a hybrid spreadsheet-database tool with self-hosting as a first-class option. The codebase supports Python-based formulas, relational data structures, and granular access controls, all of which are documented in the README. Its portable SQLite-based file format and support for sandboxing untrusted documents add practical value for self-hosters. The project is developed under an open-core model, with grist-core under the Apache 2.0 license, making the core functionality freely available for deployment, customization, and integration into developer workflows.

分享XLinkedInReddit

相关工具

项目数据

Stars

11,009

Forks

570

许可证

Apache-2.0

元数据

替代对象
Airtable