多维表格
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

8.8 KiB

NocoDB
Alternatif sumber udara terbuka

Mengubah MySQL, PostgreSQL, SQL Server, SQLite & MariaDB ke dalam lembar-spreadsheet.

Build Status Node version Twitter

WebsiteDiscordTwitter

OpenSourceAirtableAlternative

NocoDB - The Open Source Airtable alternative | Product Hunt

Coba Cepat

1-Click Deploy

Heroku

Deploy NocoDB to Heroku with 1-Click

Menggunakan Docker.

docker run -d --name nocodb -p 8080:8080 nocodb/nocodb:latest

To persist data you can mount volume at /usr/app/data/.

Menggunakan NPM.

npx create-nocodb-app

Menggunakan git.

git clone https://github.com/nocodb/nocodb-seed
cd nocodb-seed
npm install
npm start

GUI

Akses dasbor menggunakan : http://localhost:8080/dashboard

Bergabunglah dengan komunitas kami

Join NocoDB : Free & Open Source Airtable Alternative

Screenshots

2

1

7

5

6

3

4

11

10

8

9

Fitur

Antarmuka spreadsheet yang kaya

  • Cari, Sortir, Filter, Sembunyikan Kolom dengan Uber Ease
  • Buat Tampilan: Grid, Galeri, Kanban, Gantt, Formulir
  • Bagikan Pandangan: Dilindungi Publik & Kata Sandi
  • Pandangan Pribadi & Terkunci
  • Unggah gambar ke sel (bekerja dengan S3, Minio, GCP, Azure, Digitalocean, Linode, OVH, Backblaze) !!
  • Peran: Pemilik, Pencipta, Editor, komentator, pemirsa, komentator, peran khusus.
  • Kontrol akses: kontrol akses berbutir halus bahkan pada tingkat basis data, tabel & kolom.

App Store untuk Automasi Alur Kerja:

  • Obrolan: Tim Microsoft, kendur, perselisihan, paling penting
  • Email: SMTP, SES, MailChimp
  • SMS: Twilio
  • Whatsapp.
  • API Pihak ke-3

Akses API Programmatik melalui:

  • Istirahat API (Kesombongan)
  • Apis Graphql.
  • Termasuk Otentikasi JWT & Auth Sosial
  • Token API untuk berintegrasi dengan Zapier, Integromat.

Production Setup

NOCODB membutuhkan database untuk menyimpan metadata tampilan spreadsheet dan database eksternal. Dan params koneksi untuk basis data ini dapat ditentukan dalam variabel lingkungan NC_DB.

Docker

Example MySQL

docker run -d -p 8080:8080 \
    -e NC_DB="mysql2://host.docker.internal:3306?u=root&p=password&d=d1" \
    -e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
    nocodb/nocodb:latest

Example Postgres

docker run -d -p 8080:8080 \
    -e NC_DB="pg://host:port?u=user&p=password&d=database" \
    -e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
    nocodb/nocodb:latest

Example SQL Server

docker run -d -p 8080:8080 \
    -e NC_DB="mssql://host:port?u=user&p=password&d=database" \
    -e NC_AUTH_JWT_SECRET="569a1821-0a93-45e8-87ab-eb857f20a010" \
    nocodb/nocodb:latest

Docker Compose

git clone https://github.com/nocodb/nocodb
cd docker-compose
cd mysql or pg or mssql
docker-compose up

Environment variables

Variable Mandatory Comments If absent
NC_DB Yes See our database URLs A local SQLite will be created in root folder
DATABASE_URL No JDBC URL Format. Can be used instead of NC_DB. Used in 1-Click Heroku deployment
DATABASE_URL_FILE No path to file containing JDBC URL Format. Can be used instead of NC_DB. Used in 1-Click Heroku deployment
NC_PUBLIC_URL Yes Used for sending Email invitations Best guess from http request params
NC_AUTH_JWT_SECRET Yes JWT secret used for auth and storing other secrets A Random secret will be generated
NC_SENTRY_DSN No For Sentry monitoring
NC_CONNECT_TO_EXTERNAL_DB_DISABLED No Disable Project creation with external database
NC_DISABLE_TELE No Disable telemetry
NC_BACKEND_URL No Custom Backend URL http://localhost:8080 will be used

Development setup

git clone https://github.com/nocodb/nocodb
cd nocodb

# run backend
cd packages/nocodb
npm install
npm run watch:run

# open localhost:8080/dashboard in browser

# run frontend 
cd packages/nc-gui
npm install
npm run dev

# open localhost:3000/dashboard in browser

Changes made to code automatically restart.

Running Cypress tests locally

# install dependencies(cypress)
npm install

# run required services by using docker compose 
docker-compose -f ./docker-compose-cypress.yml up



# wait until both 3000 and 8080 porta are avalable
# and run cypress test using following command
npm run cypress:run

# or run following command to run it with GUI
npm run cypress:open

Contributing

  • Please take a look at ./contribute/HowToApplyLicense.md
  • Ignore adding headers for .json or .md or .yml

🎯 Kenapa kita membangun ini?

Sebagian besar bisnis internet melengkapi diri mereka dengan spreadsheet atau database untuk menyelesaikan kebutuhan bisnis mereka. Spreadsheet digunakan oleh satu miliar + manusia secara kolaboratif setiap hari. Namun, kami jauh bekerja dengan kecepatan yang sama pada basis data yang merupakan alat yang lebih kuat ketika datang ke komputasi. Upaya untuk menyelesaikan ini dengan persembahan SaaS berarti kontrol akses yang mengerikan, vendor lockin, data lockin, perubahan harga mendadak & paling penting plafon kaca pada apa yang mungkin di masa depan.

❤ Misi kita :

Misi kami adalah menyediakan antarmuka tanpa kode yang paling kuat untuk basis data yang merupakan sumber terbuka untuk setiap bisnis internet di dunia. Ini tidak hanya akan mendemokratisasi akses ke alat komputasi yang kuat tetapi juga memunculkan satu miliar + orang yang akan memiliki kemampuan mengotori-dan membangun radikal di Internet.