@akanjs/cli 0.0.148 → 0.0.150
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/cjs/index.js +58 -11
- package/cjs/src/guidelines/___library/sharedUiStructureDescription.en.md +0 -18
- package/cjs/src/guidelines/componentRule/componentRule.generate.json +131 -0
- package/cjs/src/guidelines/cssRule/cssRule.generate.json +93 -0
- package/cjs/src/guidelines/databaseModule/databaseModule.generate.json +51 -0
- package/cjs/src/guidelines/docPageRule/docPageRule.generate.json +72 -0
- package/cjs/src/guidelines/enumConstant/enumConstant.generate.json +24 -0
- package/cjs/src/guidelines/fieldDecorator/fieldDecorator.generate.json +135 -0
- package/cjs/src/guidelines/framework/framework.generate.json +119 -0
- package/cjs/src/guidelines/howToUseStore/howToUseStore.generate.json +0 -0
- package/cjs/src/guidelines/modelConstant/modelConstant.generate.json +135 -0
- package/cjs/src/guidelines/modelDictionary/modelDictionary.generate.json +115 -0
- package/cjs/src/guidelines/modelDocument/modelDocument.generate.json +129 -0
- package/cjs/src/guidelines/modelService/modelService.generate.json +179 -0
- package/cjs/src/guidelines/modelSignal/modelSignal.generate.json +202 -0
- package/cjs/src/guidelines/modelStore/modelStore.generate.json +130 -0
- package/cjs/src/guidelines/modelTemplate/modelTemplate.generate.json +104 -0
- package/cjs/src/guidelines/modelUnit/modelUnit.generate.json +92 -0
- package/cjs/src/guidelines/modelUtil/modelUtil.generate.json +93 -0
- package/cjs/src/guidelines/modelView/modelView.generate.json +80 -0
- package/cjs/src/guidelines/modelZone/modelZone.generate.json +126 -0
- package/cjs/src/guidelines/scalarConstant/scalarConstant.generate.json +102 -0
- package/cjs/src/guidelines/scalarDictionary/scalarDictionary.generate.json +83 -0
- package/cjs/src/guidelines/scalarModule/scalarModule.generate.json +35 -0
- package/cjs/src/guidelines/sharedUiUsage/sharedUiUsage.generate.json +115 -0
- package/cjs/src/guidelines/utilUiUsage/utilUiUsage.generate.json +140 -0
- package/cjs/src/templates/app/app/[lang]/(__appName__)/(public)/forgotpassword/page.js +47 -0
- package/cjs/src/templates/app/app/[lang]/(__appName__)/(public)/page.js +128 -0
- package/cjs/src/templates/app/app/[lang]/(__appName__)/(public)/privacy/page.js +42 -0
- package/cjs/src/templates/app/app/[lang]/(__appName__)/(public)/signin/page.js +50 -0
- package/cjs/src/templates/app/app/[lang]/(__appName__)/(public)/termsofservice/page.js +41 -0
- package/cjs/src/templates/app/app/[lang]/(__appName__)/(public)/unknown/page.js +51 -0
- package/cjs/src/templates/app/app/[lang]/(__appName__)/(user)/layout.js +43 -0
- package/cjs/src/templates/app/app/[lang]/(__appName__)/(user)/self/page.js +60 -0
- package/cjs/src/templates/app/app/[lang]/(__appName__)/layout.js +54 -0
- package/cjs/src/templates/app/app/[lang]/(__appName__)/styles.css.template +19 -0
- package/cjs/src/templates/app/app/[lang]/admin/layout.js +54 -0
- package/cjs/src/templates/app/app/[lang]/admin/page.js +63 -0
- package/cjs/src/templates/app/app/csr.js +34 -0
- package/cjs/src/templates/app/app/index.html.template +13 -0
- package/cjs/src/templates/app/app/layout.js +38 -0
- package/cjs/src/templates/app/capacitor.config.ts.template +8 -0
- package/cjs/src/templates/app/env/env.client.debug.ts.template +7 -0
- package/cjs/src/templates/app/env/env.client.develop.ts.template +7 -0
- package/cjs/src/templates/app/env/env.client.local.ts.template +7 -0
- package/cjs/src/templates/app/env/env.client.main.ts.template +7 -0
- package/cjs/src/templates/app/env/env.client.testing.ts.template +7 -0
- package/cjs/src/templates/app/env/env.server.debug.ts.template +15 -0
- package/cjs/src/templates/app/env/env.server.develop.ts.template +15 -0
- package/cjs/src/templates/app/env/env.server.local.ts.template +15 -0
- package/cjs/src/templates/app/env/env.server.main.ts.template +15 -0
- package/cjs/src/templates/app/env/env.server.testing.ts.template +7 -0
- package/cjs/src/templates/app/lib/setting/Setting.Template.js +57 -0
- package/cjs/src/templates/app/lib/setting/Setting.Unit.js +38 -0
- package/cjs/src/templates/app/lib/setting/Setting.Util.js +34 -0
- package/cjs/src/templates/app/lib/setting/Setting.View.js +51 -0
- package/cjs/src/templates/app/lib/setting/Setting.Zone.js +80 -0
- package/cjs/src/templates/app/lib/setting/index.js +61 -0
- package/cjs/src/templates/app/lib/summary/Summary.Template.js +43 -0
- package/cjs/src/templates/app/lib/summary/Summary.Unit.js +38 -0
- package/cjs/src/templates/app/lib/summary/Summary.Util.js +33 -0
- package/cjs/src/templates/app/lib/summary/Summary.View.js +51 -0
- package/cjs/src/templates/app/lib/summary/Summary.Zone.js +62 -0
- package/cjs/src/templates/app/lib/summary/index.js +67 -0
- package/cjs/src/templates/app/lib/user/User.Template.js +65 -0
- package/cjs/src/templates/app/lib/user/User.Unit.js +38 -0
- package/cjs/src/templates/app/lib/user/User.Util.js +94 -0
- package/cjs/src/templates/app/lib/user/User.View.js +66 -0
- package/cjs/src/templates/app/lib/user/User.Zone.js +74 -0
- package/cjs/src/templates/app/lib/user/index.js +61 -0
- package/cjs/src/templates/app/main.js +2 -1
- package/cjs/src/templates/app/page.test.ts.template +10 -0
- package/cjs/src/templates/app/playwright.config.ts.template +6 -0
- package/cjs/src/templates/app/postcss.config.js.template +10 -0
- 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 +70 -0
- package/cjs/src/templates/app/public/manifest.json.template +67 -0
- package/cjs/src/templates/app/tsconfig.json.template +22 -0
- package/cjs/src/templates/app/tsconfig.spec.json.template +7 -0
- package/cjs/src/templates/app/ui/Footer.js +67 -0
- package/cjs/src/templates/app/ui/MainHeader.js +131 -0
- package/cjs/src/templates/crudPages/[__model__Id]/edit/page.js +73 -0
- package/cjs/src/templates/crudPages/[__model__Id]/page.js +83 -0
- package/cjs/src/templates/crudPages/new/page.js +70 -0
- package/cjs/src/templates/crudPages/page.js +71 -0
- package/cjs/src/templates/libRoot/.gitignore.template +15 -0
- package/cjs/src/templates/libRoot/env/env.server.example.ts.template +7 -0
- package/cjs/src/templates/libRoot/env/env.server.testing.ts.template +7 -0
- package/cjs/src/templates/libRoot/lib/setting/Setting.Template.js +57 -0
- package/cjs/src/templates/libRoot/lib/setting/Setting.Unit.js +38 -0
- package/cjs/src/templates/libRoot/lib/setting/Setting.Util.js +34 -0
- package/cjs/src/templates/libRoot/lib/setting/Setting.View.js +51 -0
- package/cjs/src/templates/libRoot/lib/setting/Setting.Zone.js +80 -0
- package/cjs/src/templates/libRoot/lib/setting/index.js +61 -0
- package/cjs/src/templates/libRoot/lib/summary/Summary.Template.js +43 -0
- package/cjs/src/templates/libRoot/lib/summary/Summary.Unit.js +38 -0
- package/cjs/src/templates/libRoot/lib/summary/Summary.Util.js +33 -0
- package/cjs/src/templates/libRoot/lib/summary/Summary.View.js +51 -0
- package/cjs/src/templates/libRoot/lib/summary/Summary.Zone.js +62 -0
- package/cjs/src/templates/libRoot/lib/summary/index.js +67 -0
- package/cjs/src/templates/libRoot/lib/user/User.Template.js +65 -0
- package/cjs/src/templates/libRoot/lib/user/User.Unit.js +38 -0
- package/cjs/src/templates/libRoot/lib/user/User.Util.js +94 -0
- package/cjs/src/templates/libRoot/lib/user/User.View.js +66 -0
- package/cjs/src/templates/libRoot/lib/user/User.Zone.js +74 -0
- package/cjs/src/templates/libRoot/lib/user/index.js +61 -0
- package/cjs/src/templates/libRoot/package.json.template +4 -0
- package/cjs/src/templates/libRoot/tsconfig.json.template +13 -0
- package/cjs/src/templates/libRoot/tsconfig.spec.json.template +7 -0
- package/cjs/src/templates/localDev/docker-compose.yaml.template +36 -0
- package/cjs/src/templates/module/__Model__.Template.js +54 -0
- package/cjs/src/templates/module/__Model__.Unit.js +42 -0
- package/cjs/src/templates/module/__Model__.Util.js +70 -0
- package/cjs/src/templates/module/__Model__.View.js +48 -0
- package/cjs/src/templates/module/__Model__.Zone.js +83 -0
- package/cjs/src/templates/module/index.js +61 -0
- package/cjs/src/templates/pkgRoot/tsconfig.json.template +15 -0
- package/cjs/src/templates/workspaceRoot/.env.template +20 -0
- package/cjs/src/templates/workspaceRoot/.gitignore.template +118 -0
- package/cjs/src/templates/workspaceRoot/.prettierignore.template +10 -0
- package/cjs/src/templates/workspaceRoot/.prettierrc.json.template +6 -0
- package/cjs/src/templates/workspaceRoot/.swcrc.template +9 -0
- package/cjs/src/templates/workspaceRoot/.vscode/settings.json.template +13 -0
- package/cjs/src/templates/workspaceRoot/README.md.template +37 -0
- package/cjs/src/templates/workspaceRoot/eslint.config.ts.template +3 -0
- package/cjs/src/templates/workspaceRoot/package.json.template +43 -0
- package/cjs/src/templates/workspaceRoot/tsconfig.json.template +29 -0
- package/esm/index.js +59 -12
- package/esm/src/guidelines/___library/sharedUiStructureDescription.en.md +0 -18
- package/esm/src/guidelines/componentRule/componentRule.generate.json +131 -0
- package/esm/src/guidelines/cssRule/cssRule.generate.json +93 -0
- package/esm/src/guidelines/databaseModule/databaseModule.generate.json +51 -0
- package/esm/src/guidelines/docPageRule/docPageRule.generate.json +72 -0
- package/esm/src/guidelines/enumConstant/enumConstant.generate.json +24 -0
- package/esm/src/guidelines/fieldDecorator/fieldDecorator.generate.json +135 -0
- package/esm/src/guidelines/framework/framework.generate.json +119 -0
- package/esm/src/guidelines/howToUseStore/howToUseStore.generate.json +0 -0
- package/esm/src/guidelines/modelConstant/modelConstant.generate.json +135 -0
- package/esm/src/guidelines/modelDictionary/modelDictionary.generate.json +115 -0
- package/esm/src/guidelines/modelDocument/modelDocument.generate.json +129 -0
- package/esm/src/guidelines/modelService/modelService.generate.json +179 -0
- package/esm/src/guidelines/modelSignal/modelSignal.generate.json +202 -0
- package/esm/src/guidelines/modelStore/modelStore.generate.json +130 -0
- package/esm/src/guidelines/modelTemplate/modelTemplate.generate.json +104 -0
- package/esm/src/guidelines/modelUnit/modelUnit.generate.json +92 -0
- package/esm/src/guidelines/modelUtil/modelUtil.generate.json +93 -0
- package/esm/src/guidelines/modelView/modelView.generate.json +80 -0
- package/esm/src/guidelines/modelZone/modelZone.generate.json +126 -0
- package/esm/src/guidelines/scalarConstant/scalarConstant.generate.json +102 -0
- package/esm/src/guidelines/scalarDictionary/scalarDictionary.generate.json +83 -0
- package/esm/src/guidelines/scalarModule/scalarModule.generate.json +35 -0
- package/esm/src/guidelines/sharedUiUsage/sharedUiUsage.generate.json +115 -0
- package/esm/src/guidelines/utilUiUsage/utilUiUsage.generate.json +140 -0
- package/esm/src/templates/app/app/[lang]/(__appName__)/(public)/forgotpassword/page.js +27 -0
- package/esm/src/templates/app/app/[lang]/(__appName__)/(public)/page.js +108 -0
- package/esm/src/templates/app/app/[lang]/(__appName__)/(public)/privacy/page.js +22 -0
- package/esm/src/templates/app/app/[lang]/(__appName__)/(public)/signin/page.js +30 -0
- package/esm/src/templates/app/app/[lang]/(__appName__)/(public)/termsofservice/page.js +21 -0
- package/esm/src/templates/app/app/[lang]/(__appName__)/(public)/unknown/page.js +31 -0
- package/esm/src/templates/app/app/[lang]/(__appName__)/(user)/layout.js +23 -0
- package/esm/src/templates/app/app/[lang]/(__appName__)/(user)/self/page.js +40 -0
- package/esm/src/templates/app/app/[lang]/(__appName__)/layout.js +34 -0
- package/esm/src/templates/app/app/[lang]/(__appName__)/styles.css.template +19 -0
- package/esm/src/templates/app/app/[lang]/admin/layout.js +34 -0
- package/esm/src/templates/app/app/[lang]/admin/page.js +43 -0
- package/esm/src/templates/app/app/csr.js +14 -0
- package/esm/src/templates/app/app/index.html.template +13 -0
- package/esm/src/templates/app/app/layout.js +18 -0
- package/esm/src/templates/app/capacitor.config.ts.template +8 -0
- package/esm/src/templates/app/env/env.client.debug.ts.template +7 -0
- package/esm/src/templates/app/env/env.client.develop.ts.template +7 -0
- package/esm/src/templates/app/env/env.client.local.ts.template +7 -0
- package/esm/src/templates/app/env/env.client.main.ts.template +7 -0
- package/esm/src/templates/app/env/env.client.testing.ts.template +7 -0
- package/esm/src/templates/app/env/env.server.debug.ts.template +15 -0
- package/esm/src/templates/app/env/env.server.develop.ts.template +15 -0
- package/esm/src/templates/app/env/env.server.local.ts.template +15 -0
- package/esm/src/templates/app/env/env.server.main.ts.template +15 -0
- package/esm/src/templates/app/env/env.server.testing.ts.template +7 -0
- package/esm/src/templates/app/lib/setting/Setting.Template.js +37 -0
- package/esm/src/templates/app/lib/setting/Setting.Unit.js +18 -0
- package/esm/src/templates/app/lib/setting/Setting.Util.js +14 -0
- package/esm/src/templates/app/lib/setting/Setting.View.js +31 -0
- package/esm/src/templates/app/lib/setting/Setting.Zone.js +60 -0
- package/esm/src/templates/app/lib/setting/index.js +41 -0
- package/esm/src/templates/app/lib/summary/Summary.Template.js +23 -0
- package/esm/src/templates/app/lib/summary/Summary.Unit.js +18 -0
- package/esm/src/templates/app/lib/summary/Summary.Util.js +13 -0
- package/esm/src/templates/app/lib/summary/Summary.View.js +31 -0
- package/esm/src/templates/app/lib/summary/Summary.Zone.js +42 -0
- package/esm/src/templates/app/lib/summary/index.js +47 -0
- package/esm/src/templates/app/lib/user/User.Template.js +45 -0
- package/esm/src/templates/app/lib/user/User.Unit.js +18 -0
- package/esm/src/templates/app/lib/user/User.Util.js +74 -0
- package/esm/src/templates/app/lib/user/User.View.js +46 -0
- package/esm/src/templates/app/lib/user/User.Zone.js +54 -0
- package/esm/src/templates/app/lib/user/index.js +41 -0
- package/esm/src/templates/app/main.js +2 -1
- package/esm/src/templates/app/page.test.ts.template +10 -0
- package/esm/src/templates/app/playwright.config.ts.template +6 -0
- package/esm/src/templates/app/postcss.config.js.template +10 -0
- 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 +70 -0
- package/esm/src/templates/app/public/manifest.json.template +67 -0
- package/esm/src/templates/app/tsconfig.json.template +22 -0
- package/esm/src/templates/app/tsconfig.spec.json.template +7 -0
- package/esm/src/templates/app/ui/Footer.js +47 -0
- package/esm/src/templates/app/ui/MainHeader.js +111 -0
- package/esm/src/templates/crudPages/[__model__Id]/edit/page.js +53 -0
- package/esm/src/templates/crudPages/[__model__Id]/page.js +63 -0
- package/esm/src/templates/crudPages/new/page.js +50 -0
- package/esm/src/templates/crudPages/page.js +51 -0
- package/esm/src/templates/libRoot/.gitignore.template +15 -0
- package/esm/src/templates/libRoot/env/env.server.example.ts.template +7 -0
- package/esm/src/templates/libRoot/env/env.server.testing.ts.template +7 -0
- package/esm/src/templates/libRoot/lib/setting/Setting.Template.js +37 -0
- package/esm/src/templates/libRoot/lib/setting/Setting.Unit.js +18 -0
- package/esm/src/templates/libRoot/lib/setting/Setting.Util.js +14 -0
- package/esm/src/templates/libRoot/lib/setting/Setting.View.js +31 -0
- package/esm/src/templates/libRoot/lib/setting/Setting.Zone.js +60 -0
- package/esm/src/templates/libRoot/lib/setting/index.js +41 -0
- package/esm/src/templates/libRoot/lib/summary/Summary.Template.js +23 -0
- package/esm/src/templates/libRoot/lib/summary/Summary.Unit.js +18 -0
- package/esm/src/templates/libRoot/lib/summary/Summary.Util.js +13 -0
- package/esm/src/templates/libRoot/lib/summary/Summary.View.js +31 -0
- package/esm/src/templates/libRoot/lib/summary/Summary.Zone.js +42 -0
- package/esm/src/templates/libRoot/lib/summary/index.js +47 -0
- package/esm/src/templates/libRoot/lib/user/User.Template.js +45 -0
- package/esm/src/templates/libRoot/lib/user/User.Unit.js +18 -0
- package/esm/src/templates/libRoot/lib/user/User.Util.js +74 -0
- package/esm/src/templates/libRoot/lib/user/User.View.js +46 -0
- package/esm/src/templates/libRoot/lib/user/User.Zone.js +54 -0
- package/esm/src/templates/libRoot/lib/user/index.js +41 -0
- package/esm/src/templates/libRoot/package.json.template +4 -0
- package/esm/src/templates/libRoot/tsconfig.json.template +13 -0
- package/esm/src/templates/libRoot/tsconfig.spec.json.template +7 -0
- package/esm/src/templates/localDev/docker-compose.yaml.template +36 -0
- package/esm/src/templates/module/__Model__.Template.js +34 -0
- package/esm/src/templates/module/__Model__.Unit.js +22 -0
- package/esm/src/templates/module/__Model__.Util.js +50 -0
- package/esm/src/templates/module/__Model__.View.js +28 -0
- package/esm/src/templates/module/__Model__.Zone.js +63 -0
- package/esm/src/templates/module/index.js +41 -0
- package/esm/src/templates/pkgRoot/tsconfig.json.template +15 -0
- package/esm/src/templates/workspaceRoot/.env.template +20 -0
- package/esm/src/templates/workspaceRoot/.gitignore.template +118 -0
- package/esm/src/templates/workspaceRoot/.prettierignore.template +10 -0
- package/esm/src/templates/workspaceRoot/.prettierrc.json.template +6 -0
- package/esm/src/templates/workspaceRoot/.swcrc.template +9 -0
- package/esm/src/templates/workspaceRoot/.vscode/settings.json.template +13 -0
- package/esm/src/templates/workspaceRoot/README.md.template +37 -0
- package/esm/src/templates/workspaceRoot/eslint.config.ts.template +3 -0
- package/esm/src/templates/workspaceRoot/package.json.template +43 -0
- package/esm/src/templates/workspaceRoot/tsconfig.json.template +29 -0
- package/package.json +1 -1
- package/src/application/application.command.d.ts +1 -0
- package/src/application/application.runner.d.ts +6 -1
- package/src/application/application.script.d.ts +3 -1
- package/src/guidelines/___library/sharedUiStructureDescription.en.md +0 -18
- package/src/templates/app/app/[lang]/(__appName__)/(public)/forgotpassword/page.d.ts +9 -0
- package/src/templates/app/app/[lang]/(__appName__)/(public)/page.d.ts +9 -0
- package/src/templates/app/app/[lang]/(__appName__)/(public)/privacy/page.d.ts +9 -0
- package/src/templates/app/app/[lang]/(__appName__)/(public)/signin/page.d.ts +9 -0
- package/src/templates/app/app/[lang]/(__appName__)/(public)/termsofservice/page.d.ts +10 -0
- package/src/templates/app/app/[lang]/(__appName__)/(public)/unknown/page.d.ts +9 -0
- package/src/templates/app/app/[lang]/(__appName__)/(user)/layout.d.ts +9 -0
- package/src/templates/app/app/[lang]/(__appName__)/(user)/self/page.d.ts +9 -0
- package/src/templates/app/app/[lang]/(__appName__)/layout.d.ts +9 -0
- package/src/templates/app/app/[lang]/admin/layout.d.ts +9 -0
- package/src/templates/app/app/[lang]/admin/page.d.ts +9 -0
- package/src/templates/app/app/csr.d.ts +9 -0
- package/src/templates/app/app/layout.d.ts +9 -0
- package/src/templates/app/lib/setting/Setting.Template.d.ts +9 -0
- package/src/templates/app/lib/setting/Setting.Unit.d.ts +9 -0
- package/src/templates/app/lib/setting/Setting.Util.d.ts +9 -0
- package/src/templates/app/lib/setting/Setting.View.d.ts +9 -0
- package/src/templates/app/lib/setting/Setting.Zone.d.ts +9 -0
- package/src/templates/app/lib/setting/index.d.ts +9 -0
- package/src/templates/app/lib/summary/Summary.Template.d.ts +9 -0
- package/src/templates/app/lib/summary/Summary.Unit.d.ts +9 -0
- package/src/templates/app/lib/summary/Summary.Util.d.ts +9 -0
- package/src/templates/app/lib/summary/Summary.View.d.ts +9 -0
- package/src/templates/app/lib/summary/Summary.Zone.d.ts +9 -0
- package/src/templates/app/lib/summary/index.d.ts +9 -0
- package/src/templates/app/lib/user/User.Template.d.ts +9 -0
- package/src/templates/app/lib/user/User.Unit.d.ts +9 -0
- package/src/templates/app/lib/user/User.Util.d.ts +9 -0
- package/src/templates/app/lib/user/User.View.d.ts +9 -0
- package/src/templates/app/lib/user/User.Zone.d.ts +9 -0
- package/src/templates/app/lib/user/index.d.ts +9 -0
- package/src/templates/app/ui/Footer.d.ts +9 -0
- package/src/templates/app/ui/MainHeader.d.ts +10 -0
- package/src/templates/crudPages/[__model__Id]/edit/page.d.ts +11 -0
- package/src/templates/crudPages/[__model__Id]/page.d.ts +11 -0
- package/src/templates/crudPages/new/page.d.ts +11 -0
- package/src/templates/crudPages/page.d.ts +11 -0
- package/src/templates/libRoot/lib/setting/Setting.Template.d.ts +9 -0
- package/src/templates/libRoot/lib/setting/Setting.Unit.d.ts +9 -0
- package/src/templates/libRoot/lib/setting/Setting.Util.d.ts +9 -0
- package/src/templates/libRoot/lib/setting/Setting.View.d.ts +9 -0
- package/src/templates/libRoot/lib/setting/Setting.Zone.d.ts +9 -0
- package/src/templates/libRoot/lib/setting/index.d.ts +9 -0
- package/src/templates/libRoot/lib/summary/Summary.Template.d.ts +9 -0
- package/src/templates/libRoot/lib/summary/Summary.Unit.d.ts +9 -0
- package/src/templates/libRoot/lib/summary/Summary.Util.d.ts +9 -0
- package/src/templates/libRoot/lib/summary/Summary.View.d.ts +9 -0
- package/src/templates/libRoot/lib/summary/Summary.Zone.d.ts +9 -0
- package/src/templates/libRoot/lib/summary/index.d.ts +9 -0
- package/src/templates/libRoot/lib/user/User.Template.d.ts +9 -0
- package/src/templates/libRoot/lib/user/User.Unit.d.ts +9 -0
- package/src/templates/libRoot/lib/user/User.Util.d.ts +9 -0
- package/src/templates/libRoot/lib/user/User.View.d.ts +9 -0
- package/src/templates/libRoot/lib/user/User.Zone.d.ts +9 -0
- package/src/templates/libRoot/lib/user/index.d.ts +9 -0
- package/src/templates/module/__Model__.Template.d.ts +11 -0
- package/src/templates/module/__Model__.Unit.d.ts +11 -0
- package/src/templates/module/__Model__.Util.d.ts +11 -0
- package/src/templates/module/__Model__.View.d.ts +11 -0
- package/src/templates/module/__Model__.Zone.d.ts +11 -0
- package/src/templates/module/index.d.ts +11 -0
package/cjs/index.js
CHANGED
|
@@ -3178,6 +3178,8 @@ ${fileCheck.lintResult.message}`
|
|
|
3178
3178
|
var esbuild = __toESM(require("esbuild"));
|
|
3179
3179
|
var import_esbuild_plugin_d = require("esbuild-plugin-d.ts");
|
|
3180
3180
|
var import_fs9 = __toESM(require("fs"));
|
|
3181
|
+
var assetExtensions = [".css", ".md", ".js", ".png", ".ico", ".svg", ".json", ".template"];
|
|
3182
|
+
var assetLoader = Object.fromEntries(assetExtensions.map((ext) => [ext, "copy"]));
|
|
3181
3183
|
var Builder = class {
|
|
3182
3184
|
#executor;
|
|
3183
3185
|
#distExecutor;
|
|
@@ -3202,7 +3204,7 @@ var Builder = class {
|
|
|
3202
3204
|
format,
|
|
3203
3205
|
outdir: `${this.#distExecutor.cwdPath}/${format}`,
|
|
3204
3206
|
logLevel: "error",
|
|
3205
|
-
loader:
|
|
3207
|
+
loader: assetLoader
|
|
3206
3208
|
};
|
|
3207
3209
|
}
|
|
3208
3210
|
#getAssetBuildOptions() {
|
|
@@ -3216,7 +3218,7 @@ var Builder = class {
|
|
|
3216
3218
|
],
|
|
3217
3219
|
outdir: this.#distExecutor.cwdPath,
|
|
3218
3220
|
logLevel: "error",
|
|
3219
|
-
loader:
|
|
3221
|
+
loader: assetLoader
|
|
3220
3222
|
};
|
|
3221
3223
|
}
|
|
3222
3224
|
async build(options = {}) {
|
|
@@ -3477,6 +3479,34 @@ var ApplicationRunner = class {
|
|
|
3477
3479
|
await app.syncAssets(scanResult.akanConfig.libs);
|
|
3478
3480
|
return scanResult;
|
|
3479
3481
|
}
|
|
3482
|
+
async getScriptFilename(app) {
|
|
3483
|
+
if (!app.exists("scripts")) {
|
|
3484
|
+
app.mkdir("scripts");
|
|
3485
|
+
throw new Error(`No script files found. make a script file in apps/${app.name}/scripts folder`);
|
|
3486
|
+
}
|
|
3487
|
+
const scriptFiles = (await app.readdir("scripts")).filter((file) => file.endsWith(".ts"));
|
|
3488
|
+
const scriptFile = await (0, import_prompts6.select)({
|
|
3489
|
+
message: "Select script to run",
|
|
3490
|
+
choices: scriptFiles.map((file) => ({ name: file, value: file.replace(".ts", "") }))
|
|
3491
|
+
});
|
|
3492
|
+
return scriptFile;
|
|
3493
|
+
}
|
|
3494
|
+
async runScript(app, filename) {
|
|
3495
|
+
const buildResult = await esbuild2.build({
|
|
3496
|
+
write: true,
|
|
3497
|
+
entryPoints: [`${app.cwdPath}/scripts/${filename}.ts`],
|
|
3498
|
+
bundle: true,
|
|
3499
|
+
format: "cjs",
|
|
3500
|
+
packages: "external",
|
|
3501
|
+
platform: "node",
|
|
3502
|
+
outdir: `${app.cwdPath}/scripts`,
|
|
3503
|
+
logLevel: "warning"
|
|
3504
|
+
});
|
|
3505
|
+
await app.spawn("node", [`scripts/${filename}.js`], {
|
|
3506
|
+
stdio: "inherit",
|
|
3507
|
+
env: this.#getEnv(app)
|
|
3508
|
+
});
|
|
3509
|
+
}
|
|
3480
3510
|
#getEnv(app, env = {}) {
|
|
3481
3511
|
const rootEnv = import_dotenv3.default.parse(app.workspace.readFile(".env"));
|
|
3482
3512
|
return {
|
|
@@ -3544,10 +3574,10 @@ var ApplicationRunner = class {
|
|
|
3544
3574
|
setTimeout(() => (0, import_open.default)("http://localhost:8080/backend/graphql"), 3e3);
|
|
3545
3575
|
await app.dist.spawn("node", ["--watch", "backend/main.js"], { env, stdio: "inherit" });
|
|
3546
3576
|
}
|
|
3547
|
-
async buildFrontend(app) {
|
|
3577
|
+
async buildFrontend(app, { spawnOptions } = {}) {
|
|
3548
3578
|
const { env } = await this.#prepareCommand(app, "build", "frontend");
|
|
3549
3579
|
const akanConfig = await app.getConfig("build");
|
|
3550
|
-
await app.spawn("npx", ["next", "build", "--no-lint"], { env });
|
|
3580
|
+
await app.spawn("npx", ["next", "build", "--no-lint"], { env, ...spawnOptions });
|
|
3551
3581
|
const buildResult = await esbuild2.build({
|
|
3552
3582
|
entryPoints: [`${app.cwdPath}/next.config.ts`],
|
|
3553
3583
|
outdir: `${app.dist.cwdPath}/frontend`,
|
|
@@ -3955,6 +3985,11 @@ var ApplicationScript = class {
|
|
|
3955
3985
|
spinner.succeed("Application scanned");
|
|
3956
3986
|
return scanResult;
|
|
3957
3987
|
}
|
|
3988
|
+
async script(app, filename) {
|
|
3989
|
+
const scriptFilename = filename ?? await this.#runner.getScriptFilename(app);
|
|
3990
|
+
await this.syncApplication(app);
|
|
3991
|
+
await this.#runner.runScript(app, scriptFilename);
|
|
3992
|
+
}
|
|
3958
3993
|
async build(app) {
|
|
3959
3994
|
await this.syncApplication(app);
|
|
3960
3995
|
await Promise.all([this.buildBackend(app, { sync: false }), this.buildFrontend(app, { sync: false })]);
|
|
@@ -3989,12 +4024,16 @@ var ApplicationScript = class {
|
|
|
3989
4024
|
}
|
|
3990
4025
|
});
|
|
3991
4026
|
}
|
|
3992
|
-
async buildFrontend(app, { sync = true } = {}) {
|
|
4027
|
+
async buildFrontend(app, { sync = true, standalone = false } = {}) {
|
|
3993
4028
|
if (sync)
|
|
3994
4029
|
await this.syncApplication(app);
|
|
3995
|
-
|
|
3996
|
-
|
|
3997
|
-
|
|
4030
|
+
if (standalone)
|
|
4031
|
+
await this.#runner.buildFrontend(app, { spawnOptions: { stdio: "inherit" } });
|
|
4032
|
+
else {
|
|
4033
|
+
const spinner = app.spinning("Building frontend...");
|
|
4034
|
+
await this.#runner.buildFrontend(app);
|
|
4035
|
+
spinner.succeed(`Frontend built in dist/apps/${app.name}/frontend`);
|
|
4036
|
+
}
|
|
3998
4037
|
}
|
|
3999
4038
|
async startFrontend(app, { open: open2 = false, turbo = false, sync = true } = {}) {
|
|
4000
4039
|
if (sync)
|
|
@@ -4121,6 +4160,9 @@ var ApplicationCommand = class {
|
|
|
4121
4160
|
async syncApplication(app) {
|
|
4122
4161
|
await this.applicationScript.syncApplication(app);
|
|
4123
4162
|
}
|
|
4163
|
+
async script(app, filename) {
|
|
4164
|
+
await this.applicationScript.script(app, filename);
|
|
4165
|
+
}
|
|
4124
4166
|
async build(app) {
|
|
4125
4167
|
await this.applicationScript.build(app);
|
|
4126
4168
|
}
|
|
@@ -4128,7 +4170,7 @@ var ApplicationCommand = class {
|
|
|
4128
4170
|
await this.applicationScript.buildBackend(app);
|
|
4129
4171
|
}
|
|
4130
4172
|
async buildFrontend(app) {
|
|
4131
|
-
await this.applicationScript.buildFrontend(app);
|
|
4173
|
+
await this.applicationScript.buildFrontend(app, { standalone: true });
|
|
4132
4174
|
}
|
|
4133
4175
|
async buildCsr(app) {
|
|
4134
4176
|
await this.applicationScript.buildCsr(app);
|
|
@@ -4202,6 +4244,11 @@ __decorateClass([
|
|
|
4202
4244
|
Target.Public(),
|
|
4203
4245
|
__decorateParam(0, App())
|
|
4204
4246
|
], ApplicationCommand.prototype, "syncApplication", 1);
|
|
4247
|
+
__decorateClass([
|
|
4248
|
+
Target.Public(),
|
|
4249
|
+
__decorateParam(0, App()),
|
|
4250
|
+
__decorateParam(1, Argument("filename", { desc: "name of script", nullable: true }))
|
|
4251
|
+
], ApplicationCommand.prototype, "script", 1);
|
|
4205
4252
|
__decorateClass([
|
|
4206
4253
|
Target.Public({ short: true }),
|
|
4207
4254
|
__decorateParam(0, App())
|
|
@@ -4352,7 +4399,7 @@ var PackageRunner = class {
|
|
|
4352
4399
|
if (pkg.name === "@akanjs/cli")
|
|
4353
4400
|
await builder.build({
|
|
4354
4401
|
bundle: true,
|
|
4355
|
-
additionalEntryPoints: [`${pkg.cwdPath}/src/templates
|
|
4402
|
+
additionalEntryPoints: [`${pkg.cwdPath}/src/templates/**/*`, `${pkg.cwdPath}/src/guidelines/**/*`]
|
|
4356
4403
|
});
|
|
4357
4404
|
else
|
|
4358
4405
|
await builder.build();
|
|
@@ -5470,7 +5517,7 @@ var WorkspaceCommand = class {
|
|
|
5470
5517
|
__decorateClass([
|
|
5471
5518
|
Target.Public(),
|
|
5472
5519
|
__decorateParam(0, Argument("workspaceName", { desc: "what is the name of your organization?" })),
|
|
5473
|
-
__decorateParam(1, Option("app", { desc: "
|
|
5520
|
+
__decorateParam(1, Option("app", { desc: "what is the codename of your first application? (e.g. myapp)" })),
|
|
5474
5521
|
__decorateParam(2, Option("dir", { desc: "directory of workspace", default: process.env.USE_AKANJS_PKGS === "true" ? "local" : "." }))
|
|
5475
5522
|
], WorkspaceCommand.prototype, "createWorkspace", 1);
|
|
5476
5523
|
__decorateClass([
|
|
@@ -559,24 +559,6 @@ Key features:
|
|
|
559
559
|
- Simultaneous Korean/English address provision
|
|
560
560
|
- Modal address search
|
|
561
561
|
|
|
562
|
-
### 26. Field.KoreanCityDistrict
|
|
563
|
-
|
|
564
|
-
\`\`\`typescript
|
|
565
|
-
interface KoreanCityDistrictProps {
|
|
566
|
-
city: string | null;
|
|
567
|
-
onChangeCity: (city: string | null) => void;
|
|
568
|
-
district: string | null;
|
|
569
|
-
onChangeDistrict: (district: string | null) => void;
|
|
570
|
-
disabled?: boolean;
|
|
571
|
-
}
|
|
572
|
-
\`\`\`
|
|
573
|
-
Key features:
|
|
574
|
-
|
|
575
|
-
- Hardcoded Korean region data
|
|
576
|
-
- Two-level selection (city/province → district/county)
|
|
577
|
-
- Includes detailed regions: 25 districts in Seoul, 16 in Busan, etc.
|
|
578
|
-
- Linked selection (district activates after city selection)
|
|
579
|
-
|
|
580
562
|
## Common Patterns and Features
|
|
581
563
|
|
|
582
564
|
### 1. Caching System
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Component Rule",
|
|
3
|
+
"description": "Comprehensive guidelines for creating React components in the Akan.js framework",
|
|
4
|
+
"scans": [
|
|
5
|
+
{
|
|
6
|
+
"type": "source",
|
|
7
|
+
"description": "Cookie management utilities for web and mobile",
|
|
8
|
+
"path": "pkgs/@akanjs/client/src/cookie.ts"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"type": "source",
|
|
12
|
+
"description": "Storage utilities for persistent data",
|
|
13
|
+
"path": "pkgs/@akanjs/client/src/storage.ts"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"type": "source",
|
|
17
|
+
"description": "Device capabilities and platform detection",
|
|
18
|
+
"path": "pkgs/@akanjs/client/src/device.ts"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"type": "source",
|
|
22
|
+
"description": "Navigation and routing utilities",
|
|
23
|
+
"path": "pkgs/@akanjs/client/src/router.ts"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"type": "source",
|
|
27
|
+
"description": "Type utilities including clsx for class management",
|
|
28
|
+
"path": "pkgs/@akanjs/client/src/types.ts"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"type": "example",
|
|
32
|
+
"description": "Unit components (list items/cards)",
|
|
33
|
+
"path": "{apps,libs}/*/lib/*/*.Unit.tsx",
|
|
34
|
+
"sample": 3
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"type": "example",
|
|
38
|
+
"description": "View components (detailed displays)",
|
|
39
|
+
"path": "{apps,libs}/*/lib/*/*.View.tsx",
|
|
40
|
+
"sample": 3
|
|
41
|
+
},
|
|
42
|
+
{
|
|
43
|
+
"type": "example",
|
|
44
|
+
"description": "Template components (forms/edit screens)",
|
|
45
|
+
"path": "{apps,libs}/*/lib/*/*.Template.tsx",
|
|
46
|
+
"sample": 3
|
|
47
|
+
},
|
|
48
|
+
{
|
|
49
|
+
"type": "example",
|
|
50
|
+
"description": "Utility components (toolbars/helpers)",
|
|
51
|
+
"path": "{apps,libs}/*/lib/*/*.Util.tsx",
|
|
52
|
+
"sample": 3
|
|
53
|
+
},
|
|
54
|
+
{
|
|
55
|
+
"type": "example",
|
|
56
|
+
"description": "Zone components (data containers)",
|
|
57
|
+
"path": "{apps,libs}/*/lib/*/*.Zone.tsx",
|
|
58
|
+
"sample": 3
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"type": "example",
|
|
62
|
+
"description": "Reusable UI components",
|
|
63
|
+
"path": "{libs,apps}/*/ui/**/*.tsx",
|
|
64
|
+
"sample": 5
|
|
65
|
+
},
|
|
66
|
+
{
|
|
67
|
+
"type": "usage",
|
|
68
|
+
"description": "Component composition patterns",
|
|
69
|
+
"path": "{apps,libs}/*/lib/*/*.Zone.tsx",
|
|
70
|
+
"filterText": "renderItem",
|
|
71
|
+
"sample": 3
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"type": "usage",
|
|
75
|
+
"description": "Form state management with stores",
|
|
76
|
+
"path": "{apps,libs}/*/lib/*/*.Template.tsx",
|
|
77
|
+
"filterText": "st.use",
|
|
78
|
+
"sample": 3
|
|
79
|
+
},
|
|
80
|
+
{
|
|
81
|
+
"type": "usage",
|
|
82
|
+
"description": "Conditional rendering with TailwindCSS",
|
|
83
|
+
"path": "{apps,libs}/*/lib/*/*.tsx",
|
|
84
|
+
"filterText": "clsx",
|
|
85
|
+
"sample": 3
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"type": "usage",
|
|
89
|
+
"description": "Data fetching with Load components",
|
|
90
|
+
"path": "{apps,libs}/*/lib/*/*.Zone.tsx",
|
|
91
|
+
"filterText": "<Load.",
|
|
92
|
+
"sample": 3
|
|
93
|
+
},
|
|
94
|
+
{
|
|
95
|
+
"type": "usage",
|
|
96
|
+
"description": "Responsive design patterns",
|
|
97
|
+
"path": "{apps,libs}/*/lib/*/*.tsx",
|
|
98
|
+
"filterText": "md:",
|
|
99
|
+
"sample": 3
|
|
100
|
+
}
|
|
101
|
+
],
|
|
102
|
+
"update": {
|
|
103
|
+
"filePath": "./componentRule.instruction.md",
|
|
104
|
+
"contents": [
|
|
105
|
+
"Component Architecture - Core structure and organization",
|
|
106
|
+
"Component Types - Purpose and responsibility of each component type",
|
|
107
|
+
"File Naming Conventions - Standardized naming patterns",
|
|
108
|
+
"Utility Functions - Core framework utilities",
|
|
109
|
+
"Best Practices - Guidelines for components",
|
|
110
|
+
"State Management - Integration with Zustand store and signals",
|
|
111
|
+
"Responsive Design - Mobile-first approach",
|
|
112
|
+
"Accessibility - Core principles",
|
|
113
|
+
"Performance Optimization - Memoization and lazy loading",
|
|
114
|
+
"Data Fetching - Using Load components",
|
|
115
|
+
"Composition Patterns - Component rendering methods",
|
|
116
|
+
"Complete Examples - Full implementation examples"
|
|
117
|
+
],
|
|
118
|
+
"rules": [
|
|
119
|
+
"Component types (.Unit, .View, .Template, .Util, .Zone) should follow standard patterns and responsibilities",
|
|
120
|
+
"Every component file should maintain a consistent organization pattern with logical sections",
|
|
121
|
+
"Responsive design should use Tailwind's mobile-first approach with sm:, md:, lg: prefixes",
|
|
122
|
+
"Form components should use the framework state management pattern with st.use and st.do",
|
|
123
|
+
"Data containers should follow the Load.Units/Load.View pattern for consistent data fetching",
|
|
124
|
+
"Component files should export named components rather than default exports",
|
|
125
|
+
"Props should use explicit TypeScript interfaces with proper JSDoc comments where helpful",
|
|
126
|
+
"Separate business logic from presentation components",
|
|
127
|
+
"Follow Akan.js project structure and module organization"
|
|
128
|
+
]
|
|
129
|
+
},
|
|
130
|
+
"page": "/[lang]/akanjs/(docs)/docs/codebase/component/page.tsx"
|
|
131
|
+
}
|
|
@@ -0,0 +1,93 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "CSS Rule with TailwindCSS and DaisyUI",
|
|
3
|
+
"description": "Comprehensive guidelines for creating CSS with TailwindCSS and DaisyUI in the Akan.js framework",
|
|
4
|
+
"scans": [
|
|
5
|
+
{
|
|
6
|
+
"type": "source",
|
|
7
|
+
"description": "clsx utility for class name management",
|
|
8
|
+
"path": "pkgs/@akanjs/client/src/types.ts"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"type": "example",
|
|
12
|
+
"description": "Unit components (list items/cards)",
|
|
13
|
+
"path": "{apps,libs}/*/lib/*/*.Unit.tsx",
|
|
14
|
+
"sample": 3
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
"type": "example",
|
|
18
|
+
"description": "View components (detailed displays)",
|
|
19
|
+
"path": "{apps,libs}/*/lib/*/*.View.tsx",
|
|
20
|
+
"sample": 3
|
|
21
|
+
},
|
|
22
|
+
{
|
|
23
|
+
"type": "example",
|
|
24
|
+
"description": "Edit components (forms for data creation/editing)",
|
|
25
|
+
"path": "{apps,libs}/*/lib/*/*.Edit.tsx",
|
|
26
|
+
"sample": 2
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"type": "example",
|
|
30
|
+
"description": "Util components (special function components)",
|
|
31
|
+
"path": "{apps,libs}/*/lib/*/*.Util.tsx",
|
|
32
|
+
"sample": 2
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"type": "example",
|
|
36
|
+
"description": "Zone components (container components)",
|
|
37
|
+
"path": "{apps,libs}/*/lib/*/*.Zone.tsx",
|
|
38
|
+
"sample": 2
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"type": "example",
|
|
42
|
+
"description": "Reusable UI components",
|
|
43
|
+
"path": "{libs,apps}/*/ui/**/*.tsx",
|
|
44
|
+
"sample": 3
|
|
45
|
+
},
|
|
46
|
+
{
|
|
47
|
+
"type": "usage",
|
|
48
|
+
"description": "Conditional rendering with clsx",
|
|
49
|
+
"path": "{apps,libs}/*/lib/*/*.tsx",
|
|
50
|
+
"filterText": "clsx",
|
|
51
|
+
"sample": 3
|
|
52
|
+
},
|
|
53
|
+
{
|
|
54
|
+
"type": "usage",
|
|
55
|
+
"description": "DaisyUI color usage",
|
|
56
|
+
"path": "{apps,libs}/*/lib/*/*.tsx",
|
|
57
|
+
"filterText": "bg-primary|bg-secondary|bg-accent|bg-info|bg-success|bg-warning|bg-error",
|
|
58
|
+
"sample": 3
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"type": "usage",
|
|
62
|
+
"description": "Responsive design patterns",
|
|
63
|
+
"path": "{apps,libs}/*/lib/*/*.tsx",
|
|
64
|
+
"filterText": "sm:|md:|lg:|xl:|2xl:",
|
|
65
|
+
"sample": 3
|
|
66
|
+
}
|
|
67
|
+
],
|
|
68
|
+
"update": {
|
|
69
|
+
"filePath": "./cssRule.instruction.md",
|
|
70
|
+
"contents": [
|
|
71
|
+
"Core Principles - Fundamental styling concepts",
|
|
72
|
+
"Class Management with clsx - How to handle conditional class names",
|
|
73
|
+
"Component Structure Best Practices - Consistent component styling",
|
|
74
|
+
"Component Types in Akan.js - Styling patterns for different component types",
|
|
75
|
+
"Common UI Patterns - Reusable design patterns",
|
|
76
|
+
"Best Practices - Guidelines for maintainable CSS",
|
|
77
|
+
"Common Mistakes to Avoid - What not to do",
|
|
78
|
+
"Troubleshooting - Fixing common issues"
|
|
79
|
+
],
|
|
80
|
+
"rules": [
|
|
81
|
+
"clsx should be used for conditional class names and className composition",
|
|
82
|
+
"Every component should accept and properly handle className prop for composition",
|
|
83
|
+
"Color system of DaisyUI should be used for colors (primary, secondary, accent, etc.) - hardcoded colors should be avoided",
|
|
84
|
+
"Components should follow responsive design principles with mobile-first approach",
|
|
85
|
+
"Use Tailwind's spacing scale consistently for margins and padding",
|
|
86
|
+
"Group related classes together for better readability",
|
|
87
|
+
"DaisyUI components should be used for common UI elements when available",
|
|
88
|
+
"Apply proper focus, hover, and active states for interactive elements",
|
|
89
|
+
"Respect the naming conventions for component types (Unit, View, Edit, Util, Zone)"
|
|
90
|
+
]
|
|
91
|
+
},
|
|
92
|
+
"page": "/[lang]/akanjs/(docs)/docs/codebase/css/page.tsx"
|
|
93
|
+
}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Database Module",
|
|
3
|
+
"description": "Structure of database module",
|
|
4
|
+
"scans": [
|
|
5
|
+
{
|
|
6
|
+
"type": "source",
|
|
7
|
+
"description": "core database module source code",
|
|
8
|
+
"path": "pkgs/@akanjs/server/src/module.ts"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"type": "source",
|
|
12
|
+
"description": "how to boot modules in Nest.js server",
|
|
13
|
+
"path": "pkgs/@akanjs/server/src/boot.ts"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"type": "source",
|
|
17
|
+
"description": "constant model decorators, database schema decorators, signal decorators reference",
|
|
18
|
+
"path": "pkgs/@akanjs/constant/src/decorator.ts"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"type": "example",
|
|
22
|
+
"description": "example database module of admin",
|
|
23
|
+
"path": "libs/shared/lib/admin/*"
|
|
24
|
+
}
|
|
25
|
+
],
|
|
26
|
+
"update": {
|
|
27
|
+
"filePath": "./databaseModule.instruction.md",
|
|
28
|
+
"contents": [
|
|
29
|
+
"Purpose of database modules in Akan.js",
|
|
30
|
+
"File structure and location conventions",
|
|
31
|
+
"How to create database modules",
|
|
32
|
+
"How to use database modules in Nest.js server",
|
|
33
|
+
"How to use components, stores, and signals in client side",
|
|
34
|
+
"Real-time features with websockets and subscriptions",
|
|
35
|
+
"Best practices for data modeling and schema design",
|
|
36
|
+
"Authentication and authorization patterns",
|
|
37
|
+
"Performance optimization techniques",
|
|
38
|
+
"Error handling strategies"
|
|
39
|
+
],
|
|
40
|
+
"rules": [
|
|
41
|
+
"Database module is a domain specific module to manage business logic of database",
|
|
42
|
+
"Follow consistent naming conventions with PascalCase for classes and camelCase for files",
|
|
43
|
+
"Keep business logic in service files, not in signals or documents",
|
|
44
|
+
"Use field validation in constant models to ensure data integrity",
|
|
45
|
+
"Create proper indexes in middleware for performance optimization",
|
|
46
|
+
"Apply appropriate authorization guards to protect sensitive operations",
|
|
47
|
+
"Use dictionary files for all UI text to support internationalization"
|
|
48
|
+
]
|
|
49
|
+
},
|
|
50
|
+
"page": "/[lang]/akanjs/(docs)/docs/module/overview/page.tsx"
|
|
51
|
+
}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "How to create doc page",
|
|
3
|
+
"description": "How to create documentation page of Akan.js framework",
|
|
4
|
+
"scans": [
|
|
5
|
+
{
|
|
6
|
+
"type": "example",
|
|
7
|
+
"description": "Example of a system architecture documentation page",
|
|
8
|
+
"path": "apps/angelo/app/[lang]/akanjs/(docs)/docs/systemArch/frontend/page.tsx"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"type": "example",
|
|
12
|
+
"description": "Example of a module documentation page with API reference",
|
|
13
|
+
"path": "apps/angelo/app/[lang]/akanjs/(docs)/docs/module/signal/page.tsx"
|
|
14
|
+
},
|
|
15
|
+
{
|
|
16
|
+
"type": "source",
|
|
17
|
+
"description": "Documentation utility components",
|
|
18
|
+
"path": "apps/angelo/ui/Docs/index.ts"
|
|
19
|
+
},
|
|
20
|
+
{
|
|
21
|
+
"type": "source",
|
|
22
|
+
"description": "Code snippet component for syntax highlighting",
|
|
23
|
+
"path": "apps/angelo/ui/Docs/CodeSnippet.tsx"
|
|
24
|
+
},
|
|
25
|
+
{
|
|
26
|
+
"type": "source",
|
|
27
|
+
"description": "Title component for main headings",
|
|
28
|
+
"path": "apps/angelo/ui/Docs/Title.tsx"
|
|
29
|
+
},
|
|
30
|
+
{
|
|
31
|
+
"type": "source",
|
|
32
|
+
"description": "Description component for explanatory text",
|
|
33
|
+
"path": "apps/angelo/ui/Docs/Description.tsx"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"type": "source",
|
|
37
|
+
"description": "Option table component for displaying parameters",
|
|
38
|
+
"path": "apps/angelo/ui/Docs/OptionTable.tsx"
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
"type": "source",
|
|
42
|
+
"description": "Introduction table component for listing features",
|
|
43
|
+
"path": "apps/angelo/ui/Docs/IntroTable.tsx"
|
|
44
|
+
}
|
|
45
|
+
],
|
|
46
|
+
"update": {
|
|
47
|
+
"filePath": "./docPageRule.instruction.md",
|
|
48
|
+
"contents": [
|
|
49
|
+
"Purpose of doc page in Akan.js",
|
|
50
|
+
"How to create doc page",
|
|
51
|
+
"Page organization and structure",
|
|
52
|
+
"Utility components",
|
|
53
|
+
"Best practices for documentation",
|
|
54
|
+
"Internationalization guidelines",
|
|
55
|
+
"Code example guidelines",
|
|
56
|
+
"Complete example implementation",
|
|
57
|
+
"Troubleshooting common issues"
|
|
58
|
+
],
|
|
59
|
+
"rules": [
|
|
60
|
+
"Docs.Layout is already set on the top of layout.tsx file in the root of the project, so you don't need to use it in your page",
|
|
61
|
+
"Docs utility should be used with `Docs` prefix, like <Docs.Title>, do not use object destructuring",
|
|
62
|
+
"Always wrap user-facing text in l.trans() with at least English and Korean translations",
|
|
63
|
+
"Use a logical hierarchy of headings (Title → SubTitle → SubSubTitle)",
|
|
64
|
+
"Include a divider (<div className=\"divider\"></div>) between major sections",
|
|
65
|
+
"For long pages, use anchor links with hidden divs for navigation",
|
|
66
|
+
"Code examples should be realistic and include proper comments",
|
|
67
|
+
"Tables should use the appropriate type (OptionTable for parameters, IntroTable for features)",
|
|
68
|
+
"Always specify the correct language for CodeSnippet components"
|
|
69
|
+
]
|
|
70
|
+
},
|
|
71
|
+
"page": "/[lang]/akanjs/(docs)/docs/[category]/[pageName]/page"
|
|
72
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
{
|
|
2
|
+
"title": "Enum Constant",
|
|
3
|
+
"description": "how to generate a enumOf usage in constant.ts file",
|
|
4
|
+
"scans": [
|
|
5
|
+
{
|
|
6
|
+
"type": "source",
|
|
7
|
+
"description": "base enum library source code",
|
|
8
|
+
"path": "pkgs/@akanjs/base/src/base.ts"
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"type": "example",
|
|
12
|
+
"description": "enumOf usage in constant.ts files",
|
|
13
|
+
"path": "{apps,libs}/*/lib/*/*.constant.ts",
|
|
14
|
+
"filterText": "enumOf",
|
|
15
|
+
"sample": 10
|
|
16
|
+
}
|
|
17
|
+
],
|
|
18
|
+
"update": {
|
|
19
|
+
"filePath": "./enumConstant.instruction.md",
|
|
20
|
+
"contents": ["Structure of enumOf usage in constant.ts file", "How to add enumOf usage in constant.ts file"],
|
|
21
|
+
"rules": []
|
|
22
|
+
},
|
|
23
|
+
"page": "/[lang]/akanjs/(docs)/docs/codebase/enum/page.tsx"
|
|
24
|
+
}
|