9.5 KiB
NocoDB
✨ L'alternative Open Source Airtable ✨
Tournez n'importe quel MySQL, PostgreSQL, SQL Server, SQLite & Mariadb dans une feuille de calcul intelligente.
Website • Discord • Twitter • Reddit • Documentation
Essayer rapidement
1-Click Deploy
Heroku
Utiliser Docker
docker run -d --name nocodb -p 8080:8080 nocodb/nocodb:latest
To persist data you can mount volume at
/usr/app/data/
.
En utilisant npm
npx create-nocodb-app
En utilisant git
git clone https://github.com/nocodb/nocodb-seed
cd nocodb-seed
npm install
npm start
GUI
Accès au tableau de bord en utilisant : http://localhost:8080/dashboard
Rejoignez notre communauté
Captures d'écran
Caractéristiques
Interface de feuille de calcul riche
- ⚡ Recherche, trier, filtrer, masquer les colonnes avec Uber Facile
- ⚡ Créer des vues: grille, galerie, kanban, gantt, forme
- ⚡ Partager des vues: Public & Mot de passe protégé
- ⚡ Vues personnelles et verrouillées
- ⚡ Télécharger des images sur les cellules (fonctionne avec S3, Minio, GCP, Azure, DigitalOcean, Linode, Ovh, Backblaze) !!
- ⚡ Rôles: propriétaire, créateur, éditeur, commentateur, spectateur, commentateur, rôles personnalisés.
- ⚡ Contrôle d'accès: contrôle d'accès à grain fin, même à la base de données, au niveau de la table et de la colonne.
App Store for Workflow Automation:
- ⚡ Chat: équipes de Microsoft, relais, discorde, la plus grande
- ⚡ Email: SMTP, SES, MailChimp
- ⚡ SMS: Twilio
- ⚡ Toute API tierce
Accès d'API programmatique via:
- ⚡ Apis de repos (Swagger)
- ⚡ API GraphQL.
- ⚡ inclut l'authentification JWT et l'authentification sociale
- ⚡ Jetons API à intégrer avec Zapier, Integromat.
Configuration de la production
NocoDB nécessite une base de données pour stocker les métadonnées des vues des feuilles de calcul et des bases de données externes. Et les paramètres de connexion pour cette base de données peuvent être spécifiés dans la variable d'environnement NC_DB
.
Docker
Exemple 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
Exemple 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
Exemple 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
Variables d'environnement
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 |
Paramétrage du développement
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.
Exécuter des tests Cypress localement
# 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
Contribuant
- S'il vous plaît jeter un oeil à ./scripts/contribute/HowToApplyLicense.md
- Ignorer l'ajout d'en-têtes pour .json or .md or .yml
🎯 Pourquoi construisons-nous cela ?
La plupart des entreprises Internet s'équipent d'un tableur ou d'une base de données pour répondre à leurs besoins commerciaux. Les feuilles de calcul sont utilisées par plus d'un milliard d'humains en collaboration chaque jour. Cependant, nous sommes loin de travailler à des vitesses similaires sur des bases de données qui sont des outils beaucoup plus puissants en matière de calcul. Les tentatives pour résoudre ce problème avec les offres SaaS ont entraîné des contrôles d'accès horribles, le verrouillage des fournisseurs, le verrouillage des données, des changements de prix brusques et, surtout, un plafond de verre sur ce qui est possible à l'avenir.
❤ Notre mission :
Notre mission est de fournir l'interface sans code la plus puissante pour les bases de données qui soit open source pour chaque entreprise Internet dans le monde. Cela démocratiserait non seulement l'accès à un outil informatique puissant, mais ferait également émerger plus d'un milliard de personnes qui auront des capacités radicales de bricolage et de construction sur Internet.