8.8 KiB
NocoDB
✨ Alternatif sumber udara terbuka ✨
Mengubah MySQL, PostgreSQL, SQL Server, SQLite & MariaDB ke dalam lembar-spreadsheet.
![](https://static.scarf.sh/a.png?x-pxid=c12a77cc-855e-4602-8a0f-614b2d0da56a)
Coba Cepat
1-Click Deploy
Heroku
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
Screenshots
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.