- );
-};
-
-export default () => {
- return (
-
-
-
- );
-};
diff --git a/docs/examples/index.md b/docs/examples/index.md
deleted file mode 100644
index 843a2f2cb..000000000
--- a/docs/examples/index.md
+++ /dev/null
@@ -1,8 +0,0 @@
----
-sidemenu: false
-nav:
- title: Examples
- order: 99
----
-
-Coming soon...
diff --git a/docs/examples/index.zh-CN.md b/docs/examples/index.zh-CN.md
deleted file mode 100644
index 420497907..000000000
--- a/docs/examples/index.zh-CN.md
+++ /dev/null
@@ -1,8 +0,0 @@
----
-sidemenu: false
-nav:
- title: 示例
- order: 99
----
-
-待补充...
diff --git a/docs/guide/basic/client-components.md b/docs/guide/basic/client-components.md
deleted file mode 100644
index f5e470ac7..000000000
--- a/docs/guide/basic/client-components.md
+++ /dev/null
@@ -1,315 +0,0 @@
----
-order: 2
----
-
-# Client Components
-
-To allow more non-developers to participate, NocoBase provides a companion client - a visual interface without code. The client interface is very flexible and consists of different components, which are divided into three categories.
-
-- Routing components created by createRouteSwitch, such as Layout, Page
-- Field components created by createCollectionField, used to extend fields
-- JSON Schema components created by createSchemaComponent, which can be anything, such as tables, forms, calendars, kanban, etc.
-
-[For more on components, see the section on components](#)
-
-## Component tree structure
-
-The interface is a component tree composed of components with the following structure.
-
-
-
-Note: The above example is only for expressing the structure of the component tree and the relationship between components, the actual code does not.
-
-Next, let's introduce the concept of each component in detail.
-## Layout and pages
-
-Pages are web pages that can be accessed by address. Different pages may have the same header, footer and navigation between them, and usually we put these common contents in the layout component. For example, the initialized NocoBase provides two layout components, as shown in
-
-Figure
-
-- AuthLayout: accessible without login, usually used to embed login, registration, forgot password, etc. pages.
-- AdminLayout: requires login and manages all pages of the backend.
-
-Layout and page components are registered through createRouteSwitch, more extensions are available here.
-
-## Page content layout
-
-For developers, the writing of page content is free, but to facilitate the layout of page content, two types of layout are provided.
-
-### Simple top-down structure
-
-
-
-
-
-
-
-
-
-Example
-
-```js
-// coming soon
-```
-
-### Drag and drop grid
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-Grid component defines the outer frame of the block based on rows (Grid.Row) and columns (Grid.Col). Examples are as follows:
-
-```js
-// coming soon
-```
-
-## AddNew
-
-AddNew is the most important button for visual configuration of the page, more about [AddNew](#) here
-
-## Block
-
-Blocks are generally placed in pages and can be anything, including text, attachments, tables, forms, calendars, kanban boards, etc. A complete block consists of three parts.
-
-- Content, the body of the block
-- ActionBar, where you can place various action buttons to manipulate the block data (optional)
-- DesignableBar, buttons for operating the block configuration (optional)
-
-Take the table block as an example, the component structure is as follows:
-
-
-
-
-
-
-
-
-
-Example
-
-```js
-// coming soon
-```
-
-There are several types of blocks.
-
-- Data types, used to display data from data tables, such as tables, calendars, kanban, forms, details, etc.
-- Multimedia, for enriching page content, such as text paragraphs, attachments, etc. For now there is only a simple Markdown.
-- Charts, for displaying data statistics.
-- Templates, which can directly template certain finished products and apply them directly to the page.
-
-Blocks can be extended at will, see the [createSchemaComponent](#) chapter for how to do so.
-
-## ActionBar
-
-An action bar is a collection of actions, typically used inside a block. The user issues an action command, the program makes a change, and responds with the result in the block's content area.
-
-Example.
-
-Form, the content area is a table, and the action area will place some action buttons, such as filter, add, delete, export, etc
-
-```js
-// coming soon
-```
-
-details, the content area is the details of the data, the operation area will be placed on the edit, export and other buttons
-
-```js
-// coming soon
-```
-
-The buttons of the action bar may be different for different blocks. The action bar buttons are also customizable, check the action chapter for details.
-
-## Action
-
-An action is an encapsulated piece of instruction that generally requires user participation.
-
-For example.
-
-- Delete data, which requires the user to select the data to be deleted, and then trigger the delete command
-- Filtering data requires the user to fill in the filter items and then triggers the filter command
-- Add data, the user needs to fill in the data and then submit it, triggering the add operation instruction
-- View details, the user clicks the operation button, the pop-up window to view the details or the current window to open the details page to view
-
-The simplest operation, you only need to bind a paragraph of instructions, simply specify a function, no need to pass parameters. The component structure is as follows.
-
-
-
-
-
-Most of the action instructions require user-supplied parameters, such as the add data action, which requires the user to fill in the data, which usually requires a pop-up form, and the user fills in the data and clicks submit to trigger the action instruction. The component structure is as follows.
-
-
-
- {/* This is a popup form with a built-in submit button that triggers an action command when clicked, the specific code is omitted */}
-
-
-
-
-A complete action is roughly divided into two steps.
-
-- Bind a directive to the Action
-- If the directive requires user-supplied parameters, it needs to provide an interaction interface, which is currently built in as follows
- - Action.Drawer: drawer
- - Modal: dialog box
- - Popover: bubble
-
-Action is a very important concept in NocoBase, more details click here to see
-
-## DesignableBar
-
-All Schema Components can be bound to their own configuration toolbar (DesignableBar) for modifying the Schema of the current component.
-
-**What is a Schema Component?**
-A component written in JSON-like Schema format via the Schema protocol, e.g.
-
-```js
-{
- type: 'void',
- 'x-Component': 'Hello',
- 'x-designable-bar': 'Hello.DesignableBar',
- 'x-dect': 'CardItem',
-}
-```
-
-To give a few examples, e.g.
-
-JSON Schema for form fields
-
-```js
-const schema = {
- type: 'string',
- 'x-component': 'Input',
- 'x-decorator': 'FormItem',
- 'x-designable-bar': 'Form.Field.DesignableBar',
-};
-```
-
-The effect of the form item's configuration toolbar `Form.Field.DesignableBar`
-
-
-
-JSON Schema for the form
-
-```js
-const schema = {
- type: 'array',
- 'x-component': 'Table',
- 'x-decorator': 'CardItem',
- 'x-designable-bar': 'Table.DesignableBar',
-};
-```
-
-The effect of the table configuration toolbar `Table.DesignableBar`
-
-
-
-JSON Schema for the menu item.
-
-```js
-const schema = {
- type: 'array',
- 'x-component': 'Menu.Item',
- 'x-designable-bar': 'Menu.Item.DesignableBar',
-};
-```
-
-Effect of menu item configuration toolbar `Menu.Item.DesignableBar`
-
-
-
-For more details on the configuration toolbar click here
-
-## CollectionField
-
-The configuration parameters of field components can be very many, and the same field component can be used in different data blocks. In order to reduce code duplication, NocoBase assigns the configuration of field components to the data table for unified management. One configuration, many uses. The field component is directly referenced in the data block, and then extended if there are other different parameters.
-
-
-
- // 原生态的写法
-
-
-
- // 简化之后的字段引用
-
-
-
-
-
-
-
-
-The field component has three display states.
-
-- fillable - editable
-- unfillable - disabled
-- Read mode - read-pretty
-
-As an example for a single line of text (Input).
-
-```js
-// example (three display states for Input)
-
-// example to be added
-```
-
-**Why do fields have multiple display states? **
-
-- In a form, the field is normally filled in (editable), but if it is for viewing only, the field is set to disabled or read-pretty.
-- In forms, fields are generally read-pretty, but if you need to edit them quickly within the form, you can dynamically activate a field as editable.
-
-The field component can be extended in any way, see the createCollectionField section for how to do so.
diff --git a/docs/guide/basic/client-components.zh-CN.md b/docs/guide/basic/client-components.zh-CN.md
deleted file mode 100644
index 0a1e00523..000000000
--- a/docs/guide/basic/client-components.zh-CN.md
+++ /dev/null
@@ -1,324 +0,0 @@
----
-order: 2
----
-
-# 客户端组件
-
-为了让更多非开发人员也能参与进来,NocoBase 提供了配套的客户端 —— 无代码的可视化界面。客户端界面非常灵活,由不同组件构成,分为了三类:
-
-- 通过 createRouteSwitch 创建的路由组件,如 Layout、Page
-- 通过 createCollectionField 创建的字段组件,用于扩展字段
-- 通过 createSchemaComponent 创建的 JSON Schema 组件,可以是任意东西,比如表格、表单、日历、看板等
-
-[更多组件内容,查看组件章节](#)
-
-## 组件树结构
-
-界面是由组件构成的组件树,结构如下:
-
-
-
-- APIClientProvider: provides the APIClient
-- I18nextProvider: internationalization
-- AntdProvider: handles the internationalization of antd components, which needs to be placed in I18nextProvider
-- Router: route driver
-- RouteSwitch: route distribution
-
-The above code may seem a bit verbose, but the actual function and role of each part is not the same, so it is not suitable for over-encapsulation. If needed, it can be further encapsulated according to the actual situation.
\ No newline at end of file
diff --git a/docs/guide/kernel-principle/client-side-kernel.zh-CN.md b/docs/guide/kernel-principle/client-side-kernel.zh-CN.md
deleted file mode 100644
index 847d05fca..000000000
--- a/docs/guide/kernel-principle/client-side-kernel.zh-CN.md
+++ /dev/null
@@ -1,158 +0,0 @@
----
-order: 2
----
-
-# 客户端内核
-
-为了让更多非开发人员也能参与进来,NocoBase 提供了配套的客户端插件 —— 无代码的可视化配置界面。这部分的核心就是 @nocobase/client,理想状态可以用在任意前端构建工具或框架内,如:
-
-- umijs
-- create-react-app
-- icejs
-- vite
-- snowpack
-- nextjs
-- 其他
-
-暂时只支持 umijs(打包编译还有些问题),未来会逐步支持以上罗列的各个框架。
-
-客户端主要的组成部分包括:
-
-## 请求
-
-- API Client
-- Request Hook
-
-```ts
-const api = new APIClient({
- request,
-});
-
-api.auth();
-api.get();
-api.post();
-api.resource('collections').create();
-api.resource('collections').findOne({});
-api.resource('collections').findMany({});
-api.resource('collections').relation('fields').of(1).create();
-```
-
-以下细节待定,特殊的资源
-
-```js
-api.collections.create();
-api.uiSchemas.create();
-```
-
-Request Hook
-
-[https://www.npmjs.com/package/@ahooksjs/use-request](https://www.npmjs.com/package/@ahooksjs/use-request)
-
-```js
-const { data } = useRequest(() => api.resource('users').findMany());
-```
-
-## 路由
-
-- createRouteSwitch
-
-```js
-const RouteSwitch = createRouteSwitch({
- components: {},
-});
-
-
-```
-
-## Schema 组件
-
-- createSchemaComponent
-
-```js
-function Hello() {
- return