Exploring NocoBase: The Ultimate Scalability-First No-Code Development Platform

In today's fast-paced world, businesses need to quickly adapt to changes and innovate rapidly to stay competitive. Traditional software development can be time-consuming and costly, often requiring years of investment and millions of dollars. This is where no-code development platforms come into play, offering a more agile and cost-effective approach to building applications. One such powerful platform is NocoBase.

NocoBase is an open-source, scalability-first no-code development platform that allows you to create complex applications without writing a single line of code. It provides a private, controllable, and extremely scalable environment, making it an excellent choice for businesses of all sizes. This blog post will delve deep into what NocoBase is, its core architecture, features, installation methods, and how you can get started with it.

What is NocoBase?

NocoBase is designed to empower users to build applications quickly and efficiently. Instead of spending years and vast amounts of resources on research and development, NocoBase enables you to deploy a fully functional no-code development platform in just a few minutes. Its open-source nature means you have complete control over your environment, ensuring privacy and customization to meet your specific needs.

Key Features of NocoBase

  1. Scalability-First Design: Built with scalability in mind, NocoBase can handle applications of any size, from small personal projects to large enterprise solutions.
  2. Open-Source: Being open-source, NocoBase allows you to inspect, modify, and enhance the platform as per your requirements.
  3. Private and Controllable: Unlike many cloud-based solutions, NocoBase offers a private environment where you have full control over your data and infrastructure.
  4. Extensive Plugin System: The platform supports a wide range of plugins, making it highly extensible and adaptable to various use cases.

For more details, you can visit the NocoBase homepage, try out the online demo, or check out the official documentation.

Core Architecture

NocoBase's architecture is based on a microkernel and pluginized design, which ensures flexibility and extensibility. This section will explore the microkernel concept and how pluginization enhances the platform's capabilities.

Microkernel

The microkernel in NocoBase acts as a development framework that defines the application lifecycle and standardizes the interface protocols at different levels. Here's a high-level overview of its structure:

The microkernel consists of three main layers:

  1. Data Model: The foundation of NocoBase, based on relational database ORM encapsulation. It standardizes data modeling descriptions, ensuring consistency across applications. For more details, refer to Collections & Fields.
  2. Business Logic Layer: This layer bridges the data model and user interface, carrying various business rules and enabling data flow through user operations.
  3. User Interface: A block-based interface that allows users to interact with the application. It uses JSON Schema, based on Formily 2.0, to describe customized page and block layouts. For more details, refer to UI Schema.

Pluginization

NocoBase's plugin architecture provides extensible interfaces throughout the application lifecycle. Plugins can be used to extend functionality in various aspects, including field types, collection types, third-party data sources, middleware, and interface components. This modular approach makes it easy to customize and extend NocoBase to fit specific needs.

Each plugin in NocoBase can further provide secondary extensible interfaces, offering even more flexibility. This design ensures that even when the built-in functionality isn't sufficient, you can still extend the platform to meet your requirements. For more information on developing plugins, refer to the Plugin development documentation.

Installation Methods

NocoBase supports three primary installation methods, each suited for different use cases and levels of technical expertise:

  1. Docker (Recommended)
  2. create-nocobase-app
  3. Git Source Code

Let's explore each method in detail.

Docker is the preferred installation method for NocoBase, especially for no-code scenarios where minimal coding is required. It simplifies the deployment process and makes upgrades easy by simply downloading the latest image and rebooting.

To install NocoBase using Docker, follow the Docker installation guide.

create-nocobase-app

This method is suitable for scenarios where low-code development is required, and the business code of the project needs to be completely independent.

To get started with create-nocobase-app, refer to the installation guide.

Git Source Code

For those who want to experience the latest unreleased version or contribute to the platform, installing NocoBase from the Git source code is recommended. This method requires a higher level of development skills and allows for making changes and debugging directly in the source code.

To install NocoBase from the Git source code, follow the installation guide.

Choosing the Right Version

NocoBase provides several versions for each installation method. Here's a brief overview of the available versions:

  • Docker Released Versions List: Docker Hub
  • create-nocobase-app Released Versions List: npm
  • Git Source Code Released Versions List: GitHub

Release Notes

  • Main Branch: The default branch for source installations, frequently updated and potentially unstable.
  • Tagged Releases: Relatively stable versions, recommended for production use.

Version Tags for Docker

  • main: The latest (unstable) image on the main branch.
  • latest: The latest tagged version of the main branch.
  • Specific version tags (e.g., v0.19.0-alpha.1, v0.18.0-alpha.9, etc.).

