teable/README.md

237 lines
11 KiB
Markdown
Raw Normal View History

2022-11-01 09:36:07 +00:00
<div align="center">
2023-08-10 07:37:43 +00:00
<h1 align="center">
<picture>
<source media="(prefers-color-scheme: dark)" srcset="static/assets/images/teable-vertical-dark.png">
<img alt="teable logo" height="150" src="static/assets/images/teable-vertical-light.png">
</picture>
</h1>
<h3 align="center"><strong>Enrich your database with spreadsheet UX and collaboration</strong></h3>
<p>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. </p>
2022-11-01 09:36:07 +00:00
</div>
2023-08-10 07:37:43 +00:00
2022-11-01 09:36:07 +00:00
<p align="center">
<a aria-label="Build" href="https://github.com/teable-group/teable/actions?query=workflow%3ACI">
<img alt="build" src="https://img.shields.io/github/workflow/status/teable-group/teable/CI-nextjs-app/main?label=CI&logo=github&style=flat-quare&labelColor=000000" />
</a>
<a aria-label="Codefactor grade" href=https://www.codefactor.io/repository/github/teable-group/teable">
<img alt="Codefactor" src="https://img.shields.io/codefactor/grade/github/teable-group/teable?label=Codefactor&logo=codefactor&style=flat-quare&labelColor=000000" />
</a>
<a aria-label="CodeClimate maintainability" href="https://codeclimate.com/github/teable-group/teable">
<img alt="Maintainability" src="https://img.shields.io/codeclimate/maintainability/teable-group/teable?label=Maintainability&logo=code-climate&style=flat-quare&labelColor=000000" />
</a>
<a aria-label="CodeClimate technical debt" href="https://codeclimate.com/github/teable-group/teable">
<img alt="Techdebt" src="https://img.shields.io/codeclimate/tech-debt/teable-group/teable?label=TechDebt&logo=code-climate&style=flat-quare&labelColor=000000" />
</a>
<a aria-label="Codacy grade" href="https://www.codacy.com/gh/teable-group/teable/dashboard?utm_source=github.com&amp;utm_medium=referral&amp;utm_content=teable-group/teable&amp;utm_campaign=Badge_Grade">
<img alt="Codacy grade" src="https://img.shields.io/codacy/grade/dff9c944af284a0fad4e165eb1727467?logo=codacy&style=flat-square&labelColor=000&label=Codacy">
</a>
<a aria-label="LoC">
<img alt="LoC" src="https://img.shields.io/tokei/lines/github/teable-group/teable?style=flat-quare&labelColor=000000" />
</a>
<a aria-label="Top language" href="https://github.com/teable-group/teable/search?l=typescript">
<img alt="GitHub top language" src="https://img.shields.io/github/languages/top/teable-group/teable?style=flat-square&labelColor=000&color=blue">
</a>
<a aria-label="Licence" href="https://github.com/teable-group/teable/blob/main/LICENSE">
<img alt="Licence" src="https://img.shields.io/github/license/teable-group/teable?style=flat-quare&labelColor=000000" />
</a>
</p>
2023-08-10 07:37:43 +00:00
# Why Teable?
No-code tools have significantly speed up how we get things done, allowing everyday folks to build amazing apps and changing the way many work and live. People like using spreadsheets 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 everyday 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.
2023-03-31 20:29:20 +00:00
# ✨Features
2023-08-10 07:37:43 +00:00
### 📊 Spreadsheet-like interface
2023-03-31 20:37:09 +00:00
2023-08-10 07:37:43 +00:00
All you want is here
2023-03-31 20:29:20 +00:00
2023-08-10 07:37:43 +00:00
- 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.
2023-03-31 20:29:20 +00:00
2023-08-10 07:37:43 +00:00
### 🗂️ Multiple Views
2023-03-31 20:37:09 +00:00
2023-08-10 07:37:43 +00:00
Visualize and interact with data in various ways best suited for their specific tasks.
2023-03-31 20:29:20 +00:00
2023-08-10 07:37:43 +00:00
- 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.
2023-03-31 20:29:20 +00:00
2023-03-31 20:37:09 +00:00
### 🚀 Super Fast
2023-04-01 04:47:24 +00:00
Build in minutes scale to millions
2023-03-31 20:29:20 +00:00
2023-08-10 07:37:43 +00:00
- 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
2023-03-31 20:29:20 +00:00
2023-03-31 20:37:09 +00:00
### ⚡️ Real-time collaboration
Designed for teams
2023-03-31 20:29:20 +00:00
2023-08-10 07:37:43 +00:00
- 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
2023-03-31 20:29:20 +00:00
2023-03-31 20:37:09 +00:00
### 🧩 Extensions
Expand infinite possibilities
2023-03-31 20:29:20 +00:00
- Backend-less programming capability based on React
2023-04-01 04:47:24 +00:00
- Customize your own application with extremely low cost
2023-03-31 20:29:20 +00:00
- Extremely easy-to-use script extensions mode
2023-03-31 20:37:09 +00:00
### 🤖 Automation
2023-04-01 04:47:24 +00:00
Empower data-driven workflows effortlessly and seamlessly
2023-03-31 20:29:20 +00:00
2023-03-31 20:37:09 +00:00
- Design your workflow with AI or Visual programming
- Super easy retrieve data from table
2023-03-31 20:29:20 +00:00
2023-03-31 20:37:09 +00:00
### 👨‍💻 Full-featured SQL Support
2023-04-01 04:47:24 +00:00
Seamless integration with the software you are familiar with
2023-03-31 20:29:20 +00:00
- BI tools like Metabase PowerBi...
2023-03-31 20:37:09 +00:00
- No-code tools like appsmith...
2023-03-31 20:29:20 +00:00
- Direct retrieve data with native sql
2023-08-10 07:37:43 +00:00
### 🗄️ Support for multiple databases
2023-03-31 20:37:09 +00:00
2023-08-10 07:37:43 +00:00
Choose the Sql-database you like
2023-03-31 20:29:20 +00:00
2023-08-10 07:37:43 +00:00
- Sqlite, PostgreSQL, MySQL, MariaDB, TiDB...
2023-03-31 20:29:20 +00:00
# Structure
2022-11-01 09:36:07 +00:00
[![Open in Gitpod](https://img.shields.io/badge/Open%20In-Gitpod.io-%231966D2?style=for-the-badge&logo=gitpod)](https://gitpod.io/#https://github.com/teable-group/teable)
```
.
├── apps
2023-08-10 07:37:43 +00:00
│ ├── electron (desktop, include a electron app )
│ ├── nextjs-app (front-end, include a nextjs app)
2023-03-31 20:37:09 +00:00
│ └── nestjs-backend (backend, running on server or inside electron app)
2022-11-01 09:36:07 +00:00
└── packages
├── common-i18n (locales...)
├── core (share code and interface between app and backend)
├── sdk (sdk for extensions)
2023-02-04 09:47:26 +00:00
├── db-main-prisma (schema, migrations, prisma client)
2022-11-01 09:36:07 +00:00
├── eslint-config-bases (to shared eslint configs)
└── ui-lib (storybook)
2022-11-01 09:36:07 +00:00
```
2023-03-31 20:29:20 +00:00
# Run Project
2022-11-01 09:36:07 +00:00
2023-03-31 20:37:09 +00:00
#### 1. Install
2022-11-01 09:36:07 +00:00
```sh
yarn install
2022-11-01 09:36:07 +00:00
```
2023-03-31 20:37:09 +00:00
#### 2. DB migration
2022-11-01 09:36:07 +00:00
```sh
cd packages/db-main-prisma
2023-05-23 02:19:23 +00:00
# generate ts interface
yarn prisma generate
# create db schema
yarn prisma-db-push
2022-11-01 09:36:07 +00:00
```
#### 3. Config .env file
config openai ai endpoint and key
```sh
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
2022-11-01 09:36:07 +00:00
2023-05-23 02:19:23 +00:00
you should only start backend, it will start next server for front-end automatically, file change will be auto reload
2022-11-01 09:36:07 +00:00
```sh
cd apps/nestjs-backend
2023-05-23 02:19:23 +00:00
tsc --build --watch
# run in a new terminal
yarn dev
2022-11-01 09:36:07 +00:00
```
2023-03-31 20:29:20 +00:00
# Developers
2022-11-01 09:36:07 +00:00
2023-03-31 20:29:20 +00:00
Goto [developer readme](./DEVELOPER.md)
2022-11-01 09:36:07 +00:00
## Sponsors :heart:
2022-11-01 09:36:07 +00:00
2023-04-01 04:47:24 +00:00
If you are enjoying some this project in your company, I'd really appreciate a [sponsorship](https://github.com/sponsors/teable-group), a [coffee](https://ko-fi.com/teable-group) or a dropped star.
That gives me some more time to improve it to the next level.
2022-11-01 09:36:07 +00:00
2023-03-31 20:29:20 +00:00
# License
2022-11-01 09:36:07 +00:00
AGPL-3.0