Self-hosted service
nocodb/nocodb avatar
nocodb/nocodb

NocoDB: A Self-Hosted Airtable Alternative with a Spreadsheet Interface

NocoDB turns PostgreSQL or SQLite databases into a spreadsheet-style workspace with automatic REST APIs, serving as a free, self-hostable Airtable alternative.

65,522 stars5,138 forksTypeScriptLicense varies

At a glance

What is it?
NocoDB is a free, self-hostable database builder with a spreadsheet interface, workflow automations, and an App Store for workflow automations. This review covers installation, architecture, limitations, and alternatives.
Who is it for?
Adopt NocoDB if you need a free, self-hosted spreadsheet-style database with multiple view types, role-based access, and workflow automations, and you are comfortable managing your own server and upgrades. Do not use it if you require a fully managed service with zero operational overhead.
Can I use it commercially?
Check first. The repository uses a licence we do not classify automatically, so read its LICENSE file before any commercial use.
Is it still maintained?
Yes. The repository received new commits within the last day.
What is it written in?
Mainly TypeScript, according to GitHub's language statistics.

Answers come from the project's GitHub data, last synced on November 13, 2026, and from our analysis. They are not legal advice.

From daily snapshots

Star history

  • nocodb/nocodb65,522 ★ · +1,182
Star history
Repository2026-07-282026-11-13
nocodb/nocodb64.3k65.5k

1,182 Stars in the last 108 days, measured from the daily GitHub snapshot. Compare with other projects

Editorial analysis

What NocoDB Solves and Who It Is For

NocoDB positions itself as a free, self-hostable alternative to Airtable. The problem it solves is twofold. First, it gives teams a spreadsheet-like interface for building databases without writing SQL. Second, it removes the dependency on a hosted SaaS product, letting you keep data on your own infrastructure. The intended audience includes small teams, developers, and non-technical users who need a quick way to model data, share views, and automate workflows. It is also for organizations that have data residency or cost constraints. The README claims it is the fastest and easiest way to build databases online, but that is a marketing statement. What is verifiable is that the project provides a rich spreadsheet interface with operations like create, read, update, delete on tables, columns, and rows, plus sorting, filtering, grouping, and multiple view types.

How It Works: Architecture and Data Flow

The architecture is visible from the installation options and the auto-upstall script. NocoDB runs as a single container by default, and it can use SQLite as an embedded database or connect to an external PostgreSQL database via the NC_DB environment variable. The data flow is straightforward: the web UI communicates with the NocoDB backend, which translates spreadsheet operations into SQL queries against the underlying database. The auto-upstall script reveals a more complex production setup: it generates a docker-compose file that includes NocoDB, PostgreSQL, Redis, and a Traefik gateway. Redis is likely used for caching or session management, and Traefik handles SSL termination and reverse proxying. The presence of a JWT secret in the Docker command (NC_AUTH_JWT_SECRET) suggests token-based authentication.

Getting It Running: Commands and Config

The quickest way to start is Docker with SQLite. The command is: docker run -d --name noco -v "$(pwd)"/nocodb:/usr/app/data/ -p 8080:8080 nocodb/nocodb:latest. This mounts a local directory for data persistence and exposes port 8080. For PostgreSQL, configure `NC_DB` with your own database host, database name, user and strong password, and set `NC_AUTH_JWT_SECRET` to a unique random secret stored securely. Do not reuse public example credentials. For automated setup, consult the current official installation guide and inspect the installer before running it; it sets up NocoDB with PostgreSQL, Redis, and Traefik. It also handles SSL and renews it, but it requires a domain or subdomain. For local testing, there are one-liner binaries for macOS, Linux, and Windows. After starting, access the dashboard at http://localhost:8080/dashboard.

Feature Set and Recent Additions

The core feature set is a rich spreadsheet interface with basic CRUD operations, field operations like sort, filter, group, and hide/unhide columns, and multiple view types: Grid, Gallery, Form, Kanban, and Calendar. The README also mentions collaborative views and locked views. Share bases or views can be public or private with password protection. Cell types include ID, Links, Lookup, Rollup, SingleLineText, Attachment, Currency, Formula, and User. There is fine-grained access control with roles at different levels. The README also mentions an App Store for workflow automations, with integrations in three main categories.

Limitations and Failure Modes