Warning

  • The main branch is updated frequently and may be unstable. If you want to try out the latest features, you can install this version.
  • For stability, it's recommended to install the latest tagged release.

Prerequisites

Before installing NocoBase, ensure you have the following:

  • Node.js 18+
  • Yarn 1.22.x
  • Database: SQLite 3.x, MySQL 8.x, MariaDB 10.9+, PostgreSQL 10+

You can download and install the latest LTS version of Node.js from the official website. It's recommended to use nvm (or nvm-windows for Windows systems) to manage Node.js versions.

Install the Yarn package manager using the following command:

npm install --global yarn

Step-by-Step Installation

Here’s a step-by-step guide to installing NocoBase using the create-nocobase-app method.

1. Create a NocoBase Project

Run the following command to create a NocoBase project:

yarn create nocobase-app my-nocobase-app -d sqlite

yarn create nocobase-app my-nocobase-app -d mysql \
  -e DB_DATABASE=nocobase \
  -e DB_PASSWORD=nocobase

yarn create nocobase-app my-nocobase-app -d mariadb \
  -e DB_DATABASE=nocobase \
  -e DB_PASSWORD=nocobase

yarn create nocobase-app my-nocobase-app -d postgres \
  -e DB_DATABASE=nocobase \
  -e DB_PASSWORD=nocobase

Important Notes

  • APP_KEY is the application's secret key used for generating user tokens. Ensure it is a random string and not exposed publicly.
  • DB_* variables are related to the database. Modify them according to your database configuration.
  • When using MySQL or MariaDB, configure the DB_TIMEZONE environment variable (e.g., DB_TIMEZONE=+08:00).

2. Switch to the Project Directory

Navigate to the newly created project directory:

cd my-nocobase-app

3. Install Dependencies

Install the necessary dependencies. This process might take some time depending on your network environment and system configuration:

yarn install

4. Install NocoBase

Run the following command to install NocoBase:

yarn nocobase install --lang=en-US

5. Start NocoBase

For development, start NocoBase using:

yarn dev

For production, build the project and start NocoBase:

yarn build
yarn start

6. Log in to NocoBase

Open [http://localhost:13000

](http://localhost:13000/) in a web browser. Use the initial account admin@nocobase.com and password admin123 to log in.

Getting Started with Git Source Code

For those interested in contributing to NocoBase or working with the latest unreleased features, follow these steps to install from the Git source code.

Prerequisites

Ensure you have the following:

  • Git
  • Node.js 18+
  • Yarn 1.22.x
  • Database: SQLite 3.x, MySQL 8.x, MariaDB 10.9+, PostgreSQL 10+

1. Clone the Repository

Clone the NocoBase repository:

git clone https://github.com/nocobase/nocobase.git my-nocobase-app

2. Switch to the Project Directory

Navigate to the project directory:

cd my-nocobase-app

3. Install Dependencies

Install the necessary dependencies:

yarn install --frozen-lockfile

yarn install --frozen-lockfile --production

4. Set Environment Variables

Modify the environment variables in the root .env file according to your setup. For detailed descriptions of environment variables, refer to the documentation.

Example configuration:

DB_STORAGE=storage/db/nocobase.sqlite

Important Notes

  • APP_KEY is the application's secret key used for generating user tokens. Ensure it is a random string and not exposed publicly.
  • DB_* variables are related to the database. Modify them according to your database configuration.
  • When using MySQL or MariaDB, configure the DB_TIMEZONE environment variable (e.g., DB_TIMEZONE=+08:00).

5. Install NocoBase

Run the following command to install NocoBase:

yarn nocobase install --lang=en-US

6. Start NocoBase

For development, start NocoBase using:

yarn dev

For production, build the project and start NocoBase:

yarn build
yarn start

7. Log in to NocoBase

Open http://localhost:13000 in a web browser. Use the initial account admin@nocobase.com and password admin123 to log in.

Conclusion

NocoBase is a powerful and flexible no-code development platform that empowers users to build scalable applications quickly and efficiently. Its microkernel and pluginized architecture provide a robust foundation for extending and customizing the platform to meet specific needs. Whether you are a business looking for a rapid application development solution or a developer interested in contributing to an open-source project, NocoBase offers the tools and flexibility you need.

With its ease of installation and comprehensive documentation, getting started with NocoBase is straightforward. Choose the installation method that best suits your needs, follow the setup steps, and start building your applications today.

For more information, visit the NocoBase homepage, try out the online demo, or explore the official documentation. Happy building!

Next Post Previous Post
No Comment
Add Comment
comment url