Teable — No-Code Postgres Spreadsheet Database
Teable is an open-source Airtable alternative built on PostgreSQL. Spreadsheet UI with real-time collaboration, API access, and no-code app building capabilities.
What it is
Teable is an open-source alternative to Airtable built on PostgreSQL. It combines a familiar spreadsheet interface with the power of a real relational database, offering real-time collaboration, REST API access, and no-code application building capabilities.
It targets teams who outgrow spreadsheets but find traditional database tools too complex. Product managers, operations teams, and small development shops use Teable to manage structured data with the ease of a spreadsheet and the reliability of Postgres.
How it saves time or tokens
Teable eliminates the gap between spreadsheets and databases. Teams no longer need to export CSV files, write migration scripts, or maintain separate data entry interfaces. The built-in API means AI agents and automation tools can read and write data directly, saving the token overhead of converting between formats.
How to use
- Deploy Teable using Docker Compose or the cloud-hosted version.
- Create a table with columns (fields) using the spreadsheet interface, choosing from field types like text, number, date, attachment, and linked records.
- Use the REST API or built-in views (grid, kanban, form, gallery) to interact with your data programmatically or visually.
Example
# Deploy Teable with Docker Compose
git clone https://github.com/teableio/teable.git
cd teable
docker compose up -d
# Access at http://localhost:3000
# Query data via the REST API
curl -H 'Authorization: Bearer YOUR_API_TOKEN' \
'https://your-teable-instance/api/table/tbl_xxx/record?filter={"field_name":{"eq":"active"}}'
Related on TokRepo
- AI Tools for No-Code — No-code platforms for building applications
- AI Tools for Database — Database tools and management solutions
Common pitfalls
- Treating Teable as a simple spreadsheet and ignoring field types, which leads to data quality issues when using the API.
- Not setting up proper access controls when exposing the API to external tools or AI agents.
- Overlooking the PostgreSQL connection string for direct database access when Teable's API does not cover a specific query pattern.
Frequently Asked Questions
Teable is open source and self-hosted, so your data stays on your infrastructure. It uses a real PostgreSQL database under the hood, meaning you can connect with standard SQL tools. Airtable is a proprietary SaaS product with usage-based pricing.
Yes. Since Teable stores data in PostgreSQL, you can connect any SQL client or BI tool directly to the underlying database. This gives you full SQL power alongside the spreadsheet interface.
Yes. Multiple users can edit the same table simultaneously with changes reflected in real time, similar to Google Sheets or Airtable. Conflict resolution is handled automatically.
Yes. Teable provides Docker Compose files for self-hosting. You need PostgreSQL, Redis, and the Teable application containers. The setup is straightforward for teams familiar with Docker.
Yes. Teable exposes a REST API for CRUD operations on tables and records. You can use it with automation tools, AI agents, or custom scripts to read, create, update, and delete records programmatically.
Citations (3)
- Teable GitHub— Open-source Airtable alternative built on PostgreSQL
- Teable Documentation— Spreadsheet UI with real-time collaboration
- Teable API Docs— REST API for programmatic data access
Related on TokRepo
Source & Thanks
- GitHub: teableio/teable — 21.1K+ ⭐
- Website: teable.io
Discussion
Related Assets
doctest — The Fastest Feature-Rich C++ Testing Framework
doctest is a single-header C++ testing framework designed for minimal compile-time overhead and maximum speed.
Chai — BDD/TDD Assertion Library for Node.js
Chai is a flexible assertion library for Node.js and browsers that supports expect, should, and assert styles.
Supertest — HTTP Assertion Library for Node.js APIs
Supertest provides a high-level API for testing HTTP servers in Node.js with fluent assertion chaining.