Grist is a free, open source databases project written in TypeScript and released under Apache-2.0. It has 11,815 GitHub stars, 644 forks and 727 open issues, and was last pushed 32 hours ago. On this registry it ranks #47 of 81 tracked projects in Databases, and is listed as an open source replacement for 2 paid products, with 5 head-to-head comparisons available. It gained 49 stars over the last 6 tracked days.

Grist — Flexible spreadsheets with database power

What is Grist?

What it is

Grist is a modern relational spreadsheet that combines spreadsheet flexibility with database robustness. It lives in the open-source database and spreadsheet ecosystem, and the grist-core repository provides the server needed to host spreadsheets. The project is positioned as an open alternative to Airtable and Microsoft Excel. Grist Community edition is also known as grist-core.

Grist solves the problem of spreadsheets that lack stable data structure. Its columns are named and hold one kind of data, while formulas can update automatically when referenced cells change. This model supports Python formulas, SQLite-based documents, desktop use, static display, and self-hosted deployment. The project also includes grist-desktop for local files and grist-static for in-browser display.

Key capabilities

  • Columns behave like database fields: they have names and hold one kind of data.
  • Columns can be filled with formulas, and referenced cells update automatically when inputs change.
  • Python formulas support full Python syntax and the standard library, with many Excel functions also available.
  • An AI Formula Assistant works with OpenAI, Llama, and other models through OpenRouter or OpenAI-compatible endpoints.
  • A formula timer helps diagnose slow formulas.
  • Documents use a SQLite-based portable format, allowing backups to be restored and tools that read SQLite to access numeric and text data.
  • Grist can be displayed on a static website with grist-static without a special server.

Who uses it and how

  • Self-hosters run grist-core to host spreadsheets on a server they control.
  • Desktop users run grist-desktop on Linux, macOS, or Windows to view and edit spreadsheets stored locally.
  • Website publishers use grist-static to display spreadsheets without back-end support.
  • Users coming from Airtable adopt a familiar database-like model, while users coming from Excel or Google Sheets adjust to named and typed columns.
  • Grist Labs develops the project, and French government organizations ANCT Données et Territoires and DINUM have contributed significantly to the codebase.

Getting started

Typical methods include running grist-core with Docker, using the desktop app, or visiting the hosted service at getgrist.com. Users can also try a spreadsheet immediately at docs.getgrist.com. The hosted option at getgrist.com and cloud packaging are offered by Grist Labs.

When to use it — and when not to

Grist suits teams that want spreadsheet editing plus database structure, a self-contained document format, and an open alternative to Airtable or Microsoft Excel. Self-hosters must operate the server environment, including Docker and the grist-core server that hosts SQLite-based documents, while SMTP is not specified. The free and paid hosted services are offered by Grist Labs, while grist-core is the Grist Community edition. The trade-off is that spreadsheet users may need to adjust to named and typed columns, and some additional features are not in grist-core.

project readme (upstream, from github) — read inline

Grist

Grist is a modern relational spreadsheet. It combines the flexibility of a spreadsheet with the robustness of a database.

  • grist-core (this repo – also known as Grist Community edition) has what you need to run a powerful server for hosting spreadsheets.
  • grist-desktop is a Linux/macOS/Windows desktop app for viewing and editing spreadsheets stored locally.
  • grist-static is a fully in-browser build of Grist for displaying spreadsheets on a website without back-end support.

Grist is developed by Grist Labs, an NYC-based company 🇺🇸🗽. The French government 🇫🇷 organizations ANCT Données et Territoires and DINUM (Direction Interministérielle du Numérique) have also made significant contributions to the codebase.

The grist-core, grist-desktop, and grist-static repositories are all open-source (Apache License, Version 2.0). Grist Labs sells an edition of Grist with additional features. Grist Labs also offers free and paid hosted services at getgrist.com, as well as cloud packaging.

Questions? Feedback? Want to share what you're building with Grist? Join our official Discord server or visit our Community forum.

To keep up-to-date with everything that's going on, you can sign up for Grist's monthly newsletter.

https://github.com/user-attachments/assets/fe152f60-3d15-4b11-8cb2-05731a90d273

Features in grist-core

To see exactly what is present in grist-core, you can run the desktop app, or use docker. The absolute fastest way to try Grist out is to visit docs.getgrist.com and play with a spreadsheet there immediately – though if you do, please read the list of additional features that are not in grist-core.

However you try it, you'll quickly see that Grist is a hybrid database/spreadsheet, meaning that:

  • Columns work like they do in databases: they are named, and they hold one kind of data.
  • Columns can be filled by formula, spreadsheet-style, with automatic updates when referenced cells change.

This difference can confuse people coming directly from Excel or Google Sheets. Give it a chance! There's also a Grist for Spreadsheet Users article to help get you oriented. If you're coming from Airtable, you'll find the model familiar (and there's also our Grist vs Airtable article for a direct comparison).

Here are some specific feature highlights of Grist (🇫🇷 marks heavy French govt. contributions):

  • Python formulas.
  • A portable, self-contained format.
    • Based on SQLite, the most widely deployed database engine.
    • Any tool that can read SQLite can read numeric and text data from a Grist file.
    • Enables backups that you can confidently restore in full.
    • Great for moving between different hosts.
  • Can be displayed on a static website with grist-static – no special server needed.
  • A self-contained desktop app for viewing and editing locally: grist-desktop.
  • Convenient editing and formatting features.
    • Choices and choice lists, for adding colorful tags to records.
    • References and reference lists, for cross-referencing records in other tables.
    • Two-way references that automatically synchronize between tables.
    • Attachments, to include media or document files in records.
    • Dates and times, toggles, and special numerics such as currency all have specialized editors and formatting options.
    • Conditional Formatting, letting you control the style of cells with formulas to draw attention to important information.
    • Markdown formatting in text cells.
  • Drag-and-drop dashboards.
    • Charts, card views and a calendar widget for visualization.
    • Summary tables for summing and counting across groups.
    • Widget linking streamlines filtering and editing data. Grist has a unique approach to visualization, where you can lay out and link distinct widgets to show together, without cramming mixed material into a table.
    • Filter bar for quick slicing and dicing.
    • Duplicate widgets to quickly build variations of a view.
    • Compare documents to see what changed.
  • Incremental imports.
    • Import a CSV of the last three months activity from your bank...
    • ...and import new activity a month later without fuss or duplication.
  • Native forms. Create forms that feed directly into your spreadsheet without fuss.
    • Supports file attachments, hidden fields, and pre-population via URL parameters.
  • Integrations.
  • Many templates to get you started, from investment research to organizing treasure hunts.
  • Access control options.
  • Collaboration.
    • Comments on cells, with threaded replies and @-mentions.
    • See who else is viewing a document in real time.
    • Suggest changes for others to review and approve, inspired by source control workflows.
  • Self-maintainable.

readme truncated — read the full docs on github

Frequently asked questions

Is Grist free to use?

Grist is open source under the Apache-2.0 licence. There is no licence fee and no seat count — you can self-host it or, where the project offers one, pay a vendor for a managed version instead.

What does Grist do?

Flexible spreadsheets with database power

What is Grist written in?

Grist is primarily written in TypeScript. Its source is publicly available at https://github.com/gristlabs/grist-core, and it has 11,815 GitHub stars.

What is a good open source alternative to Airtable?

Grist is one of the open source options listed as an alternative to Airtable, Microsoft Excel. Compare licences, stars and activity side by side on the Grist profile.