10 KiB
NocoDB
✨ TАльтернативная альтернатива с открытым исходным кодом ✨
Поворачивает любой MySQL, PostgreSQL, SQL Server, SQLite & Mariadb в смарт-электронную таблицу.
Быстрая попытка
1-Click Deploy
Heroku
Используя Docker
docker run -d --name nocodb -p 8080:8080 nocodb/nocodb:latest
To persist data you can mount volume at
/usr/app/data/
.
Используя НПМ
npx create-nocodb-app
Используя git.
git clone https://github.com/nocodb/nocodb-seed
cd nocodb-seed
npm install
npm start
GUI
Доступ к приборной панели, используя : http://localhost:8080/dashboard
Присоединяйтесь к нашему сообществу
Скриншоты
Функции
Богатый интерфейс электронной таблицы
- ⚡ Поиск, сортировка, фильтр, скрыть столбцы с легкостью Uber
- ⚡ Создание просмотров: сетка, галерея, канбан, Гантт, форма
- ⚡ Поделиться просмотры: Public & пароль защищен
- ⚡ Личные и заблокированные виды
- ⚡ Загрузить изображения в ячейки (работает с S3, Minio, GCP, Azure, Digitalocean, Linode, Ovh, BackbLaze) !!
- ⚡ Роли: владелец, создатель, редактор, комментарий, просмотрщик, комментарий, пользовательские роли.
- ⚡ Контроль доступа: тонкозернистый контроль доступа даже в базе данных, уровень таблицы и столбца.
App Store для автоматики рабочего процесса:
- ⚡ Чат: Microsoft Teams, Slack, Раздор, Детальный
- ⚡ Электронная почта: SMTP, SES, MailChimp
- ⚡ SMS: Twilio
- ⚡ Любая 3-я сторона API
Программный доступ API через:
- ⚡ apis отдыха (чванство)
- ⚡ apis graphql.
- ⚡ включает в себя аутентификацию JWT и социальный авторизм
- ⚡ токены API для интеграции с Zapier, Integomat.
Production Setup
NOCODB Требует базу данных для хранения метаданных видов электронных таблиц и внешних баз данных. А подключения параметров для этой базы данных можно указать в переменной среды 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
🎯 Почему мы строим это?
Большинство интернет-бизнеса оснащены либо электронной таблицей, либо базой данных для решения их бизнеса. Электронные таблицы используются миллиардом + людьми, сотрудничающими каждый день. Тем не менее, мы выходим на работу на аналогичных скоростях в базах данных, которые являются более мощными инструментами, когда речь идет о вычислениях. Попытки решить это с предложениями SaaS, имели в виду ужасные контроль доступа, блокировку поставщика, данные блокина, резкие изменения цены и главное, что стеклянный потолок на то, что возможно в будущем.
❤ Наша миссия :
Наша миссия состоит в том, чтобы предоставить наиболее мощный интерфейс без кода для баз данных, который является открытым источником для каждого интернет-бизнеса в мире. Это не только демократизирует доступ к мощному вычислительному инструменту, но также приносит миллиард + люди, у которых будут радикальные способности и строительства способности в Интернете.