Go to file
tea artist f3aff98c82
feat: quick actions (#351)
* fix: allow hidden link field to lookup

* fix: rename view with space break input

* feat: quick actions
2024-01-30 11:23:04 +08:00
.changeset chore: change project links details 2022-11-01 18:06:18 +08:00
.github ci: update docker-push.yml (#330) 2024-01-15 15:06:44 +08:00
.husky feat: move to pnpm (#202) 2023-10-18 12:20:19 +08:00
.idea feat: records support filter (#74) 2023-07-27 14:05:23 +08:00
.vscode feat: scheduled computing (#334) 2024-01-18 11:09:54 +08:00
apps feat: quick actions (#351) 2024-01-30 11:23:04 +08:00
dockers refactor: sort query (#340) 2024-01-24 18:08:09 +08:00
docs feat: move to pnpm (#202) 2023-10-18 12:20:19 +08:00
packages feat: quick actions (#351) 2024-01-30 11:23:04 +08:00
scripts fix: docker deploy (#327) 2024-01-11 20:58:48 +08:00
static/assets chore: replace new asserts (#132) 2023-08-11 14:39:09 +08:00
.codeclimate.yml chore: initialize project 2022-11-01 17:36:07 +08:00
.dockerignore fix: docker deploy (#327) 2024-01-11 20:58:48 +08:00
.gitattributes fix: electron install mac bg (#103) 2023-07-27 11:41:58 +08:00
.gitignore feat: user me filter (#322) 2024-01-09 16:25:32 +08:00
.gitpod.yml feat: allow embed share view into iframe (#257) 2023-11-17 18:17:27 +08:00
.ncurc.yml feat: user me filter (#322) 2024-01-09 16:25:32 +08:00
.npmrc teat: backend vitest (#311) 2023-12-25 21:43:23 +08:00
.nvmrc refactor: sort query (#340) 2024-01-24 18:08:09 +08:00
.prettierignore feat: add user field (#300) 2023-12-18 16:17:04 +08:00
.prettierrc.js chore: initialize project 2022-11-01 17:36:07 +08:00
.vercelignore chore: initialize project 2022-11-01 17:36:07 +08:00
CHANGELOG.md feat: use localstorage, improve dev exp (#11) 2022-12-01 13:54:01 +08:00
CODE_OF_CONDUCT.md chore: initialize project 2022-11-01 17:36:07 +08:00
commitlint.config.js chore: initialize project 2022-11-01 17:36:07 +08:00
constraints.pro chore: initialize project 2022-11-01 17:36:07 +08:00
CONTRIBUTING.md refactor: rename ts-utils to core 2022-12-13 14:45:46 +08:00
DEVELOPER.md fix: postgres filter query (#248) 2023-11-09 15:29:22 +08:00
docker-bake.hcl fix: docker deploy (#327) 2024-01-11 20:58:48 +08:00
LICENSE chore: initialize project 2022-11-01 17:36:07 +08:00
lint-staged.common.js chore: initialize project 2022-11-01 17:36:07 +08:00
lint-staged.config.js chore: change project links details 2022-11-01 18:06:18 +08:00
Makefile feat: better save tip for field (#344) 2024-01-25 16:47:19 +08:00
monorepo.code-workspace perf: UI optimise (#316) 2024-01-04 16:04:07 +08:00
package.json feat: better save tip for field (#344) 2024-01-25 16:47:19 +08:00
pnpm-lock.yaml feat: better save tip for field (#344) 2024-01-25 16:47:19 +08:00
pnpm-workspace.yaml feat: move to pnpm (#202) 2023-10-18 12:20:19 +08:00
Procfile build: production docker image (#112) 2023-07-31 19:34:16 +08:00
railway.toml chore: update railway config 2023-11-23 20:59:37 +08:00
README.md fix: user filter (#306) 2023-12-21 22:04:48 +08:00
renovate.json5 chore: initialize project 2022-11-01 17:36:07 +08:00
TROUBLESHOOT.md chore: initialize project 2022-11-01 17:36:07 +08:00
tsconfig.base.json fix: docker start (#186) 2023-10-09 16:42:13 +08:00

teable logo

Enrich your database with spreadsheet UX and collaboration

Teable is a no-code application building platform built on relational databases. It uses a simple, spreadsheet-like interface to create complex enterprise-level database applications. Unlock efficient app development with no-code, free from the hurdles of data security and scalability.

build Codefactor Maintainability Techdebt Codacy grade LoC GitHub top language Licence

teable interface

Why Teable?

No-code tools have significantly speed up how we get things done, allowing non-tech users to build amazing apps and changing the way many work and live. People like using spreadsheet-like UI to handle their data because it's easy, flexible, and great for team collaboration. They also prefer designing their app screens without being stuck with clunky templates.

Giving non-techy people the ability to create their software sounds exciting. But that's just the start:

  • As businesses expand, their data needs intensify. No one wishes to hear that once their orders reach 100k, they'll outgrow their current interface. Yet, many no-code platforms falter at such scales.
  • Most no-code platforms are cloud-based. This means your important data sits with the provider, and switching to another platform can be a headache.
  • Sometimes, no-code tools can't do what you want because of their limitations, leaving users stuck.
  • If a tool becomes essential, you'll eventually need some tech expertise. But developers often find these platforms tricky.
  • Maintaining systems with complex setups can be hard for developers, especially if these aren't built using common software standards.
  • Systems that don't use these standards might need revamping or replacing, costing more in the long run. It might even mean ditching the no-code route and going back to traditional coding.

What we think the future of no-code products look like

  • An interface that anyone can use to build applications easily.
  • Easy access to data, letting users grab, move, and reuse their information as they wish.
  • Data privacy and choice, whether that's in the cloud, on-premise, or even just on your local.
  • It needs to work for developers too, not just non-tech users.
  • It should handle lots of data, so it can grow with your business.
  • Flexibility to integrate with other software, combining strengths to get the job done.
  • Last, native AI integration to takes usability to the next level.

In essence, Teable isn't just another no-code solution, it's a comprehensive answer to the evolving demands of modern software development, ensuring that everyone, regardless of their technical proficiency, has a platform tailored to their needs.

Features

📊 Spreadsheet-like interface

All you want is here

  • Cell Editing: Directly click and edit content within cells.
  • Formula Support: Input mathematical and logical formulas to auto-calculate values.
  • Drag-and-Fill: Drag the edges of cells to auto-populate series or duplicate values.
  • Data Sorting and Filtering: Sort data based on a column or multiple columns; use filters to view specific rows of data.
  • Data Formatting: formatting numbers, date, etc.
  • Row Styling & Conditional Formatting: Change row styles automatically based on specific conditions.
  • Charts & Visualization Tools: Create charts from table data such as bar charts, pie charts, line graphs, etc.
  • Data Validation: Limit or validate data that's entered into cells.
  • Freeze Columns: Freeze left column of the table so they remain visible while scrolling.
  • Import/Export Capabilities: Import data from other formats and export data, e.g., .csv, .xlsx.
  • Undo/Redo: Undo or redo recent changes.
  • Comments & Annotations: Attach comments to rows, providing explanations or feedback for other users.
  • Find & Replace: Search content within the table and replace it with new content.

🗂️ Multiple Views

Visualize and interact with data in various ways best suited for their specific tasks.

  • Table View: The default view of the table, which displays data in a spreadsheet-like format.
  • Kanban View: Displays data in a Kanban board, which is a visual representation of data in columns and cards.
  • Calendar View: Displays data in a calendar format, which is useful for tracking dates and events.
  • Gallery View: Displays data in a gallery format, which is useful for displaying images and other media.
  • Form View: Displays data in a form format, which is useful for collecting data.
  • Gantt View: Displays data in a Gantt chart, which is useful for tracking project schedules.
  • Timeline View: Displays data in a timeline format, which is useful for tracking events over time.

🚀 Super Fast

Build in minutes scale to millions

  • Millions of data are easily processed, and there is no pressure to filter and sort
  • Automatic database indexing for maximum speed
  • Supports batch data operations at one time

Real-time collaboration

Designed for teams

  • No need to refresh the page, data update in real time
  • Seamlessly integrate collaboration member invitation and management
  • Perfect permission management mechanism, from table to column level

🧠 Copilot

Native Integrated AI ability

  • Chat 2 App. "Create a project management app for me"
  • Chat 2 Chart. "Analyze the data in the order table using a bar chart"
  • Chat 2 View. "I want to see the schedule for the past week and only display participants"
  • Chat 2 Action. "After the order is paid and completed, an email notification will be sent to the customer"
  • More actions...

🔒 Privacy-First

You own your data, in spite of the cloud

  • Data is optionally stored locally without server support
  • Offline desktop client support
  • Sync & collaboration to cloud in just one click

🧩 Extensions

Expand infinite possibilities

  • Backend-less programming capability based on React
  • Customize your own application with extremely low cost
  • Extremely easy-to-use script extensions mode

🤖 Automation

Empower data-driven workflows effortlessly and seamlessly

  • Design your workflow with AI or Visual programming
  • Super easy retrieve data from table

Seamless integration with the software you are familiar with

  • BI tools like Metabase PowerBi...
  • No-code tools like appsmith...
  • Direct retrieve data with native sql

🗄️ Support for multiple databases

Choose the Sql-database you like

  • Sqlite, PostgreSQL, MySQL, MariaDB, TiDB...

Structure

Open in Gitpod

.
├── apps
│   ├── electron            (desktop, include a electron app )
│   ├── nextjs-app          (front-end, include a nextjs app)
│   └── nestjs-backend      (backend, running on server or inside electron app)
└── packages
    ├── common-i18n         (locales...)
    ├── core                (share code and interface between app and backend)
    ├── sdk                 (sdk for extensions)
    ├── db-main-prisma      (schema, migrations, prisma client)
    ├── eslint-config-bases (to shared eslint configs)
    └── ui-lib              (storybook)

Run Project

1. Initialize

# Use `.nvmrc` file to specify node versionRequires pre `nvm` tools
nvm install && nvm use

# Enabling the Help Management Package Manager
corepack enable

# Install project dependencies
pnpm install

# Build packages
pnpm -F "./packages/**" run build

2. Select Database

make switch-db-mode

3. Custom environment variablesoptional

config openai ai endpoint and key

cd apps/nextjs-app
copy .env.example .env.development.local

open .env.development.local

OpenAI is not available in some country. To solve this problem, we recommend using https://api-openai.teable.io as an endpoint. This is an unrestricted proxy deployed on Vercel.

OPENAI_API_KEY=your-api-key
OPENAI_API_ENDPOINT=openai-endpoint

4. Run dev server

you should only start backend, it will start next server for front-end automatically, file change will be auto reload

cd apps/nestjs-backend
# run in a new terminal
pnpm dev

Developers

Goto developer readme

Sponsors ❤️

If you are enjoying some this project in your company, I'd really appreciate a sponsorship, a coffee or a dropped star. That gives me some more time to improve it to the next level.

License

AGPL-3.0