@akanjs/cli 1.0.20 → 2.1.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/guidelines/componentRule/componentRule.generate.json +37 -0
- package/guidelines/componentRule/componentRule.instruction.md +28 -0
- package/guidelines/cssRule/cssRule.generate.json +37 -0
- package/guidelines/cssRule/cssRule.instruction.md +28 -0
- package/guidelines/docPageRule/docPageRule.generate.json +37 -0
- package/guidelines/docPageRule/docPageRule.instruction.md +25 -0
- package/guidelines/docSyncRule/docSyncRule.generate.json +37 -0
- package/guidelines/docSyncRule/docSyncRule.instruction.md +25 -0
- package/guidelines/enumConstant/enumConstant.generate.json +37 -0
- package/guidelines/enumConstant/enumConstant.instruction.md +28 -0
- package/guidelines/fieldRule/fieldRule.generate.json +37 -0
- package/guidelines/fieldRule/fieldRule.instruction.md +31 -0
- package/guidelines/framework/framework.generate.json +37 -0
- package/guidelines/framework/framework.instruction.md +29 -0
- package/guidelines/modelConstant/modelConstant.generate.json +37 -0
- package/guidelines/modelConstant/modelConstant.instruction.md +30 -0
- package/guidelines/modelDictionary/modelDictionary.generate.json +37 -0
- package/guidelines/modelDictionary/modelDictionary.instruction.md +30 -0
- package/guidelines/modelDocument/modelDocument.generate.json +37 -0
- package/guidelines/modelDocument/modelDocument.instruction.md +29 -0
- package/guidelines/modelService/modelService.generate.json +37 -0
- package/guidelines/modelService/modelService.instruction.md +28 -0
- package/guidelines/modelSignal/modelSignal.generate.json +37 -0
- package/guidelines/modelSignal/modelSignal.instruction.md +28 -0
- package/guidelines/modelStore/modelStore.generate.json +37 -0
- package/guidelines/modelStore/modelStore.instruction.md +28 -0
- package/guidelines/modelTemplate/modelTemplate.generate.json +37 -0
- package/guidelines/modelTemplate/modelTemplate.instruction.md +25 -0
- package/guidelines/modelUnit/modelUnit.generate.json +37 -0
- package/guidelines/modelUnit/modelUnit.instruction.md +25 -0
- package/guidelines/modelUtil/modelUtil.generate.json +37 -0
- package/guidelines/modelUtil/modelUtil.instruction.md +25 -0
- package/guidelines/modelView/modelView.generate.json +37 -0
- package/guidelines/modelView/modelView.instruction.md +25 -0
- package/guidelines/modelZone/modelZone.generate.json +37 -0
- package/guidelines/modelZone/modelZone.instruction.md +25 -0
- package/guidelines/moduleCodegen/moduleCodegen.generate.json +37 -0
- package/guidelines/moduleCodegen/moduleCodegen.instruction.md +28 -0
- package/guidelines/moduleOverview/moduleOverview.generate.json +37 -0
- package/guidelines/moduleOverview/moduleOverview.instruction.md +31 -0
- package/guidelines/scalarConstant/scalarConstant.generate.json +37 -0
- package/guidelines/scalarConstant/scalarConstant.instruction.md +28 -0
- package/guidelines/scalarDictionary/scalarDictionary.generate.json +37 -0
- package/guidelines/scalarDictionary/scalarDictionary.instruction.md +28 -0
- package/guidelines/scalarModule/scalarModule.generate.json +37 -0
- package/guidelines/scalarModule/scalarModule.instruction.md +29 -0
- package/guidelines/sharedUiUsage/sharedUiUsage.generate.json +37 -0
- package/guidelines/sharedUiUsage/sharedUiUsage.instruction.md +25 -0
- package/guidelines/utilUiUsage/utilUiUsage.generate.json +37 -0
- package/guidelines/utilUiUsage/utilUiUsage.instruction.md +25 -0
- package/index.js +11630 -0
- package/package.json +38 -56
- package/templates/__scalar/__model__/__model__.constant.ts +15 -0
- package/templates/__scalar/__model__/__model__.dictionary.ts +19 -0
- package/templates/__scalar/__model__/__model__.document.ts +15 -0
- package/templates/app/akan.config.ts +14 -0
- package/templates/app/env/env.client.debug.ts.template +7 -0
- package/templates/app/env/env.client.develop.ts.template +7 -0
- package/templates/app/env/env.client.local.ts.template +7 -0
- package/templates/app/env/env.client.main.ts.template +7 -0
- package/templates/app/env/env.client.testing.ts.template +7 -0
- package/{esm/src/templates/app/env/env.client.js → templates/app/env/env.client.ts} +7 -6
- package/templates/app/env/env.client.type.ts +16 -0
- package/{esm/src/templates/app/env/env.server.testing.ts.template → templates/app/env/env.server.debug.ts.template} +3 -2
- package/templates/app/env/env.server.develop.ts.template +7 -0
- package/templates/app/env/env.server.local.ts.template +7 -0
- package/templates/app/env/env.server.main.ts.template +7 -0
- package/{cjs/src/templates → templates}/app/env/env.server.testing.ts.template +0 -0
- package/{esm/src/templates/app/env/env.server.js → templates/app/env/env.server.ts} +7 -6
- package/templates/app/lib/___appName__/__appName__.dictionary.ts +17 -0
- package/templates/app/lib/___appName__/__appName__.service.ts +13 -0
- package/templates/app/lib/___appName__/__appName__.signal.ts +17 -0
- package/templates/app/lib/___appName__/__appName__.store.ts +17 -0
- package/templates/app/lib/option.ts +18 -0
- package/templates/app/main.ts +16 -0
- package/templates/app/page/_index.tsx +296 -0
- package/templates/app/page/_layout.tsx +31 -0
- package/templates/app/page/styles.css.template +53 -0
- package/templates/app/public/favicon.ico +0 -0
- package/templates/app/public/logo.png +0 -0
- package/{esm/src/templates → templates}/app/tsconfig.json.template +0 -1
- package/templates/client.ts +46 -0
- package/templates/crudPages/[__model__Id]/edit/page.tsx +47 -0
- package/templates/crudPages/[__model__Id]/page.tsx +52 -0
- package/templates/crudPages/new/page.tsx +42 -0
- package/templates/crudPages/page.tsx +43 -0
- package/templates/crudSinglePage/page.tsx +37 -0
- package/templates/env/_env.server.type.ts +16 -0
- package/templates/facetIndex/index.ts +33 -0
- package/templates/index.ts +10 -0
- package/templates/lib/__lib/lib.constant.ts +38 -0
- package/templates/lib/__lib/lib.dictionary.ts +33 -0
- package/templates/lib/__lib/lib.document.ts +35 -0
- package/templates/lib/__lib/lib.service.ts +33 -0
- package/templates/lib/__lib/lib.signal.ts +34 -0
- package/templates/lib/__lib/lib.store.ts +33 -0
- package/templates/lib/cnst.ts +29 -0
- package/templates/lib/db.ts +32 -0
- package/{esm/src/templates/lib/dict.js → templates/lib/dict.ts} +16 -16
- package/templates/lib/sig.ts +60 -0
- package/templates/lib/srv.ts +34 -0
- package/templates/lib/st.ts +31 -0
- package/templates/lib/useClient.ts +19 -0
- package/templates/lib/useServer.ts +7 -0
- package/templates/libRoot/akan.config.ts +12 -0
- package/templates/libRoot/base/baseLogic.ts +14 -0
- package/templates/libRoot/base/index.ts +8 -0
- package/templates/libRoot/common/commonLogic.ts +14 -0
- package/templates/libRoot/common/index.ts +8 -0
- package/{esm/src/templates/libRoot/lib/___libName__/__libName__.dictionary.js → templates/libRoot/lib/___libName__/__libName__.dictionary.ts} +6 -6
- package/templates/libRoot/lib/___libName__/__libName__.service.ts +13 -0
- package/templates/libRoot/lib/___libName__/__libName__.store.ts +15 -0
- package/templates/libRoot/lib/option.ts +18 -0
- package/templates/libRoot/srvkit/backendLogic.ts +13 -0
- package/templates/libRoot/srvkit/index.ts +8 -0
- package/templates/libRoot/ui/index.ts +8 -0
- package/templates/libRoot/webkit/frontendLogic.ts +13 -0
- package/templates/libRoot/webkit/index.ts +8 -0
- package/templates/localDev/docker-compose.yaml.template +37 -0
- package/{esm/src/templates/module/__Model__.Template.js → templates/module/__Model__.Template.tsx} +11 -8
- package/templates/module/__Model__.Unit.tsx +26 -0
- package/templates/module/__Model__.Util.tsx +30 -0
- package/{esm/src/templates/module/__Model__.View.js → templates/module/__Model__.View.tsx} +11 -8
- package/{esm/src/templates/module/__Model__.Zone.js → templates/module/__Model__.Zone.tsx} +15 -12
- package/{esm/src/templates/module/__model__.constant.js → templates/module/__model__.constant.ts} +9 -6
- package/{esm/src/templates/module/__model__.dictionary.js → templates/module/__model__.dictionary.ts} +12 -9
- package/templates/module/__model__.document.ts +23 -0
- package/templates/module/__model__.service.ts +16 -0
- package/{esm/src/templates/module/__model__.signal.js → templates/module/__model__.signal.ts} +10 -7
- package/templates/module/__model__.store.ts +21 -0
- package/templates/moduleRoot/index.tsx +31 -0
- package/{esm/src/templates/libRoot → templates/pkgRoot}/tsconfig.json.template +2 -3
- package/templates/server.ts +45 -0
- package/templates/service/__model__.dictionary.ts +19 -0
- package/templates/service/__model__.service.ts +13 -0
- package/templates/service/__model__.signal.ts +17 -0
- package/templates/service/__model__.store.ts +17 -0
- package/templates/workspaceRoot/.env.template +14 -0
- package/{cjs/src/templates → templates}/workspaceRoot/.gitignore.template +14 -13
- package/templates/workspaceRoot/.vscode/settings.json.template +23 -0
- package/templates/workspaceRoot/biome.json.template +191 -0
- package/templates/workspaceRoot/bunfig.toml +4 -0
- package/templates/workspaceRoot/package.json.template +7 -0
- package/templates/workspaceRoot/tsconfig.json.template +29 -0
- package/README.md +0 -307
- package/cjs/index.js +0 -7778
- package/cjs/src/guidelines/___library/sharedUiStructureDescription.en.md +0 -767
- package/cjs/src/guidelines/___library/utilUiStructureDescription.en.md +0 -395
- package/cjs/src/guidelines/___lint/lintRuleDescription.en.md +0 -64
- package/cjs/src/guidelines/___module/moduleStructureDescription.en.md +0 -80
- package/cjs/src/guidelines/componentRule/componentRule.generate.json +0 -131
- package/cjs/src/guidelines/componentRule/componentRule.instruction.md +0 -637
- package/cjs/src/guidelines/cssRule/cssRule.generate.json +0 -93
- package/cjs/src/guidelines/cssRule/cssRule.instruction.md +0 -435
- package/cjs/src/guidelines/databaseModule/databaseModule.generate.json +0 -51
- package/cjs/src/guidelines/databaseModule/databaseModule.instruction.md +0 -631
- package/cjs/src/guidelines/docPageRule/docPageRule.generate.json +0 -72
- package/cjs/src/guidelines/docPageRule/docPageRule.instruction.md +0 -389
- package/cjs/src/guidelines/enumConstant/enumConstant.generate.json +0 -24
- package/cjs/src/guidelines/enumConstant/enumConstant.instruction.md +0 -232
- package/cjs/src/guidelines/framework/framework.generate.json +0 -119
- package/cjs/src/guidelines/framework/framework.instruction.md +0 -1110
- package/cjs/src/guidelines/howToUseStore/howToUseStore.generate.json +0 -0
- package/cjs/src/guidelines/modelConstant/modelConstant.generate.json +0 -128
- package/cjs/src/guidelines/modelConstant/modelConstant.instruction.md +0 -506
- package/cjs/src/guidelines/modelDictionary/modelDictionary.generate.json +0 -108
- package/cjs/src/guidelines/modelDictionary/modelDictionary.instruction.md +0 -547
- package/cjs/src/guidelines/modelDocument/modelDocument.generate.json +0 -129
- package/cjs/src/guidelines/modelDocument/modelDocument.instruction.md +0 -659
- package/cjs/src/guidelines/modelService/modelService.generate.json +0 -135
- package/cjs/src/guidelines/modelService/modelService.instruction.md +0 -708
- package/cjs/src/guidelines/modelSignal/modelSignal.generate.json +0 -201
- package/cjs/src/guidelines/modelSignal/modelSignal.instruction.md +0 -552
- package/cjs/src/guidelines/modelStore/modelStore.generate.json +0 -130
- package/cjs/src/guidelines/modelStore/modelStore.instruction.md +0 -590
- package/cjs/src/guidelines/modelTemplate/modelTemplate.generate.json +0 -104
- package/cjs/src/guidelines/modelTemplate/modelTemplate.instruction.md +0 -604
- package/cjs/src/guidelines/modelUnit/modelUnit.generate.json +0 -92
- package/cjs/src/guidelines/modelUnit/modelUnit.instruction.md +0 -541
- package/cjs/src/guidelines/modelUtil/modelUtil.generate.json +0 -93
- package/cjs/src/guidelines/modelUtil/modelUtil.instruction.md +0 -752
- package/cjs/src/guidelines/modelView/modelView.generate.json +0 -80
- package/cjs/src/guidelines/modelView/modelView.instruction.md +0 -1005
- package/cjs/src/guidelines/modelZone/modelZone.generate.json +0 -126
- package/cjs/src/guidelines/modelZone/modelZone.instruction.md +0 -528
- package/cjs/src/guidelines/scalarConstant/scalarConstant.generate.json +0 -106
- package/cjs/src/guidelines/scalarConstant/scalarConstant.instruction.md +0 -442
- package/cjs/src/guidelines/scalarDictionary/scalarDictionary.generate.json +0 -83
- package/cjs/src/guidelines/scalarDictionary/scalarDictionary.instruction.md +0 -273
- package/cjs/src/guidelines/scalarModule/scalarModule.generate.json +0 -35
- package/cjs/src/guidelines/scalarModule/scalarModule.instruction.md +0 -81
- package/cjs/src/guidelines/sharedUiUsage/sharedUiUsage.generate.json +0 -108
- package/cjs/src/guidelines/sharedUiUsage/sharedUiUsage.instruction.md +0 -310
- package/cjs/src/guidelines/utilUiUsage/utilUiUsage.generate.json +0 -140
- package/cjs/src/guidelines/utilUiUsage/utilUiUsage.instruction.md +0 -339
- package/cjs/src/templates/__scalar/__model__/__model__.constant.js +0 -33
- package/cjs/src/templates/__scalar/__model__/__model__.dictionary.js +0 -37
- package/cjs/src/templates/__scalar/__model__/__model__.document.js +0 -33
- package/cjs/src/templates/app/akan.config.js +0 -33
- package/cjs/src/templates/app/app/[lang]/layout.js +0 -55
- package/cjs/src/templates/app/app/[lang]/page.js +0 -111
- package/cjs/src/templates/app/app/[lang]/styles.css.template +0 -20
- package/cjs/src/templates/app/app/csr.js +0 -36
- package/cjs/src/templates/app/app/index.html.template +0 -13
- package/cjs/src/templates/app/app/layout.js +0 -41
- package/cjs/src/templates/app/app/robots.js +0 -40
- package/cjs/src/templates/app/app/sitemap.js +0 -36
- package/cjs/src/templates/app/base/baseLogic.js +0 -35
- package/cjs/src/templates/app/base/index.js +0 -29
- package/cjs/src/templates/app/capacitor.config.ts.template +0 -8
- package/cjs/src/templates/app/common/commonLogic.js +0 -35
- package/cjs/src/templates/app/common/index.js +0 -29
- package/cjs/src/templates/app/env/env.client.debug.ts.template +0 -7
- package/cjs/src/templates/app/env/env.client.develop.ts.template +0 -7
- package/cjs/src/templates/app/env/env.client.js +0 -40
- package/cjs/src/templates/app/env/env.client.local.ts.template +0 -7
- package/cjs/src/templates/app/env/env.client.main.ts.template +0 -7
- package/cjs/src/templates/app/env/env.client.testing.ts.template +0 -7
- package/cjs/src/templates/app/env/env.client.type.js +0 -35
- package/cjs/src/templates/app/env/env.server.debug.ts.template +0 -10
- package/cjs/src/templates/app/env/env.server.develop.ts.template +0 -10
- package/cjs/src/templates/app/env/env.server.js +0 -39
- package/cjs/src/templates/app/env/env.server.local.ts.template +0 -10
- package/cjs/src/templates/app/env/env.server.main.ts.template +0 -10
- package/cjs/src/templates/app/instrumentation.js +0 -32
- package/cjs/src/templates/app/jest.config.js +0 -36
- package/cjs/src/templates/app/lib/___appName__/__appName__.dictionary.js +0 -35
- package/cjs/src/templates/app/lib/___appName__/__appName__.service.js +0 -31
- package/cjs/src/templates/app/lib/___appName__/__appName__.signal.js +0 -35
- package/cjs/src/templates/app/lib/___appName__/__appName__.store.js +0 -35
- package/cjs/src/templates/app/lib/option.js +0 -47
- package/cjs/src/templates/app/main.js +0 -39
- package/cjs/src/templates/app/nest/backendLogic.js +0 -34
- package/cjs/src/templates/app/nest/index.js +0 -29
- package/cjs/src/templates/app/next/frontendLogic.js +0 -34
- package/cjs/src/templates/app/next/index.js +0 -29
- package/cjs/src/templates/app/postcss.config.js.template +0 -8
- package/cjs/src/templates/app/proxy.js +0 -35
- package/cjs/src/templates/app/public/favicon.ico +0 -0
- package/cjs/src/templates/app/public/icons/icon-128x128.png +0 -0
- package/cjs/src/templates/app/public/icons/icon-144x144.png +0 -0
- package/cjs/src/templates/app/public/icons/icon-152x152.png +0 -0
- package/cjs/src/templates/app/public/icons/icon-192x192.png +0 -0
- package/cjs/src/templates/app/public/icons/icon-256x256.png +0 -0
- package/cjs/src/templates/app/public/icons/icon-384x384.png +0 -0
- package/cjs/src/templates/app/public/icons/icon-48x48.png +0 -0
- package/cjs/src/templates/app/public/icons/icon-512x512.png +0 -0
- package/cjs/src/templates/app/public/icons/icon-72x72.png +0 -0
- package/cjs/src/templates/app/public/icons/icon-96x96.png +0 -0
- package/cjs/src/templates/app/public/logo.svg +0 -70
- package/cjs/src/templates/app/public/manifest.json.template +0 -67
- package/cjs/src/templates/app/tsconfig.json.template +0 -22
- package/cjs/src/templates/app/tsconfig.spec.json.template +0 -7
- package/cjs/src/templates/app/ui/UiComponent.js +0 -38
- package/cjs/src/templates/app/ui/index.js +0 -29
- package/cjs/src/templates/client.js +0 -47
- package/cjs/src/templates/crudPages/[__model__Id]/edit/page.js +0 -72
- package/cjs/src/templates/crudPages/[__model__Id]/page.js +0 -78
- package/cjs/src/templates/crudPages/new/page.js +0 -67
- package/cjs/src/templates/crudPages/page.js +0 -68
- package/cjs/src/templates/crudSinglePage/page.js +0 -62
- package/cjs/src/templates/env/_env.server.type.js +0 -39
- package/cjs/src/templates/index.js +0 -29
- package/cjs/src/templates/lib/__lib/lib.constant.js +0 -57
- package/cjs/src/templates/lib/__lib/lib.dictionary.js +0 -50
- package/cjs/src/templates/lib/__lib/lib.document.js +0 -52
- package/cjs/src/templates/lib/__lib/lib.service.js +0 -59
- package/cjs/src/templates/lib/__lib/lib.signal.js +0 -55
- package/cjs/src/templates/lib/__lib/lib.store.js +0 -52
- package/cjs/src/templates/lib/cnst.js +0 -56
- package/cjs/src/templates/lib/db.js +0 -53
- package/cjs/src/templates/lib/dict.js +0 -69
- package/cjs/src/templates/lib/sig.js +0 -71
- package/cjs/src/templates/lib/srv.js +0 -50
- package/cjs/src/templates/lib/st.js +0 -50
- package/cjs/src/templates/lib/useClient.js +0 -40
- package/cjs/src/templates/lib/useServer.js +0 -31
- package/cjs/src/templates/libRoot/akan.config.js +0 -33
- package/cjs/src/templates/libRoot/base/baseLogic.js +0 -35
- package/cjs/src/templates/libRoot/base/index.js +0 -29
- package/cjs/src/templates/libRoot/common/commonLogic.js +0 -35
- package/cjs/src/templates/libRoot/common/index.js +0 -29
- package/cjs/src/templates/libRoot/jest.config.js +0 -36
- package/cjs/src/templates/libRoot/lib/___libName__/__libName__.dictionary.js +0 -35
- package/cjs/src/templates/libRoot/lib/___libName__/__libName__.service.js +0 -33
- package/cjs/src/templates/libRoot/lib/___libName__/__libName__.store.js +0 -35
- package/cjs/src/templates/libRoot/lib/option.js +0 -46
- package/cjs/src/templates/libRoot/nest/backendLogic.js +0 -34
- package/cjs/src/templates/libRoot/nest/index.js +0 -29
- package/cjs/src/templates/libRoot/next/frontendLogic.js +0 -34
- package/cjs/src/templates/libRoot/next/index.js +0 -29
- package/cjs/src/templates/libRoot/tsconfig.spec.json.template +0 -7
- package/cjs/src/templates/libRoot/ui/index.js +0 -29
- package/cjs/src/templates/localDev/docker-compose.yaml.template +0 -42
- package/cjs/src/templates/module/__Model__.Template.js +0 -53
- package/cjs/src/templates/module/__Model__.Unit.js +0 -43
- package/cjs/src/templates/module/__Model__.Util.js +0 -47
- package/cjs/src/templates/module/__Model__.View.js +0 -46
- package/cjs/src/templates/module/__Model__.Zone.js +0 -60
- package/cjs/src/templates/module/__model__.constant.js +0 -41
- package/cjs/src/templates/module/__model__.dictionary.js +0 -47
- package/cjs/src/templates/module/__model__.document.js +0 -46
- package/cjs/src/templates/module/__model__.service.js +0 -33
- package/cjs/src/templates/module/__model__.signal.js +0 -44
- package/cjs/src/templates/module/__model__.store.js +0 -38
- package/cjs/src/templates/module/index.js +0 -61
- package/cjs/src/templates/moduleRoot/index.js +0 -49
- package/cjs/src/templates/pkgRoot/tsconfig.json.template +0 -15
- package/cjs/src/templates/server.js +0 -87
- package/cjs/src/templates/workspaceRoot/.env.template +0 -20
- package/cjs/src/templates/workspaceRoot/.prettierignore.template +0 -10
- package/cjs/src/templates/workspaceRoot/.prettierrc.json.template +0 -6
- package/cjs/src/templates/workspaceRoot/.swcrc.template +0 -9
- package/cjs/src/templates/workspaceRoot/.vscode/settings.json.template +0 -12
- package/cjs/src/templates/workspaceRoot/README.md.template +0 -37
- package/cjs/src/templates/workspaceRoot/eslint.config.ts.template +0 -3
- package/cjs/src/templates/workspaceRoot/infra/app/Chart.yaml.template +0 -6
- package/cjs/src/templates/workspaceRoot/infra/app/templates/frontend.yaml.template +0 -182
- package/cjs/src/templates/workspaceRoot/infra/app/values/_common-values.yaml.template +0 -183
- package/cjs/src/templates/workspaceRoot/package.json.template +0 -47
- package/cjs/src/templates/workspaceRoot/tsconfig.json.template +0 -27
- package/esm/index.js +0 -7758
- package/esm/src/guidelines/___library/sharedUiStructureDescription.en.md +0 -767
- package/esm/src/guidelines/___library/utilUiStructureDescription.en.md +0 -395
- package/esm/src/guidelines/___lint/lintRuleDescription.en.md +0 -64
- package/esm/src/guidelines/___module/moduleStructureDescription.en.md +0 -80
- package/esm/src/guidelines/componentRule/componentRule.generate.json +0 -131
- package/esm/src/guidelines/componentRule/componentRule.instruction.md +0 -637
- package/esm/src/guidelines/cssRule/cssRule.generate.json +0 -93
- package/esm/src/guidelines/cssRule/cssRule.instruction.md +0 -435
- package/esm/src/guidelines/databaseModule/databaseModule.generate.json +0 -51
- package/esm/src/guidelines/databaseModule/databaseModule.instruction.md +0 -631
- package/esm/src/guidelines/docPageRule/docPageRule.generate.json +0 -72
- package/esm/src/guidelines/docPageRule/docPageRule.instruction.md +0 -389
- package/esm/src/guidelines/enumConstant/enumConstant.generate.json +0 -24
- package/esm/src/guidelines/enumConstant/enumConstant.instruction.md +0 -232
- package/esm/src/guidelines/framework/framework.generate.json +0 -119
- package/esm/src/guidelines/framework/framework.instruction.md +0 -1110
- package/esm/src/guidelines/howToUseStore/howToUseStore.generate.json +0 -0
- package/esm/src/guidelines/modelConstant/modelConstant.generate.json +0 -128
- package/esm/src/guidelines/modelConstant/modelConstant.instruction.md +0 -506
- package/esm/src/guidelines/modelDictionary/modelDictionary.generate.json +0 -108
- package/esm/src/guidelines/modelDictionary/modelDictionary.instruction.md +0 -547
- package/esm/src/guidelines/modelDocument/modelDocument.generate.json +0 -129
- package/esm/src/guidelines/modelDocument/modelDocument.instruction.md +0 -659
- package/esm/src/guidelines/modelService/modelService.generate.json +0 -135
- package/esm/src/guidelines/modelService/modelService.instruction.md +0 -708
- package/esm/src/guidelines/modelSignal/modelSignal.generate.json +0 -201
- package/esm/src/guidelines/modelSignal/modelSignal.instruction.md +0 -552
- package/esm/src/guidelines/modelStore/modelStore.generate.json +0 -130
- package/esm/src/guidelines/modelStore/modelStore.instruction.md +0 -590
- package/esm/src/guidelines/modelTemplate/modelTemplate.generate.json +0 -104
- package/esm/src/guidelines/modelTemplate/modelTemplate.instruction.md +0 -604
- package/esm/src/guidelines/modelUnit/modelUnit.generate.json +0 -92
- package/esm/src/guidelines/modelUnit/modelUnit.instruction.md +0 -541
- package/esm/src/guidelines/modelUtil/modelUtil.generate.json +0 -93
- package/esm/src/guidelines/modelUtil/modelUtil.instruction.md +0 -752
- package/esm/src/guidelines/modelView/modelView.generate.json +0 -80
- package/esm/src/guidelines/modelView/modelView.instruction.md +0 -1005
- package/esm/src/guidelines/modelZone/modelZone.generate.json +0 -126
- package/esm/src/guidelines/modelZone/modelZone.instruction.md +0 -528
- package/esm/src/guidelines/scalarConstant/scalarConstant.generate.json +0 -106
- package/esm/src/guidelines/scalarConstant/scalarConstant.instruction.md +0 -442
- package/esm/src/guidelines/scalarDictionary/scalarDictionary.generate.json +0 -83
- package/esm/src/guidelines/scalarDictionary/scalarDictionary.instruction.md +0 -273
- package/esm/src/guidelines/scalarModule/scalarModule.generate.json +0 -35
- package/esm/src/guidelines/scalarModule/scalarModule.instruction.md +0 -81
- package/esm/src/guidelines/sharedUiUsage/sharedUiUsage.generate.json +0 -108
- package/esm/src/guidelines/sharedUiUsage/sharedUiUsage.instruction.md +0 -310
- package/esm/src/guidelines/utilUiUsage/utilUiUsage.generate.json +0 -140
- package/esm/src/guidelines/utilUiUsage/utilUiUsage.instruction.md +0 -339
- package/esm/src/templates/__scalar/__model__/__model__.constant.js +0 -13
- package/esm/src/templates/__scalar/__model__/__model__.dictionary.js +0 -17
- package/esm/src/templates/__scalar/__model__/__model__.document.js +0 -13
- package/esm/src/templates/app/akan.config.js +0 -13
- package/esm/src/templates/app/app/[lang]/layout.js +0 -35
- package/esm/src/templates/app/app/[lang]/page.js +0 -91
- package/esm/src/templates/app/app/[lang]/styles.css.template +0 -20
- package/esm/src/templates/app/app/csr.js +0 -16
- package/esm/src/templates/app/app/index.html.template +0 -13
- package/esm/src/templates/app/app/layout.js +0 -21
- package/esm/src/templates/app/app/robots.js +0 -20
- package/esm/src/templates/app/app/sitemap.js +0 -16
- package/esm/src/templates/app/base/baseLogic.js +0 -15
- package/esm/src/templates/app/base/index.js +0 -9
- package/esm/src/templates/app/capacitor.config.ts.template +0 -8
- package/esm/src/templates/app/common/commonLogic.js +0 -15
- package/esm/src/templates/app/common/index.js +0 -9
- package/esm/src/templates/app/env/env.client.debug.ts.template +0 -7
- package/esm/src/templates/app/env/env.client.develop.ts.template +0 -7
- package/esm/src/templates/app/env/env.client.local.ts.template +0 -7
- package/esm/src/templates/app/env/env.client.main.ts.template +0 -7
- package/esm/src/templates/app/env/env.client.testing.ts.template +0 -7
- package/esm/src/templates/app/env/env.client.type.js +0 -15
- package/esm/src/templates/app/env/env.server.debug.ts.template +0 -10
- package/esm/src/templates/app/env/env.server.develop.ts.template +0 -10
- package/esm/src/templates/app/env/env.server.local.ts.template +0 -10
- package/esm/src/templates/app/env/env.server.main.ts.template +0 -10
- package/esm/src/templates/app/instrumentation.js +0 -12
- package/esm/src/templates/app/jest.config.js +0 -16
- package/esm/src/templates/app/lib/___appName__/__appName__.dictionary.js +0 -15
- package/esm/src/templates/app/lib/___appName__/__appName__.service.js +0 -11
- package/esm/src/templates/app/lib/___appName__/__appName__.signal.js +0 -15
- package/esm/src/templates/app/lib/___appName__/__appName__.store.js +0 -15
- package/esm/src/templates/app/lib/option.js +0 -27
- package/esm/src/templates/app/main.js +0 -19
- package/esm/src/templates/app/nest/backendLogic.js +0 -14
- package/esm/src/templates/app/nest/index.js +0 -9
- package/esm/src/templates/app/next/frontendLogic.js +0 -14
- package/esm/src/templates/app/next/index.js +0 -9
- package/esm/src/templates/app/package.json.template +0 -5
- package/esm/src/templates/app/postcss.config.js.template +0 -8
- package/esm/src/templates/app/proxy.js +0 -15
- package/esm/src/templates/app/public/favicon.ico +0 -0
- package/esm/src/templates/app/public/icons/icon-128x128.png +0 -0
- package/esm/src/templates/app/public/icons/icon-144x144.png +0 -0
- package/esm/src/templates/app/public/icons/icon-152x152.png +0 -0
- package/esm/src/templates/app/public/icons/icon-192x192.png +0 -0
- package/esm/src/templates/app/public/icons/icon-256x256.png +0 -0
- package/esm/src/templates/app/public/icons/icon-384x384.png +0 -0
- package/esm/src/templates/app/public/icons/icon-48x48.png +0 -0
- package/esm/src/templates/app/public/icons/icon-512x512.png +0 -0
- package/esm/src/templates/app/public/icons/icon-72x72.png +0 -0
- package/esm/src/templates/app/public/icons/icon-96x96.png +0 -0
- package/esm/src/templates/app/public/logo.svg +0 -70
- package/esm/src/templates/app/public/manifest.json.template +0 -67
- package/esm/src/templates/app/tsconfig.spec.json.template +0 -7
- package/esm/src/templates/app/ui/UiComponent.js +0 -18
- package/esm/src/templates/app/ui/index.js +0 -9
- package/esm/src/templates/client.js +0 -27
- package/esm/src/templates/crudPages/[__model__Id]/edit/page.js +0 -52
- package/esm/src/templates/crudPages/[__model__Id]/page.js +0 -58
- package/esm/src/templates/crudPages/new/page.js +0 -47
- package/esm/src/templates/crudPages/page.js +0 -48
- package/esm/src/templates/crudSinglePage/page.js +0 -42
- package/esm/src/templates/env/_env.server.type.js +0 -19
- package/esm/src/templates/index.js +0 -9
- package/esm/src/templates/lib/__lib/lib.constant.js +0 -37
- package/esm/src/templates/lib/__lib/lib.dictionary.js +0 -30
- package/esm/src/templates/lib/__lib/lib.document.js +0 -32
- package/esm/src/templates/lib/__lib/lib.service.js +0 -39
- package/esm/src/templates/lib/__lib/lib.signal.js +0 -35
- package/esm/src/templates/lib/__lib/lib.store.js +0 -32
- package/esm/src/templates/lib/cnst.js +0 -36
- package/esm/src/templates/lib/db.js +0 -33
- package/esm/src/templates/lib/sig.js +0 -51
- package/esm/src/templates/lib/srv.js +0 -30
- package/esm/src/templates/lib/st.js +0 -30
- package/esm/src/templates/lib/useClient.js +0 -20
- package/esm/src/templates/lib/useServer.js +0 -11
- package/esm/src/templates/libRoot/.gitignore.template +0 -16
- package/esm/src/templates/libRoot/akan.config.js +0 -13
- package/esm/src/templates/libRoot/base/baseLogic.js +0 -15
- package/esm/src/templates/libRoot/base/index.js +0 -9
- package/esm/src/templates/libRoot/common/commonLogic.js +0 -15
- package/esm/src/templates/libRoot/common/index.js +0 -9
- package/esm/src/templates/libRoot/env/env.server.example.ts.template +0 -6
- package/esm/src/templates/libRoot/env/env.server.testing.ts.template +0 -6
- package/esm/src/templates/libRoot/jest.config.js +0 -16
- package/esm/src/templates/libRoot/lib/___libName__/__libName__.service.js +0 -13
- package/esm/src/templates/libRoot/lib/___libName__/__libName__.store.js +0 -15
- package/esm/src/templates/libRoot/lib/option.js +0 -26
- package/esm/src/templates/libRoot/nest/backendLogic.js +0 -14
- package/esm/src/templates/libRoot/nest/index.js +0 -9
- package/esm/src/templates/libRoot/next/frontendLogic.js +0 -14
- package/esm/src/templates/libRoot/next/index.js +0 -9
- package/esm/src/templates/libRoot/package.json.template +0 -5
- package/esm/src/templates/libRoot/tsconfig.spec.json.template +0 -7
- package/esm/src/templates/libRoot/ui/index.js +0 -9
- package/esm/src/templates/localDev/docker-compose.yaml.template +0 -42
- package/esm/src/templates/module/__Model__.Unit.js +0 -23
- package/esm/src/templates/module/__Model__.Util.js +0 -27
- package/esm/src/templates/module/__model__.document.js +0 -26
- package/esm/src/templates/module/__model__.service.js +0 -13
- package/esm/src/templates/module/__model__.store.js +0 -18
- package/esm/src/templates/module/index.js +0 -41
- package/esm/src/templates/moduleRoot/index.js +0 -29
- package/esm/src/templates/pkgRoot/tsconfig.json.template +0 -15
- package/esm/src/templates/server.js +0 -67
- package/esm/src/templates/workspaceRoot/.env.template +0 -20
- package/esm/src/templates/workspaceRoot/.gitignore.template +0 -119
- package/esm/src/templates/workspaceRoot/.prettierignore.template +0 -10
- package/esm/src/templates/workspaceRoot/.prettierrc.json.template +0 -6
- package/esm/src/templates/workspaceRoot/.swcrc.template +0 -9
- package/esm/src/templates/workspaceRoot/.vscode/settings.json.template +0 -12
- package/esm/src/templates/workspaceRoot/README.md.template +0 -37
- package/esm/src/templates/workspaceRoot/eslint.config.ts.template +0 -3
- package/esm/src/templates/workspaceRoot/infra/app/Chart.yaml.template +0 -6
- package/esm/src/templates/workspaceRoot/infra/app/templates/frontend.yaml.template +0 -182
- package/esm/src/templates/workspaceRoot/infra/app/values/_common-values.yaml.template +0 -183
- package/esm/src/templates/workspaceRoot/package.json.template +0 -47
- package/esm/src/templates/workspaceRoot/tsconfig.json.template +0 -27
- package/index.d.ts +0 -2
- package/src/application/application.command.d.ts +0 -31
- package/src/application/application.interface.d.ts +0 -40
- package/src/application/application.runner.d.ts +0 -73
- package/src/application/application.script.d.ts +0 -83
- package/src/cloud/cloud.command.d.ts +0 -12
- package/src/cloud/cloud.runner.d.ts +0 -11
- package/src/cloud/cloud.script.d.ts +0 -11
- package/src/guideline/guideline.command.d.ts +0 -9
- package/src/guideline/guideline.prompt.d.ts +0 -29
- package/src/guideline/guideline.runner.d.ts +0 -19
- package/src/guideline/guideline.script.d.ts +0 -12
- package/src/guidelines/___library/sharedUiStructureDescription.en.md +0 -767
- package/src/guidelines/___library/utilUiStructureDescription.en.md +0 -395
- package/src/guidelines/___lint/lintRuleDescription.en.md +0 -64
- package/src/guidelines/___module/moduleStructureDescription.en.md +0 -80
- package/src/guidelines/componentRule/componentRule.instruction.md +0 -637
- package/src/guidelines/cssRule/cssRule.instruction.md +0 -435
- package/src/guidelines/databaseModule/databaseModule.instruction.md +0 -631
- package/src/guidelines/docPageRule/docPageRule.instruction.md +0 -389
- package/src/guidelines/enumConstant/enumConstant.instruction.md +0 -232
- package/src/guidelines/framework/framework.instruction.md +0 -1110
- package/src/guidelines/modelConstant/modelConstant.instruction.md +0 -506
- package/src/guidelines/modelDictionary/modelDictionary.instruction.md +0 -547
- package/src/guidelines/modelDocument/modelDocument.instruction.md +0 -659
- package/src/guidelines/modelService/modelService.instruction.md +0 -708
- package/src/guidelines/modelSignal/modelSignal.instruction.md +0 -552
- package/src/guidelines/modelStore/modelStore.instruction.md +0 -590
- package/src/guidelines/modelTemplate/modelTemplate.instruction.md +0 -604
- package/src/guidelines/modelUnit/modelUnit.instruction.md +0 -541
- package/src/guidelines/modelUtil/modelUtil.instruction.md +0 -752
- package/src/guidelines/modelView/modelView.instruction.md +0 -1005
- package/src/guidelines/modelZone/modelZone.instruction.md +0 -528
- package/src/guidelines/scalarConstant/scalarConstant.instruction.md +0 -442
- package/src/guidelines/scalarDictionary/scalarDictionary.instruction.md +0 -273
- package/src/guidelines/scalarModule/scalarModule.instruction.md +0 -81
- package/src/guidelines/sharedUiUsage/sharedUiUsage.instruction.md +0 -310
- package/src/guidelines/utilUiUsage/utilUiUsage.instruction.md +0 -339
- package/src/library/library.command.d.ts +0 -9
- package/src/library/library.runner.d.ts +0 -9
- package/src/library/library.script.d.ts +0 -9
- package/src/module/module.command.d.ts +0 -10
- package/src/module/module.prompt.d.ts +0 -13
- package/src/module/module.request.d.ts +0 -63
- package/src/module/module.runner.d.ts +0 -53
- package/src/module/module.script.d.ts +0 -17
- package/src/package/package.command.d.ts +0 -10
- package/src/package/package.runner.d.ts +0 -9
- package/src/package/package.script.d.ts +0 -10
- package/src/page/page.command.d.ts +0 -6
- package/src/page/page.runner.d.ts +0 -8
- package/src/page/page.script.d.ts +0 -9
- package/src/scalar/scalar.command.d.ts +0 -7
- package/src/scalar/scalar.prompt.d.ts +0 -23
- package/src/scalar/scalar.runner.d.ts +0 -14
- package/src/scalar/scalar.script.d.ts +0 -7
- package/src/templates/__scalar/__model__/__model__.constant.d.ts +0 -7
- package/src/templates/__scalar/__model__/__model__.dictionary.d.ts +0 -7
- package/src/templates/__scalar/__model__/__model__.document.d.ts +0 -7
- package/src/templates/app/akan.config.d.ts +0 -6
- package/src/templates/app/app/[lang]/layout.d.ts +0 -11
- package/src/templates/app/app/[lang]/page.d.ts +0 -9
- package/src/templates/app/app/csr.d.ts +0 -9
- package/src/templates/app/app/layout.d.ts +0 -9
- package/src/templates/app/app/robots.d.ts +0 -6
- package/src/templates/app/app/sitemap.d.ts +0 -6
- package/src/templates/app/base/baseLogic.d.ts +0 -6
- package/src/templates/app/base/index.d.ts +0 -6
- package/src/templates/app/common/commonLogic.d.ts +0 -6
- package/src/templates/app/common/index.d.ts +0 -6
- package/src/templates/app/env/env.client.d.ts +0 -6
- package/src/templates/app/env/env.client.type.d.ts +0 -6
- package/src/templates/app/env/env.server.d.ts +0 -6
- package/src/templates/app/instrumentation.d.ts +0 -6
- package/src/templates/app/jest.config.d.ts +0 -6
- package/src/templates/app/lib/___appName__/__appName__.dictionary.d.ts +0 -7
- package/src/templates/app/lib/___appName__/__appName__.service.d.ts +0 -7
- package/src/templates/app/lib/___appName__/__appName__.signal.d.ts +0 -7
- package/src/templates/app/lib/___appName__/__appName__.store.d.ts +0 -7
- package/src/templates/app/lib/option.d.ts +0 -6
- package/src/templates/app/main.d.ts +0 -6
- package/src/templates/app/nest/backendLogic.d.ts +0 -6
- package/src/templates/app/nest/index.d.ts +0 -6
- package/src/templates/app/next/frontendLogic.d.ts +0 -6
- package/src/templates/app/next/index.d.ts +0 -6
- package/src/templates/app/proxy.d.ts +0 -6
- package/src/templates/app/ui/UiComponent.d.ts +0 -9
- package/src/templates/app/ui/index.d.ts +0 -6
- package/src/templates/client.d.ts +0 -4
- package/src/templates/crudPages/[__model__Id]/edit/page.d.ts +0 -11
- package/src/templates/crudPages/[__model__Id]/page.d.ts +0 -11
- package/src/templates/crudPages/new/page.d.ts +0 -11
- package/src/templates/crudPages/page.d.ts +0 -11
- package/src/templates/crudSinglePage/page.d.ts +0 -11
- package/src/templates/env/_env.server.type.d.ts +0 -7
- package/src/templates/index.d.ts +0 -6
- package/src/templates/lib/__lib/lib.constant.d.ts +0 -4
- package/src/templates/lib/__lib/lib.dictionary.d.ts +0 -4
- package/src/templates/lib/__lib/lib.document.d.ts +0 -4
- package/src/templates/lib/__lib/lib.service.d.ts +0 -4
- package/src/templates/lib/__lib/lib.signal.d.ts +0 -4
- package/src/templates/lib/__lib/lib.store.d.ts +0 -4
- package/src/templates/lib/cnst.d.ts +0 -4
- package/src/templates/lib/db.d.ts +0 -4
- package/src/templates/lib/dict.d.ts +0 -4
- package/src/templates/lib/sig.d.ts +0 -4
- package/src/templates/lib/srv.d.ts +0 -4
- package/src/templates/lib/st.d.ts +0 -4
- package/src/templates/lib/useClient.d.ts +0 -4
- package/src/templates/lib/useServer.d.ts +0 -4
- package/src/templates/libRoot/akan.config.d.ts +0 -5
- package/src/templates/libRoot/base/baseLogic.d.ts +0 -5
- package/src/templates/libRoot/base/index.d.ts +0 -5
- package/src/templates/libRoot/common/commonLogic.d.ts +0 -5
- package/src/templates/libRoot/common/index.d.ts +0 -5
- package/src/templates/libRoot/jest.config.d.ts +0 -6
- package/src/templates/libRoot/lib/___libName__/__libName__.dictionary.d.ts +0 -6
- package/src/templates/libRoot/lib/___libName__/__libName__.service.d.ts +0 -6
- package/src/templates/libRoot/lib/___libName__/__libName__.store.d.ts +0 -6
- package/src/templates/libRoot/lib/option.d.ts +0 -6
- package/src/templates/libRoot/nest/backendLogic.d.ts +0 -5
- package/src/templates/libRoot/nest/index.d.ts +0 -5
- package/src/templates/libRoot/next/frontendLogic.d.ts +0 -5
- package/src/templates/libRoot/next/index.d.ts +0 -5
- package/src/templates/libRoot/ui/index.d.ts +0 -5
- package/src/templates/module/__Model__.Template.d.ts +0 -11
- package/src/templates/module/__Model__.Unit.d.ts +0 -11
- package/src/templates/module/__Model__.Util.d.ts +0 -11
- package/src/templates/module/__Model__.View.d.ts +0 -11
- package/src/templates/module/__Model__.Zone.d.ts +0 -11
- package/src/templates/module/__model__.constant.d.ts +0 -8
- package/src/templates/module/__model__.dictionary.d.ts +0 -8
- package/src/templates/module/__model__.document.d.ts +0 -8
- package/src/templates/module/__model__.service.d.ts +0 -8
- package/src/templates/module/__model__.signal.d.ts +0 -9
- package/src/templates/module/__model__.store.d.ts +0 -8
- package/src/templates/module/index.d.ts +0 -11
- package/src/templates/moduleRoot/index.d.ts +0 -11
- package/src/templates/server.d.ts +0 -4
- package/src/workspace/workspace.command.d.ts +0 -12
- package/src/workspace/workspace.runner.d.ts +0 -13
- package/src/workspace/workspace.script.d.ts +0 -24
- package/ui/MultiScrollList.d.ts +0 -14
- /package/{cjs/src/templates → templates}/app/package.json.template +0 -0
- /package/{cjs/src/templates → templates}/libRoot/.gitignore.template +0 -0
- /package/{cjs/src/templates → templates}/libRoot/env/env.server.example.ts.template +0 -0
- /package/{cjs/src/templates → templates}/libRoot/env/env.server.testing.ts.template +0 -0
- /package/{cjs/src/templates → templates}/libRoot/package.json.template +0 -0
- /package/{cjs/src/templates → templates}/libRoot/tsconfig.json.template +0 -0
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Component Rule",
|
|
3
|
+
"description": "Shared component implementation rules",
|
|
4
|
+
"group": "core",
|
|
5
|
+
"docsSource": "apps/angelo/page/akanjs/(docs)/references/ui/overview.tsx",
|
|
6
|
+
"codegenPriority": 3,
|
|
7
|
+
"deprecated": false,
|
|
8
|
+
"scans": [
|
|
9
|
+
{
|
|
10
|
+
"type": "docs",
|
|
11
|
+
"description": "Current docs source for Component Rule",
|
|
12
|
+
"path": "apps/angelo/page/akanjs/(docs)/references/ui/overview.tsx"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "example",
|
|
16
|
+
"description": "Existing Akan implementation examples",
|
|
17
|
+
"path": "{apps,libs}/*/lib/**/*.ts",
|
|
18
|
+
"sample": 4
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"update": {
|
|
22
|
+
"filePath": "./componentRule.instruction.md",
|
|
23
|
+
"contents": [
|
|
24
|
+
"purpose",
|
|
25
|
+
"file ownership",
|
|
26
|
+
"current API patterns",
|
|
27
|
+
"codegen rules",
|
|
28
|
+
"validation checklist"
|
|
29
|
+
],
|
|
30
|
+
"rules": [
|
|
31
|
+
"Use current Akan APIs only",
|
|
32
|
+
"Keep output parseable for codegen",
|
|
33
|
+
"Include ownership boundaries and review checklist"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"page": "apps/angelo/page/akanjs/(docs)/references/ui/overview.tsx"
|
|
37
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# Akan Component Rule Guideline
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Use this for shared UI rules across module, scalar, app UI, and docs components.
|
|
5
|
+
|
|
6
|
+
## Ownership
|
|
7
|
+
- Accept `className?: string` for reusable components and forward it through `clsx`.
|
|
8
|
+
- Use semantic HTML and accessible labels for interactive elements.
|
|
9
|
+
- Use `akanjs/ui` and project UI libraries before adding new primitives.
|
|
10
|
+
- Keep presentation components small; move page composition to Zone and actions to Util or store.
|
|
11
|
+
|
|
12
|
+
## Current Akan Patterns
|
|
13
|
+
- Unit renders compact repeated display, View renders full detail display, Template renders form fragments, Util renders small controls, Zone composes page sections.
|
|
14
|
+
- Server components should stay display-only unless the file convention says otherwise.
|
|
15
|
+
- Client components can use store hooks and event handlers where interaction is required.
|
|
16
|
+
- Use generated model types from app client or module constants; do not invent duplicate UI-only model shapes.
|
|
17
|
+
|
|
18
|
+
## Codegen Rules
|
|
19
|
+
- Do not put business workflow decisions in render code.
|
|
20
|
+
- Do not use undocumented UI components or props.
|
|
21
|
+
- Do not use hardcoded colors when DaisyUI semantic classes work.
|
|
22
|
+
- Do not create broad component abstractions before repeated patterns exist.
|
|
23
|
+
|
|
24
|
+
## Review Checklist
|
|
25
|
+
- The instruction points to current docs pages, not removed docs routes.
|
|
26
|
+
- Generated examples use current Akan builder APIs and scanner-friendly filenames.
|
|
27
|
+
- The output contract tells the model which file paths to return.
|
|
28
|
+
- The guide avoids broad framework essays when a concrete file rule is better.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "CSS Rule",
|
|
3
|
+
"description": "Tailwind and DaisyUI styling rules",
|
|
4
|
+
"group": "core",
|
|
5
|
+
"docsSource": "apps/angelo/page/akanjs/(docs)/docs/arch/css.tsx",
|
|
6
|
+
"codegenPriority": 3,
|
|
7
|
+
"deprecated": false,
|
|
8
|
+
"scans": [
|
|
9
|
+
{
|
|
10
|
+
"type": "docs",
|
|
11
|
+
"description": "Current docs source for CSS Rule",
|
|
12
|
+
"path": "apps/angelo/page/akanjs/(docs)/docs/arch/css.tsx"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "example",
|
|
16
|
+
"description": "Existing Akan implementation examples",
|
|
17
|
+
"path": "{apps,libs}/*/lib/**/*.ts",
|
|
18
|
+
"sample": 4
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"update": {
|
|
22
|
+
"filePath": "./cssRule.instruction.md",
|
|
23
|
+
"contents": [
|
|
24
|
+
"purpose",
|
|
25
|
+
"file ownership",
|
|
26
|
+
"current API patterns",
|
|
27
|
+
"codegen rules",
|
|
28
|
+
"validation checklist"
|
|
29
|
+
],
|
|
30
|
+
"rules": [
|
|
31
|
+
"Use current Akan APIs only",
|
|
32
|
+
"Keep output parseable for codegen",
|
|
33
|
+
"Include ownership boundaries and review checklist"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"page": "apps/angelo/page/akanjs/(docs)/docs/arch/css.tsx"
|
|
37
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# CSS Rule Guideline
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Use TailwindCSS and DaisyUI in a theme-safe, composable way for Akan UI and docs pages.
|
|
5
|
+
|
|
6
|
+
## Ownership
|
|
7
|
+
- Use Tailwind utility classes for layout, spacing, typography, and responsive behavior.
|
|
8
|
+
- Use DaisyUI semantic tokens such as base, primary, secondary, accent, info, success, warning, and error.
|
|
9
|
+
- Use `clsx` from `akanjs/client` for conditional class composition.
|
|
10
|
+
- Forward `className` at the end of composed class strings to allow callers to extend styles.
|
|
11
|
+
|
|
12
|
+
## Current Akan Patterns
|
|
13
|
+
- Prefer mobile-first responsive classes.
|
|
14
|
+
- Use card, btn, input, badge, alert, divider, tabs, modal, and other documented DaisyUI classes when they match the design.
|
|
15
|
+
- Use consistent density and spacing within one component family.
|
|
16
|
+
- Keep custom CSS files rare and scoped to cases utilities cannot express cleanly.
|
|
17
|
+
|
|
18
|
+
## Codegen Rules
|
|
19
|
+
- Do not hardcode hex colors or one-off brand colors unless the existing file already defines that design system.
|
|
20
|
+
- Do not use important flags to fight component composition.
|
|
21
|
+
- Do not hide focus states on interactive elements.
|
|
22
|
+
- Do not add global CSS for one component-specific layout.
|
|
23
|
+
|
|
24
|
+
## Review Checklist
|
|
25
|
+
- The instruction points to current docs pages, not removed docs routes.
|
|
26
|
+
- Generated examples use current Akan builder APIs and scanner-friendly filenames.
|
|
27
|
+
- The output contract tells the model which file paths to return.
|
|
28
|
+
- The guide avoids broad framework essays when a concrete file rule is better.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Docs Page Rule",
|
|
3
|
+
"description": "Docs page writing rules",
|
|
4
|
+
"group": "core",
|
|
5
|
+
"docsSource": "apps/angelo/page/akanjs/(docs)/cheatsheet/dev/docs.tsx",
|
|
6
|
+
"codegenPriority": 3,
|
|
7
|
+
"deprecated": false,
|
|
8
|
+
"scans": [
|
|
9
|
+
{
|
|
10
|
+
"type": "docs",
|
|
11
|
+
"description": "Current docs source for Docs Page Rule",
|
|
12
|
+
"path": "apps/angelo/page/akanjs/(docs)/cheatsheet/dev/docs.tsx"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "example",
|
|
16
|
+
"description": "Existing Akan implementation examples",
|
|
17
|
+
"path": "{apps,libs}/*/lib/**/*.ts",
|
|
18
|
+
"sample": 4
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"update": {
|
|
22
|
+
"filePath": "./docPageRule.instruction.md",
|
|
23
|
+
"contents": [
|
|
24
|
+
"purpose",
|
|
25
|
+
"file ownership",
|
|
26
|
+
"current API patterns",
|
|
27
|
+
"codegen rules",
|
|
28
|
+
"validation checklist"
|
|
29
|
+
],
|
|
30
|
+
"rules": [
|
|
31
|
+
"Use current Akan APIs only",
|
|
32
|
+
"Keep output parseable for codegen",
|
|
33
|
+
"Include ownership boundaries and review checklist"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"page": "apps/angelo/page/akanjs/(docs)/cheatsheet/dev/docs.tsx"
|
|
37
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Docs Page Rule Guideline
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Use this when generating or updating Akan docs pages under the current docs route tree.
|
|
5
|
+
|
|
6
|
+
## Ownership
|
|
7
|
+
- Docs pages live under `apps/angelo/page/akanjs/(docs)`.
|
|
8
|
+
- Pages use `Docs`, `Code`, `Scroll`, and app localization helpers used by nearby pages.
|
|
9
|
+
- A docs page should teach one concept with examples, alerts, and navigation anchors.
|
|
10
|
+
|
|
11
|
+
## Current Akan Patterns
|
|
12
|
+
- Use current route groups: docs, conventions, references, cheatsheet, and plugins.
|
|
13
|
+
- Prefer concise sections with code snippets and practical rules.
|
|
14
|
+
- Use Mermaid only when it clarifies architecture or flow.
|
|
15
|
+
|
|
16
|
+
## Codegen Rules
|
|
17
|
+
- Do not write docs for removed route paths.
|
|
18
|
+
- Do not generate placeholder pages when source docs already exist.
|
|
19
|
+
- Do not include implementation claims that are not backed by code or nearby docs.
|
|
20
|
+
|
|
21
|
+
## Review Checklist
|
|
22
|
+
- The instruction points to current docs pages, not removed docs routes.
|
|
23
|
+
- Generated examples use current Akan builder APIs and scanner-friendly filenames.
|
|
24
|
+
- The output contract tells the model which file paths to return.
|
|
25
|
+
- The guide avoids broad framework essays when a concrete file rule is better.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Docs Sync Rule",
|
|
3
|
+
"description": "Docs to guideline sync rules",
|
|
4
|
+
"group": "core",
|
|
5
|
+
"docsSource": "apps/angelo/page/akanjs/(docs)/docs/_index.tsx",
|
|
6
|
+
"codegenPriority": 3,
|
|
7
|
+
"deprecated": false,
|
|
8
|
+
"scans": [
|
|
9
|
+
{
|
|
10
|
+
"type": "docs",
|
|
11
|
+
"description": "Current docs source for Docs Sync Rule",
|
|
12
|
+
"path": "apps/angelo/page/akanjs/(docs)/docs/_index.tsx"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "example",
|
|
16
|
+
"description": "Existing Akan implementation examples",
|
|
17
|
+
"path": "{apps,libs}/*/lib/**/*.ts",
|
|
18
|
+
"sample": 4
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"update": {
|
|
22
|
+
"filePath": "./docSyncRule.instruction.md",
|
|
23
|
+
"contents": [
|
|
24
|
+
"purpose",
|
|
25
|
+
"file ownership",
|
|
26
|
+
"current API patterns",
|
|
27
|
+
"codegen rules",
|
|
28
|
+
"validation checklist"
|
|
29
|
+
],
|
|
30
|
+
"rules": [
|
|
31
|
+
"Use current Akan APIs only",
|
|
32
|
+
"Keep output parseable for codegen",
|
|
33
|
+
"Include ownership boundaries and review checklist"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"page": "apps/angelo/page/akanjs/(docs)/docs/_index.tsx"
|
|
37
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# Docs To Guideline Sync Rule
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Use this when applying current docs page information back into guideline instruction files.
|
|
5
|
+
|
|
6
|
+
## Ownership
|
|
7
|
+
- Docs pages are the source of truth for product-facing explanations.
|
|
8
|
+
- Guideline instructions are compressed operational rules for AI codegen.
|
|
9
|
+
- Sync should preserve codegen-specific output contracts and validation rules that docs pages may not mention.
|
|
10
|
+
|
|
11
|
+
## Current Akan Patterns
|
|
12
|
+
- Extract ownership boundaries, API names, file paths, examples, and warnings from docs pages.
|
|
13
|
+
- Convert long explanatory sections into prompt-friendly bullet rules.
|
|
14
|
+
- Keep docs links or source paths in `generate.json` metadata.
|
|
15
|
+
|
|
16
|
+
## Codegen Rules
|
|
17
|
+
- Do not copy large TSX page content directly into markdown instructions.
|
|
18
|
+
- Do not remove codegen output format requirements during sync.
|
|
19
|
+
- Do not let stale instruction examples override newer docs examples.
|
|
20
|
+
|
|
21
|
+
## Review Checklist
|
|
22
|
+
- The instruction points to current docs pages, not removed docs routes.
|
|
23
|
+
- Generated examples use current Akan builder APIs and scanner-friendly filenames.
|
|
24
|
+
- The output contract tells the model which file paths to return.
|
|
25
|
+
- The guide avoids broad framework essays when a concrete file rule is better.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Enum Constant",
|
|
3
|
+
"description": "enumOf category value rules",
|
|
4
|
+
"group": "core",
|
|
5
|
+
"docsSource": "apps/angelo/page/akanjs/(docs)/conventions/module/constant.tsx",
|
|
6
|
+
"codegenPriority": 2,
|
|
7
|
+
"deprecated": false,
|
|
8
|
+
"scans": [
|
|
9
|
+
{
|
|
10
|
+
"type": "docs",
|
|
11
|
+
"description": "Current docs source for Enum Constant",
|
|
12
|
+
"path": "apps/angelo/page/akanjs/(docs)/conventions/module/constant.tsx"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "example",
|
|
16
|
+
"description": "Existing Akan implementation examples",
|
|
17
|
+
"path": "{apps,libs}/*/lib/**/*.ts",
|
|
18
|
+
"sample": 4
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"update": {
|
|
22
|
+
"filePath": "./enumConstant.instruction.md",
|
|
23
|
+
"contents": [
|
|
24
|
+
"purpose",
|
|
25
|
+
"file ownership",
|
|
26
|
+
"current API patterns",
|
|
27
|
+
"codegen rules",
|
|
28
|
+
"validation checklist"
|
|
29
|
+
],
|
|
30
|
+
"rules": [
|
|
31
|
+
"Use current Akan APIs only",
|
|
32
|
+
"Keep output parseable for codegen",
|
|
33
|
+
"Include ownership boundaries and review checklist"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"page": "apps/angelo/page/akanjs/(docs)/conventions/module/constant.tsx"
|
|
37
|
+
}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
# enumOf Guideline
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Use enum classes for categorical values that need type safety, defaults, dictionary entries, and stable API values.
|
|
5
|
+
|
|
6
|
+
## Ownership
|
|
7
|
+
- Define enum classes near the constant or scalar that owns the category.
|
|
8
|
+
- Use camelCase values that are stable API/storage values.
|
|
9
|
+
- Export the enum class so constants, dictionaries, UI, service, and signal can share it.
|
|
10
|
+
- Provide dictionary entries for each public enum value and description.
|
|
11
|
+
|
|
12
|
+
## Current Akan Patterns
|
|
13
|
+
- Use enums for status, role, type, mode, channel, lifecycle, and similar finite sets.
|
|
14
|
+
- Use boolean fields only when there are exactly two stable states and labels are obvious.
|
|
15
|
+
- Use string fields only when the value is open-ended or user-defined.
|
|
16
|
+
- Keep enum names domain-specific enough to avoid collisions.
|
|
17
|
+
|
|
18
|
+
## Codegen Rules
|
|
19
|
+
- Do not generate plain string unions when enum dictionary coverage is needed.
|
|
20
|
+
- Do not rename stored enum values casually; persisted data may depend on them.
|
|
21
|
+
- Do not add unused enum values just for hypothetical future UI.
|
|
22
|
+
- Do not mix display labels into stored enum values.
|
|
23
|
+
|
|
24
|
+
## Review Checklist
|
|
25
|
+
- The instruction points to current docs pages, not removed docs routes.
|
|
26
|
+
- Generated examples use current Akan builder APIs and scanner-friendly filenames.
|
|
27
|
+
- The output contract tells the model which file paths to return.
|
|
28
|
+
- The guide avoids broad framework essays when a concrete file rule is better.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Field Rule",
|
|
3
|
+
"description": "Current via field helper rules",
|
|
4
|
+
"group": "core",
|
|
5
|
+
"docsSource": "apps/angelo/page/akanjs/(docs)/conventions/module/constant.tsx",
|
|
6
|
+
"codegenPriority": 1,
|
|
7
|
+
"deprecated": false,
|
|
8
|
+
"scans": [
|
|
9
|
+
{
|
|
10
|
+
"type": "docs",
|
|
11
|
+
"description": "Current docs source for Field Rule",
|
|
12
|
+
"path": "apps/angelo/page/akanjs/(docs)/conventions/module/constant.tsx"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "example",
|
|
16
|
+
"description": "Existing Akan implementation examples",
|
|
17
|
+
"path": "{apps,libs}/*/lib/**/*.ts",
|
|
18
|
+
"sample": 4
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"update": {
|
|
22
|
+
"filePath": "./fieldRule.instruction.md",
|
|
23
|
+
"contents": [
|
|
24
|
+
"purpose",
|
|
25
|
+
"file ownership",
|
|
26
|
+
"current API patterns",
|
|
27
|
+
"codegen rules",
|
|
28
|
+
"validation checklist"
|
|
29
|
+
],
|
|
30
|
+
"rules": [
|
|
31
|
+
"Use current Akan APIs only",
|
|
32
|
+
"Keep output parseable for codegen",
|
|
33
|
+
"Include ownership boundaries and review checklist"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"page": "apps/angelo/page/akanjs/(docs)/conventions/module/constant.tsx"
|
|
37
|
+
}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# Akan Field Rule Guideline
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Use this whenever generating constants or scalar constants. It defines the current `via()` field helper style and field option rules.
|
|
5
|
+
|
|
6
|
+
## Ownership
|
|
7
|
+
- `field(Type)` defines a required public field.
|
|
8
|
+
- `field(Type, options)` defines a field with defaults, examples, validation, aggregation, or relation metadata.
|
|
9
|
+
- `field(Type).optional()` marks a nullable or optional business value when absence is valid.
|
|
10
|
+
- `field.hidden(Type).optional()` is for internal state that should not be treated as a normal public field.
|
|
11
|
+
- `field.secret(Type).optional()` is for sensitive values that should not be selected by default.
|
|
12
|
+
- `field([Type])` defines arrays; provide empty array defaults when the app expects list operations.
|
|
13
|
+
|
|
14
|
+
## Current Akan Patterns
|
|
15
|
+
- Use `String`, `Boolean`, `Date`, `Int`, `Float`, `ID`, scalar classes, model light classes, or enum classes as field types.
|
|
16
|
+
- Use `enumOf()` classes for categorical values that need type-safe values and dictionary entries.
|
|
17
|
+
- Use scalar classes for embedded reusable value objects such as price, address, coordinate, or file metadata.
|
|
18
|
+
- Use light model classes for embedded resolved references when the parent stores or exposes a compact related model.
|
|
19
|
+
|
|
20
|
+
## Codegen Rules
|
|
21
|
+
- Every generated field should have a clear business reason and a dictionary label/description unless it is hidden or secret.
|
|
22
|
+
- Use `example` values when the field appears in APIs or docs.
|
|
23
|
+
- Use `default` for stable empty states such as empty string, zero, false, empty list, or date factory.
|
|
24
|
+
- Use validation options only for domain invariants, not UI-only preferences.
|
|
25
|
+
- Do not create fields only because a UI might someday need them.
|
|
26
|
+
|
|
27
|
+
## Review Checklist
|
|
28
|
+
- The instruction points to current docs pages, not removed docs routes.
|
|
29
|
+
- Generated examples use current Akan builder APIs and scanner-friendly filenames.
|
|
30
|
+
- The output contract tells the model which file paths to return.
|
|
31
|
+
- The guide avoids broad framework essays when a concrete file rule is better.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Akan.js Framework",
|
|
3
|
+
"description": "Compact global context for Akan AI codegen",
|
|
4
|
+
"group": "core",
|
|
5
|
+
"docsSource": "apps/angelo/page/akanjs/(docs)/docs/intro/fundamentals.tsx",
|
|
6
|
+
"codegenPriority": 1,
|
|
7
|
+
"deprecated": false,
|
|
8
|
+
"scans": [
|
|
9
|
+
{
|
|
10
|
+
"type": "docs",
|
|
11
|
+
"description": "Current docs source for Akan.js Framework",
|
|
12
|
+
"path": "apps/angelo/page/akanjs/(docs)/docs/intro/fundamentals.tsx"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "example",
|
|
16
|
+
"description": "Existing Akan implementation examples",
|
|
17
|
+
"path": "{apps,libs}/*/lib/**/*.ts",
|
|
18
|
+
"sample": 4
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"update": {
|
|
22
|
+
"filePath": "./framework.instruction.md",
|
|
23
|
+
"contents": [
|
|
24
|
+
"purpose",
|
|
25
|
+
"file ownership",
|
|
26
|
+
"current API patterns",
|
|
27
|
+
"codegen rules",
|
|
28
|
+
"validation checklist"
|
|
29
|
+
],
|
|
30
|
+
"rules": [
|
|
31
|
+
"Use current Akan APIs only",
|
|
32
|
+
"Keep output parseable for codegen",
|
|
33
|
+
"Include ownership boundaries and review checklist"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"page": "apps/angelo/page/akanjs/(docs)/docs/intro/fundamentals.tsx"
|
|
37
|
+
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
# Akan.js Framework Guide
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Use this as the compact framework context for AI codegen. It should explain how Akan turns convention-based files into a full-stack app without teaching every API in one place.
|
|
5
|
+
|
|
6
|
+
## Ownership
|
|
7
|
+
- `apps/<app>` contains app code, pages, env files, module folders, UI, webkit, srvkit, and common utilities.
|
|
8
|
+
- `libs/<lib>` contains reusable domain and utility libraries consumed by apps.
|
|
9
|
+
- `pkgs/akanjs` contains framework facets such as base, constant, document, service, signal, store, client, ui, and CLI tooling.
|
|
10
|
+
- Domain behavior lives near the model folder instead of being split by technical layer first.
|
|
11
|
+
|
|
12
|
+
## Current Akan Patterns
|
|
13
|
+
- Database module flow is `constant -> dictionary -> document -> service -> signal -> store -> UI`.
|
|
14
|
+
- Scalars live under `lib/__scalar/<scalarName>` and represent embedded value objects.
|
|
15
|
+
- Service modules live under `lib/_<serviceName>` when behavior is not centered on one stored model.
|
|
16
|
+
- Generated registry files such as `cnst.ts`, `db.ts`, `dict.ts`, `sig.ts`, `srv.ts`, and `st.ts` are scanner outputs and should not be hand-authored.
|
|
17
|
+
- Pages and components should consume generated client/server helpers rather than duplicating model shapes.
|
|
18
|
+
|
|
19
|
+
## Codegen Rules
|
|
20
|
+
- Prefer the most specific guideline for file syntax; use this guide only for global architecture context.
|
|
21
|
+
- When generating a new feature, start with the smallest necessary layer set and add later layers only when required by behavior.
|
|
22
|
+
- Keep business decisions in constant, document, or service; keep API exposure in signal; keep client coordination in store; keep rendering in UI files.
|
|
23
|
+
- Use direct module imports where scanner rules expect them, and avoid inventing new top-level app folders.
|
|
24
|
+
|
|
25
|
+
## Review Checklist
|
|
26
|
+
- The instruction points to current docs pages, not removed docs routes.
|
|
27
|
+
- Generated examples use current Akan builder APIs and scanner-friendly filenames.
|
|
28
|
+
- The output contract tells the model which file paths to return.
|
|
29
|
+
- The guide avoids broad framework essays when a concrete file rule is better.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Model Constant",
|
|
3
|
+
"description": "Module constant generation rules",
|
|
4
|
+
"group": "module",
|
|
5
|
+
"docsSource": "apps/angelo/page/akanjs/(docs)/conventions/module/constant.tsx",
|
|
6
|
+
"codegenPriority": 1,
|
|
7
|
+
"deprecated": false,
|
|
8
|
+
"scans": [
|
|
9
|
+
{
|
|
10
|
+
"type": "docs",
|
|
11
|
+
"description": "Current docs source for Model Constant",
|
|
12
|
+
"path": "apps/angelo/page/akanjs/(docs)/conventions/module/constant.tsx"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "example",
|
|
16
|
+
"description": "Existing Akan implementation examples",
|
|
17
|
+
"path": "{apps,libs}/*/lib/**/*.ts",
|
|
18
|
+
"sample": 4
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"update": {
|
|
22
|
+
"filePath": "./modelConstant.instruction.md",
|
|
23
|
+
"contents": [
|
|
24
|
+
"purpose",
|
|
25
|
+
"file ownership",
|
|
26
|
+
"current API patterns",
|
|
27
|
+
"codegen rules",
|
|
28
|
+
"validation checklist"
|
|
29
|
+
],
|
|
30
|
+
"rules": [
|
|
31
|
+
"Use current Akan APIs only",
|
|
32
|
+
"Keep output parseable for codegen",
|
|
33
|
+
"Include ownership boundaries and review checklist"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"page": "apps/angelo/page/akanjs/(docs)/conventions/module/constant.tsx"
|
|
37
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# model.constant.ts Guideline
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Generate the business data shape for a collection-backed Akan module. This file is the shared type source used by document, service, signal, store, and UI.
|
|
5
|
+
|
|
6
|
+
## Ownership
|
|
7
|
+
- Define enum classes first when the model has categorical states.
|
|
8
|
+
- Define `ModelInput` for fields accepted from create or edit flows.
|
|
9
|
+
- Define `ModelObject` by extending `via(ModelInput, (field) => ({ ... }))` for stored fields controlled by system or service behavior.
|
|
10
|
+
- Define `LightModel` by selecting compact list/reference fields from the object layer.
|
|
11
|
+
- Define full `Model` by combining object and light layers and adding only small static or type helpers when needed.
|
|
12
|
+
- Define `ModelInsight` only when aggregation or dashboard values are useful.
|
|
13
|
+
|
|
14
|
+
## Current Akan Patterns
|
|
15
|
+
- Use `via()` and the `field` helper for all model layers.
|
|
16
|
+
- Use `field.hidden()` and `field.secret()` for internal or sensitive values.
|
|
17
|
+
- Use scalars from `../__scalar/<name>/<name>.constant` when a field group is reusable and embedded.
|
|
18
|
+
- Use direct imports for related light models to avoid circular barrel imports.
|
|
19
|
+
|
|
20
|
+
## Codegen Rules
|
|
21
|
+
- Keep the light model small enough for lists, cards, and relation previews.
|
|
22
|
+
- Do not put persistence queries, service workflows, fetch calls, or React UI in constant files.
|
|
23
|
+
- Use stable defaults for arrays and frequently read values.
|
|
24
|
+
- Add dictionary coverage for public fields, enums, insights, and query-facing names.
|
|
25
|
+
|
|
26
|
+
## Review Checklist
|
|
27
|
+
- The instruction points to current docs pages, not removed docs routes.
|
|
28
|
+
- Generated examples use current Akan builder APIs and scanner-friendly filenames.
|
|
29
|
+
- The output contract tells the model which file paths to return.
|
|
30
|
+
- The guide avoids broad framework essays when a concrete file rule is better.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Model Dictionary",
|
|
3
|
+
"description": "Module dictionary generation rules",
|
|
4
|
+
"group": "module",
|
|
5
|
+
"docsSource": "apps/angelo/page/akanjs/(docs)/conventions/module/dictionary.tsx",
|
|
6
|
+
"codegenPriority": 1,
|
|
7
|
+
"deprecated": false,
|
|
8
|
+
"scans": [
|
|
9
|
+
{
|
|
10
|
+
"type": "docs",
|
|
11
|
+
"description": "Current docs source for Model Dictionary",
|
|
12
|
+
"path": "apps/angelo/page/akanjs/(docs)/conventions/module/dictionary.tsx"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "example",
|
|
16
|
+
"description": "Existing Akan implementation examples",
|
|
17
|
+
"path": "{apps,libs}/*/lib/**/*.ts",
|
|
18
|
+
"sample": 4
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"update": {
|
|
22
|
+
"filePath": "./modelDictionary.instruction.md",
|
|
23
|
+
"contents": [
|
|
24
|
+
"purpose",
|
|
25
|
+
"file ownership",
|
|
26
|
+
"current API patterns",
|
|
27
|
+
"codegen rules",
|
|
28
|
+
"validation checklist"
|
|
29
|
+
],
|
|
30
|
+
"rules": [
|
|
31
|
+
"Use current Akan APIs only",
|
|
32
|
+
"Keep output parseable for codegen",
|
|
33
|
+
"Include ownership boundaries and review checklist"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"page": "apps/angelo/page/akanjs/(docs)/conventions/module/dictionary.tsx"
|
|
37
|
+
}
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# model.dictionary.ts Guideline
|
|
2
|
+
|
|
3
|
+
## Purpose
|
|
4
|
+
Generate user-facing language for a model. Dictionary entries should make fields, enum values, queries, slices, endpoints, errors, and UI phrases readable in every supported language.
|
|
5
|
+
|
|
6
|
+
## Ownership
|
|
7
|
+
- `modelName` and `modelDesc` describe the model itself.
|
|
8
|
+
- Public model fields need `fieldName` and `desc-fieldName` entries.
|
|
9
|
+
- Enum values need `enum-field-value` and `enumdesc-field-value` entries.
|
|
10
|
+
- Document queries and sorts need query labels, descriptions, and argument descriptions when surfaced to UI or docs.
|
|
11
|
+
- Signal slices and endpoints need API labels, API descriptions, argument labels, and argument descriptions.
|
|
12
|
+
- Custom UI text should live near the model when it is model-specific.
|
|
13
|
+
|
|
14
|
+
## Current Akan Patterns
|
|
15
|
+
- Use `ModelDictionary`, `SignalDictionary`, base translations, and base signal translations where available in nearby examples.
|
|
16
|
+
- Keep language order consistent with the app convention.
|
|
17
|
+
- Prefer short labels and useful descriptions over repeating the field name.
|
|
18
|
+
- Group entries by model, insight, query, endpoint, enum, error, and UI sections.
|
|
19
|
+
|
|
20
|
+
## Codegen Rules
|
|
21
|
+
- Dictionary keys must match generated field, enum, query, slice, endpoint, and argument names.
|
|
22
|
+
- Do not add orphan translations that are not used by the model or UI.
|
|
23
|
+
- Do not omit descriptions for public fields or externally visible arguments.
|
|
24
|
+
- Preserve generated base translations instead of rewriting common keys.
|
|
25
|
+
|
|
26
|
+
## Review Checklist
|
|
27
|
+
- The instruction points to current docs pages, not removed docs routes.
|
|
28
|
+
- Generated examples use current Akan builder APIs and scanner-friendly filenames.
|
|
29
|
+
- The output contract tells the model which file paths to return.
|
|
30
|
+
- The guide avoids broad framework essays when a concrete file rule is better.
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Model Document",
|
|
3
|
+
"description": "Module persistence generation rules",
|
|
4
|
+
"group": "module",
|
|
5
|
+
"docsSource": "apps/angelo/page/akanjs/(docs)/conventions/module/document.tsx",
|
|
6
|
+
"codegenPriority": 1,
|
|
7
|
+
"deprecated": false,
|
|
8
|
+
"scans": [
|
|
9
|
+
{
|
|
10
|
+
"type": "docs",
|
|
11
|
+
"description": "Current docs source for Model Document",
|
|
12
|
+
"path": "apps/angelo/page/akanjs/(docs)/conventions/module/document.tsx"
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
"type": "example",
|
|
16
|
+
"description": "Existing Akan implementation examples",
|
|
17
|
+
"path": "{apps,libs}/*/lib/**/*.ts",
|
|
18
|
+
"sample": 4
|
|
19
|
+
}
|
|
20
|
+
],
|
|
21
|
+
"update": {
|
|
22
|
+
"filePath": "./modelDocument.instruction.md",
|
|
23
|
+
"contents": [
|
|
24
|
+
"purpose",
|
|
25
|
+
"file ownership",
|
|
26
|
+
"current API patterns",
|
|
27
|
+
"codegen rules",
|
|
28
|
+
"validation checklist"
|
|
29
|
+
],
|
|
30
|
+
"rules": [
|
|
31
|
+
"Use current Akan APIs only",
|
|
32
|
+
"Keep output parseable for codegen",
|
|
33
|
+
"Include ownership boundaries and review checklist"
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
"page": "apps/angelo/page/akanjs/(docs)/conventions/module/document.tsx"
|
|
37
|
+
}
|