多维表格
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.
 
 
 
 
 
 

9.8 KiB

NocoDB
Het open source Airtable alternatief

Draait elke MySQL, PostgreSQL, SQL Server, SQLITE & MARIADB in een Smart-Spreadsheet.

Build Status Node version Twitter

WebsiteDiscordTwitterRedditDocumentation

OpenSourceAirtableAlternative

NocoDB - The Open Source Airtable alternative | Product Hunt

Snel proberen

1-Click Deploy

Heroku

Deploy NocoDB to Heroku with 1-Click

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

1

2

5

6

7

8

9

9a

9b

10

11

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
  • WhatsApp
  • 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.