9.8 KiB
NocoDB
✨ Het open source Airtable alternatief ✨
Draait elke MySQL, PostgreSQL, SQL Server, SQLITE & MARIADB in een Smart-Spreadsheet.
Website • Discord • Twitter • Reddit • Documentation
Snel proberen
1-Click Deploy
Heroku
Docker gebruiken
docker run -d --name nocodb -p 8080:8080 nocodb/nocodb:latest
To persist data you can mount volume at
/usr/app/data/
.
Gebruik van NPM
npx create-nocodb-app
Git gebruiken
git clone https://github.com/nocodb/nocodb-seed
cd nocodb-seed
npm install
npm start
GUI
Toegang tot dashboard met behulp van : http://localhost:8080/dashboard
sluit je aan bij onze gemeenschap
Screenshots
Functies
Rich Spreadsheet Interface
- ⚡ Zoeken, sorteren, filteren, kolommen verbergen met uber gemak
- ⚡ Weergaven creëren: Grid, Gallery, Kanban, Gantt, Form
- ⚡ Delen Bekeken: Publiek en wachtwoord beveiligd
- ⚡ Persoonlijke en vergrendelde meningen
- ⚡ Upload afbeeldingen naar cellen (werkt met S3, Minio, GCP, Azure, Digitalocean, Linode, Ovh, Backblaze) !!
- ⚡ Rollen: Eigenaar, Schepper, Editor, Commentator, Viewer, Commentator, Aangepaste rollen.
- ⚡ Toegangscontrole: fijnkorrelige toegangscontrole, zelfs bij database, tabel- en kolomniveau.
App Store voor Workflow Automations:
- ⚡ Chat: Microsoft-teams, Slack, Discord, Meet
- ⚡ E-mail: SMTP, SES, MailChimp
- ⚡ SMS: Twilio
- ⚡ elke 3e partij-API's
Programmatische API-toegang via:
- ⚡ Rust API's (Swagger)
- ⚡ Grafiek API's.
- ⚡ Inclusief JWT-authenticatie en sociale auth
- ⚡ API-tokens om te integreren met zapier, integromat.
Production Setup
NOCODB vereist een database om metadata van spreadsheets weergaven en externe databases op te slaan. En verbindingsparamumenten voor deze database kunnen worden opgegeven in de variabele NC_DB-omgeving.
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 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)
# install dependencies(cypress)
npm install
# run mysql database with required database using docker compose
docker-compose -f ./scripts/docker-compose-cypress.yml up
# Run backend api using following command
npm run start:api
# Run frontend web UI using following command
npm run start:web
# wait until both 3000 and 8080 ports are available
# 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 ./scripts/contribute/HowToApplyLicense.md
- Ignore adding headers for .json or .md or .yml
🎯 Waarom bouwen we dit?
De meeste internetbedrijven stellen zich uit met een spreadsheet of een database om hun bedrijfsbehoeften op te lossen. Spreadsheets worden gebruikt door een miljard + mensen die elke dag samenwerken. We zijn echter ver weg bij vergelijkbare snelheden op databases die veel krachtigere hulpmiddelen zijn als het gaat om het berekenen. Pogingen om dit op te lossen met SaaS-aanbiedingen heeft verschrikkelijke toegangscontroles, leverancierslongin, gegevensvergrendeling, abrupte prijsveranderingen en vooral een glazen plafond op wat in de toekomst mogelijk is.
❤ Onze missie :
Onze missie is om de krachtigste NO-CODE-interface voor databases te bieden die open source is voor elke afzonderlijke internetactiviteiten in de wereld. Dit zou niet alleen de toegang tot een krachtige rekengereedschap democratiseren, maar ook een miljard + mensen voortbrengen die radicaal tinkerende en bouwmogelijkheden op internet hebben.