nocobase2/README.md

148 lines
4.4 KiB
Markdown
Raw Normal View History

2021-03-29 13:07:09 +08:00
English | [简体中文](./README.zh-CN.md)
2021-03-29 10:14:11 +08:00
Note
----------
2021-03-29 10:15:51 +08:00
NocoBase is still in early development and is for preview purposes only and is not suitable for use in a production environment.
2021-03-29 10:14:11 +08:00
If you are interested in NocoBase, please join us to discuss and develop it together.
2021-03-29 10:15:51 +08:00
https://www.nocobase.com/
2021-03-29 10:14:11 +08:00
hello@nocobase.com
2021-02-24 21:18:33 +08:00
What is NocoBase
----------
NocoBase is an open source and free no-code development platform. Whether you are a business executive who does not know programming or a developer who is proficient in programming, you can quickly build various customized and privately deployed collaboration platforms and management systems.
Who is NocoBase for
----------
2021-02-24 21:25:13 +08:00
- **SMEs and organizations**
2021-02-24 21:18:33 +08:00
- Proficient in the business of their organization or industry
- Looking to build digital systems
2021-02-24 21:25:13 +08:00
- **IT service providers and outsourcing teams**
2021-02-24 21:18:33 +08:00
- Provide digital upgrade for SMEs and organizations
- Have development capabilities
When to use Nocobase
----------
2021-02-24 21:25:13 +08:00
- **SMEs and organizations build business platforms and management systems for themselves or for their industry**
2021-02-24 21:18:33 +08:00
- Want the price to be low enough or even free
- Can be flexibly customized without programming knowledge
- Need full control of source code and data
- Can freely distribute and sell as their own products
2021-02-24 21:25:13 +08:00
- **Service providers and outsourcing teams develop collaboration platforms and management systems for their clients**
2021-02-24 21:18:33 +08:00
- Want to keep development costs as low as possible
- Need the most user-friendly secondary development experience
- Must be deployed privately as a standalone product for the client
- Can be freely distributed and sold by the client
Why choose NocoBase
----------
2021-02-24 21:25:13 +08:00
- **Open source and free**
2021-02-24 21:18:33 +08:00
- Unrestricted commercial use under the MIT license
- Full code ownership, private deployment, private and secure data
- Free to expand and develop for actual needs
- Good ecological support
2021-02-24 21:25:13 +08:00
- **Strong no-code capability**
2021-02-24 21:18:33 +08:00
- More advanced codeless architecture, both flexible and easy to use, can make a powerful system even if you don't know programming
- Support tables, calendars, forms, details, statistical charts and other types of views freely combined into the page
- Unlimited hierarchical configuration of navigation menus, allowing flexible organization of pages
- Precise configuration of data manipulation rights, access rights to pages and menus
2021-02-24 21:25:13 +08:00
- **Developer-friendly**
2021-02-24 21:18:33 +08:00
- Microkernel architecture, flexible and easy to extend, with a robust plug-in system
2021-04-04 23:33:06 +08:00
- Node.js-based, with popular frameworks and technologies, including Koa, Sequelize, React, Ant Design, etc.
- Progressive development, easy for getting-started, friendly to newcomers
- No binding, no strong dependencies, can be used in any combination or extensions, can be used in existing projects
2021-03-29 13:21:35 +08:00
Architecture
----------
2021-03-29 13:32:44 +08:00
![](https://nocobase.oss-cn-beijing.aliyuncs.com/4fde069587182dacbdb00b020d914404.jpg)
2021-03-29 13:21:35 +08:00
2021-03-30 20:27:01 +08:00
Requirements
----------
2021-03-30 20:27:01 +08:00
Node:
2021-03-30 20:27:01 +08:00
- Node.js 12.x or 14.x
2021-04-04 11:41:01 +08:00
Database(Choose any one):
2021-04-04 11:41:01 +08:00
- PostgreSQL 10.x+ (Recommend)
2021-03-30 20:27:01 +08:00
- MySQL 5.7.x+
Installation
----------
2021-04-07 20:34:30 +08:00
Use only as a no-code platform
~~~bash
# Create project directory
mkdir my-nocobase-project && cd my-nocobase-project
# npm initialization
npm init
# Installing nocobase dependencies
npm i @nocobase/api @nocobase/app
# Copy and configure env, don't forget to change the database information
cp -r node_modules/@nocobase/api/.env.example .env
# Database initialization
npx nocobase db-init
# Start app
npx nocobase start
~~~
Want to participate in the development
~~~shell
2021-04-04 11:41:01 +08:00
# You can use docker to start the database
docker-compose up -d postgres
2021-03-30 20:27:01 +08:00
# Set Environment Variables
cp .env.example .env
2021-03-30 20:27:01 +08:00
npm install
npm run bootstrap
npm run build
npm run db-migrate init
npm start
~~~
2021-04-17 22:47:08 +08:00
Nodejs provided by docker
```shell
git clone https://github.com/nocobase/nocobase.git
cd nocobase
# You can use docker to start the database
docker-compose up -d postgres
# Set Environment Variables
cp .env.example .env
# Installing dependencies and initializing
docker-compose run nocobase bash -c 'npm install && npm run bootstrap && npm run build && npm run db-migrate init'
# Start nocobase
2021-04-17 23:35:06 +08:00
docker-compose up -d nocobase
2021-04-17 22:47:08 +08:00
# View log
docker-compose logs nocobase
```
2021-02-24 21:18:33 +08:00
Build
2021-03-30 20:27:01 +08:00
----------
~~~shell
# for all packages
npm run build
# for specific package
npm run build <package_name_1> <package_name_2> ...
~~~
2021-02-24 21:18:33 +08:00
Test
2021-03-30 20:27:01 +08:00
----------
~~~
# For all packages
npm test
# For specific package
npm test packages/<name>
~~~