One genuine limitation is the licence: GitHub reports no recognised SPDX licence (NOASSERTION), and the root package.json declares the Sustainable Use License, which is not a permissive licence. Check LICENSE.md against your intended use before deploying. Another limitation is that the auto-upstall script requires a domain or subdomain for SSL setup, which adds friction for internal or air-gapped environments. The binaries are described as only for quick testing locally, so they are not suitable for production. If the server goes down, access to the data is lost. Also, the default SQLite setup is fine for small teams but may not handle high write concurrency. The use of Redis in the production setup suggests that a single-node deployment is not the intended architecture for large workloads.

Alternatives and How They Differ

The obvious alternative is Airtable itself. The difference is that Airtable is a hosted SaaS, so you do not manage infrastructure, but you pay per seat and your data resides on Airtable's servers. NocoDB is free and self-hostable, but you bear the operational cost. Another alternative is Baserow, which is also an open-source, self-hosted spreadsheet-database hybrid. Baserow takes a similar approach but has a different plugin architecture and API. A more code-centric alternative is Directus, which wraps an existing SQL database with a REST API and an admin app, but its default interface is more like a data management console than a spreadsheet. The key difference in approach is that NocoDB focuses on mimicking Airtable's user experience, while Directus assumes you already have a database schema and want to manage it. For teams that need a spreadsheet-like interface without writing code, NocoDB is closer to Airtable. For teams that want to build a custom app on top of a database, Directus might be a better fit.

Maintenance and Upgrade Cost

The auto-upstall script automatically upgrades NocoDB to the latest version when you run it again, which reduces upgrade friction. However, this also means that running the script can introduce breaking changes. The use of Docker Compose means you can manage updates by pulling new images and recreating containers, but you must back up the mounted data volume. The NC_AUTH_JWT_SECRET must be stable across upgrades, or existing tokens will become invalid. The root package.json declares the Sustainable Use License, so check its terms for your use. The project is actively developed, with releases every few weeks, so you should expect a steady stream of updates. Each update may require testing of your custom views and automations. The presence of Redis and Traefik in the production setup means you have to maintain those components as well. Overall, the operational cost is moderate for a team with DevOps experience, but it is not zero.

Editorial conclusion

Adopt NocoDB if you need a free, self-hosted spreadsheet-style database with multiple view types, role-based access, and workflow automations, and you are comfortable managing your own server and upgrades. Do not use it if you require a fully managed service with zero operational overhead. Before adopting, confirm that the license terms for your intended use are acceptable, since the root package.json declares the Sustainable Use License. Test the Docker deployment with your preferred database (SQLite or PostgreSQL) and check that the auto-upstall script works in your environment.

Frequently asked questions

What is NocoDB for?

It gives a spreadsheet interface over a database you host, so tables, columns and rows can be created, edited and sorted through a grid while the data itself stays in SQLite or PostgreSQL.

how to install nocodb

With Docker, mounting a volume at /usr/app/data/ and publishing port 8080, which is the first of the documented methods. The dashboard is then reached at http://localhost:8080/dashboard.

is nocodb free

The project describes itself as a Free & Self-hostable Airtable Alternative. The root package.json declares Sustainable Use License rather than a permissive one, so the terms in LICENSE.md are what decide the answer for a particular use.

Is NocoDB better than Airtable?

The answer depends on your own constraints. The substantive difference is that Airtable is hosted while this runs as a container you operate against a database you choose.

how to install nocodb on windows

Through a binary download, where iwr fetches win-x64.exe or win-arm64.exe from get.nocodb.com and the resulting executable is run directly. The project marks those binaries as being only for quick testing locally, and Docker is the other documented method.

Official sources

  1. Official documentation
  2. Official README
  3. Project repository
  4. Release notes
Community

Where developers are discussing it

Posts on Hacker News, dev.to and Lobsters that link to this repository, found by our scan of those communities. 0 in the last 30 days; newest first.

Add this badge to your README

If you maintain this project, the badge below links readers to this analysis and shows its maintenance status from the daily GitHub snapshot. Paste the markdown into your README; add ?metric=license or ?metric=stars to the image URL for a different field.

Add this badge to your README

markdown
[![Hysen Labs](https://hysenlabs.com/badge/nocodb-nocodb.svg)](https://hysenlabs.com/projects/nocodb-nocodb)

Star history chart for your README

markdown
[![Star history](https://hysenlabs.com/chart/nocodb-nocodb.svg)](https://hysenlabs.com/projects/nocodb-nocodb)

Was this useful?