NocoDB
✨ TАльтернативная альтернатива с открытым исходным кодом ✨

Поворачивает любой MySQL, PostgreSQL, SQL Server, SQLite & Mariadb в смарт-электронную таблицу.

[![Build Status](https://travis-ci.org/dwyl/esta.svg?branch=master)](https://travis-ci.com/github/NocoDB/NocoDB) [![Node version](https://badgen.net/npm/node/next)](http://nodejs.org/download/) [![Twitter](https://img.shields.io/twitter/url/https/twitter.com/NocoDB.svg?style=social&label=Follow%20%40NocoDB)](https://twitter.com/NocoDB)

WebsiteDiscordTwitter

![OpenSourceAirtableAlternative](https://user-images.githubusercontent.com/5435402/133762127-e94da292-a1c3-4458-b09a-02cd5b57be53.png) NocoDB - The Open Source Airtable alternative | Product Hunt # Быстрая попытка ### 1-Click Deploy #### Heroku Deploy NocoDB to Heroku with 1-Click
### Используя Docker ```bash 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](http://localhost:8080/dashboard) # Присоединяйтесь к нашему сообществу Join NocoDB : Free & Open Source Airtable Alternative
# Скриншоты ![2](https://user-images.githubusercontent.com/5435402/133759229-4275b934-873b-4a9b-9f23-96470fec9775.png)
![1](https://user-images.githubusercontent.com/5435402/133759218-f8b0bffc-707f-451c-82f2-b5ba2573d6a6.png)
![7](https://user-images.githubusercontent.com/5435402/133759245-a536165b-55f1-46a8-a74e-1964e7e481c6.png)
![5](https://user-images.githubusercontent.com/5435402/133759240-dd3f2509-aab7-4bd1-9a58-4c2dff08f2f2.png)
![6](https://user-images.githubusercontent.com/5435402/133759242-2311a127-17c8-406c-b865-1a2e9c8ee398.png)
![3](https://user-images.githubusercontent.com/5435402/133759234-9b539029-be36-4a35-b55a-bee3ebd0e010.png)
![4](https://user-images.githubusercontent.com/5435402/133759236-dc182129-3768-4e23-874e-98f5f32e962c.png)
![11](https://user-images.githubusercontent.com/5435402/133759253-bb9bc729-ee28-4f86-ab95-7d112c0815f2.png)
![10](https://user-images.githubusercontent.com/5435402/133759250-ebd75ecf-31db-4a17-b2d7-2c43af78a54e.png)
![8](https://user-images.githubusercontent.com/5435402/133759248-3a7141e0-4b7d-4079-a5f9-cf8611d00bc5.png)
![9](https://user-images.githubusercontent.com/5435402/133759249-8c1a85c2-a55c-48f6-bd58-aa6b4195cce7.png) # Функции ### Богатый интерфейс электронной таблицы - ⚡ Поиск, сортировка, фильтр, скрыть столбцы с легкостью Uber - ⚡ Создание просмотров: сетка, галерея, канбан, Гантт, форма - ⚡ Поделиться просмотры: Public & пароль защищен - ⚡ Личные и заблокированные виды - ⚡ Загрузить изображения в ячейки (работает с S3, Minio, GCP, Azure, Digitalocean, Linode, Ovh, BackbLaze) !! - ⚡ Роли: владелец, создатель, редактор, комментарий, просмотрщик, комментарий, пользовательские роли. - ⚡ Контроль доступа: тонкозернистый контроль доступа даже в базе данных, уровень таблицы и столбца. ### App Store для автоматики рабочего процесса: - ⚡ Чат: Microsoft Teams, Slack, Раздор, Детальный - ⚡ Электронная почта: SMTP, SES, MailChimp - ⚡ SMS: Twilio - ⚡ WhatsApp - ⚡ Любая 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 ```shell # 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, имели в виду ужасные контроль доступа, блокировку поставщика, данные блокина, резкие изменения цены и главное, что стеклянный потолок на то, что возможно в будущем. # ❤ Наша миссия : Наша миссия состоит в том, чтобы предоставить наиболее мощный интерфейс без кода для баз данных, который является открытым источником для каждого интернет-бизнеса в мире. Это не только демократизирует доступ к мощному вычислительному инструменту, но также приносит миллиард + люди, у которых будут радикальные способности и строительства способности в Интернете.