Bỏ qua, đến nội dung

Core

Thư mục packages/core chứa thư viện nền của Digiforce. Phần handbook này ưu tiên tài liệu hóa core trước khi đi sâu từng plugin.

Kiến trúc tổng thể

Thứ tự đọc gợi ý

#Tài liệuNội dung chính
1Bản đồ góiTên package, vai trò, sơ đồ phụ thuộc
2Luồng dữ liệu & requestPipeline request từ client → repository, merge params
3Server - ApplicationVòng đời app, init/load/start/stop/install/upgrade, middleware stack
4Client - ApplicationSPA runtime, plugin client, provider chain, WebSocket
5Database - Collection & RepositoryORM, filter parser, repository workflow
6Resourcer & ActionsResource, action, middleware chain, handler registration
7DataSourceManagerMulti data source, default actions, introspector
8Engine ACLRole, resource, action, snippet, fixed params
9Auth & AuthManagerJWT, authenticator, skipCheck, public action
10FAQCâu hỏi thường gặp khi làm việc với core

Đọc theo nhu cầu

  • Mới bắt đầu: đọc 1 → 2 → 3 → 4 để nắm tổng quan.
  • Backend developer: tập trung 3 → 5 → 6 → 7 → 8 → 9.
  • Frontend developer: tập trung 4 rồi quay lại 2 để hiểu API.
  • Security review: đọc 8 → 9 → 2 (phần policy).

Tham chiếu từng package

Mỗi gói trong packages/core/ có trang tham chiếu API riêng - xem sidebar mục Tham chiếu gói.

Runtime

PackageMô tả
@digiforce-nc/serverApplication Koa, lifecycle, middleware, plugin, gateway
@digiforce-nc/clientApplication React SPA, routing, schema, provider chain
@digiforce-nc/databaseORM Sequelize: Database, Collection, Repository, Migration
@digiforce-nc/resourcerResourceManager, Resource, Action - URL → handler
@digiforce-nc/data-source-managerMulti data source, per-source pipeline, introspector
@digiforce-nc/aclAuthorization engine: role, snippet, fixedParams
@digiforce-nc/authAuthentication: AuthManager, JWT, auth types
@digiforce-nc/actionsBuilt-in CRUD actions (list, get, create, update, destroy…)
@digiforce-nc/cacheCacheManager, Cache, BloomFilter, Counter
@digiforce-nc/loggerWinston logging, request logger, transports

Support

PackageMô tả
@digiforce-nc/cliCLI commands: dev, start, install, upgrade, pm
@digiforce-nc/lock-managerDistributed lock, pluggable adapters
@digiforce-nc/telemetryOpenTelemetry metrics & traces
@digiforce-nc/sdkAPIClient, Resource, Auth, Storage adapters
@digiforce-nc/evaluatorsFormula/math/string evaluators
@digiforce-nc/utilsShared utilities: Toposort, Registry, merge, crypto…

Tooling

PackageMô tả
@digiforce-nc/buildBuild tool (Rollup/RSBuild) cho monorepo
@digiforce-nc/appBootstrap entry point - Gateway startup
create-digiforce-nc-appScaffolding tool tạo project mới
@digiforce-nc/devtoolsDev utilities: plugin index, RSBuild alias
@digiforce-nc/testTest harness: server, client, e2e, vitest
@digiforce-nc/snowflake-id53-bit distributed ID generator
@digiforce-nc/ui-coreUI core: RunJS, widgets, view scopes
@digiforce-nc/sharedShared: getValuesByPath, variable-usage
@digiforce-nc/aiAI manager: tools, skills, bots, MCP, documents

Trọng tâm đọc sâu

FileTrọng tâm
03-server-application.mdLifecycle thật (init/load/start/stop/install/upgrade) + middleware order + plugin manager integration
04-client-application.mdConstructor flow, plugin/route/websocket lifecycle, providers + API interaction
05-database-collection-repository.mdParser filter/options, EagerLoadingTree, repository workflow chi tiết
06-resourcer-actions-context.mdParse request, action chain, pre-action middleware theo topo
07-data-source-manager.mdBinding data source → resource → repository, default action map, introspector
08-acl-engine.mdMô hình role/resource/action, snippet, fixed params, phân biệt engine vs plugin-acl
09-auth-auth-manager.mdAuth strategy, JWT lifecycle, skipCheck, public action, interaction với ACL

Liên quan