Go to file
Zeke Zhang 05cf9986b0
feat: enable direct dialog opening via URL and support for page mode (#4706)
* refactor: optimize page tabs routing

* test: add e2e test for page tabs

* feat: add popup routing

* fix: resolve nested issue

* refactor: rename file utils to pagePopupUtils

* perf: enhance animation and overall performance

* fix: fix filterByTK

* fix(sourceId): resolve error when sourceId is undefined

* fix: fix List and GridCard

* fix: fix params not fresh

* fix: fix parent record

* fix: resolve the issue on block data not refreshing after popup closure

* feat: bind tab with URL in popups

* feat(sub-page): enable popup to open in page mode

* chore: optimize

* feat: support association fields

* fix: address the issue of no data in associaiton field

* fix: resolve the issue with opening nested dialog in association field

* fix: fix the issue of dialog content not refreshing

* perf: use useNavigateNoUpdate to replace useNavigate

* perf: enhance popups performance by avoiding unnecessary rendering

* fix: fix tab page

* fix: fix bulk edit action

* chore: fix unit test

* chore: fix unit tests

* fix: fix bug to pass e2e tests

* chore: fix build

* fix: fix bugs to pass e2e tests

* chore: avoid crashing

* chore: make e2e tests pass

* chore: make e2e tests pass

* chore: fix unit tests

* fix(multi-app): fix known issues

* fix(Duplicate): should no page mode

* chore: fix build

* fix(mobile): fix known issues

* fix: fix open mode of Add new

* refactor: rename 'popupUid' to 'popupuid'

* refactor: rename 'subPageUid' tp 'subpageuid'

* refactor(subpage): simplify configuration of router

* fix(variable): refresh data after value change

* test: add e2e test for sub page

* refactor: refactor and add tests

* fix: fix association field

* refactor(subPage): avoid blank page occurrences

* chore: fix unit tests

* fix: correct first-click context setting for association fields

* refactor: use Action's uid for subpage

* refactor: rename x-nb-popup-context to x-action-context and move it to Action schema

* feat: add context during the creation of actions

* chore: fix build

* chore: make e2e tests pass

* fix(addChild): fix context of Add child

* fix: avoid loss or query string

* fix: avoid including 'popups' in the path

* fix: resolve issue with popup variables and add tests

* chore(e2e): fix e2e test

* fix(sideMenu): resolve the disappearing sidebar issue and add tests

* chore(e2e): fix e2e test

* fix: should refresh block data after mutiple popups closed

* chore: fix e2e test

* fix(associationField): fix wrong context

* fix: address issue with special characters
2024-06-30 23:25:01 +08:00
.github chore: update next branch ci 2024-06-30 19:41:39 +08:00
.vscode client unit test (#4150) 2024-04-24 20:33:14 +08:00
benchmark perf(server): optimize performance of APIs (#3079) 2023-12-12 23:02:09 +08:00
docker chore: update docker examples 2024-04-08 09:27:02 +08:00
examples feat: application supervisor (#2353) 2023-08-24 17:47:45 +08:00
packages feat: enable direct dialog opening via URL and support for page mode (#4706) 2024-06-30 23:25:01 +08:00
scripts refactor: imporve add License (#4326) 2024-05-14 08:30:40 +08:00
storage chore: update dependencies (#4747) 2024-06-25 12:44:51 +08:00
.dockerignore chore: dockerignore 2023-08-02 13:45:52 +08:00
.editorconfig
.env.e2e.example fix: e2e with build 2024-01-08 10:29:41 +08:00
.env.example feat(logger): support for collecting debug informations when rendering failed (#4524) 2024-06-04 12:10:17 +08:00
.env.test.example feat(auth): support signing in with username (#2376) 2023-08-19 22:02:26 +08:00
.eslintignore refactor: export AuthenticatorsContextProvider and add client.d.ts (#4311) 2024-05-10 16:55:35 +08:00
.eslintrc test(e2e): add tests for client (#3144) 2023-12-13 14:14:33 +08:00
.gitignore feat: run vitest with coverage (#3802) 2024-03-31 10:07:18 +08:00
.gitpod.yml
.prettierignore chore: update lerna.json 2024-04-23 11:17:28 +08:00
.prettierrc
.yarnrc chore: add .yarnrc 2024-03-15 15:49:12 +08:00
CHANGELOG.md chore: update changelog 2024-06-28 03:43:07 +00:00
cnpm-sync.js chore: cnpm sync 2024-06-21 13:03:01 +08:00
commitlint.config.js fix: eslint (#1759) 2023-04-25 13:12:14 +08:00
deploy-docs-cn.sh feat: update docs 2023-06-20 18:05:06 +08:00
deploy-docs.sh feat: update docs 2023-06-20 18:05:06 +08:00
docker-compose.yml feat: database view collection (#1587) 2023-04-01 21:56:01 +08:00
Dockerfile fix: node version 2024-05-29 11:27:58 +08:00
generate-npmignore.sh chore: add generate-npmignore.sh 2024-05-07 16:44:42 +08:00
lerna.json refactor: rewrite the UI of the code scanner. (#4677) 2024-06-30 19:32:32 +08:00
LICENSE-AGPL.txt feat: update agreements 2024-03-30 14:19:44 +08:00
LICENSE.txt feat: update License 2024-06-19 18:01:30 +08:00
package.json chore: volta node version 2024-06-06 19:03:54 +08:00
playwright.config.ts refactor: establish a sound testing system (#3179) 2023-12-21 20:39:11 +08:00
README.md Update README.md 2024-06-11 21:33:58 +08:00
README.zh-CN.md Update README.zh-CN.md 2024-06-11 21:36:50 +08:00
release.sh chore: update release ci (#4632) 2024-06-12 11:37:23 +08:00
SECURITY.md Update SECURITY.md 2023-11-29 15:46:06 +08:00
tsconfig.json refactor: establish a sound testing system (#3179) 2023-12-21 20:39:11 +08:00
tsconfig.server.json
vitest.config.mts create nocobase app unit test (#3833) 2024-03-28 11:08:08 +08:00
yarn.lock refactor: rewrite the UI of the code scanner. (#4677) 2024-06-30 19:32:32 +08:00

English | 中文

https://github.com/nocobase/nocobase/assets/1267426/1d6a3979-d1eb-4e50-b726-2f90c3f82eeb

We'd love your support!

nocobase%2Fnocobase | Trendshift

NocoBase - Scalability-first, open-source no-code platform | Product Hunt

Recent major updates

What is NocoBase

NocoBase is a scalability-first, open-source no-code development platform.
Instead of investing years of time and millions of dollars in research and development, deploy NocoBase in a few minutes and you'll have a private, controllable, and extremely scalable no-code development platform!

Homepage:
https://www.nocobase.com/

Online Demo:
https://demo.nocobase.com/new

Documents:
https://docs.nocobase.com/

Contact Us:
hello@nocobase.com

Distinctive features

1. Data model-driven

Most form-, table-, or process-driven no-code products create data structures directly in the user interface, such as Airtable, where adding a new column to a table is adding a new field. This has the advantage of simplicity of use, but the disadvantage of limited functionality and flexibility to meet the needs of more complex scenarios.

NocoBase adopts the design idea of separating the data structure from the user interface, allowing you to create any number of blocks (data views) for the data collections, with different type, styles, content, and actions in each block. This balances the simplicity of no-code operation with the flexibility of native development.

model

2. What you see is what you get

NocoBase enables the development of complex and distinctive business systems, but this does not mean that complex and specialized operations are required. With a single click, configuration options are displayed on the usage interface, and administrators with system configuration privileges can directly configure the user interface in a WYSIWYG manner.

wysiwyg

3. Everything is implemented as plugins

NocoBase adopts plugin architecture, all new functions can be realized by developing and installing plugins, and expanding the functions is as easy as installing an APP on your phone.

plugins

Installation

NocoBase supports three installation methods:

  • Installing With Docker (👍Recommended)

    Suitable for no-code scenarios, no code to write. When upgrading, just download the latest image and reboot.

  • Installing from create-nocobase-app CLI

    The business code of the project is completely independent and supports low-code development.

  • Installing from Git source code

    If you want to experience the latest unreleased version, or want to participate in the contribution, you need to make changes and debug on the source code, it is recommended to choose this installation method, which requires a high level of development skills, and if the code has been updated, you can git pull the latest code.