@idealyst/cli 1.2.0 → 1.2.3
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/dist/commands/add.js +233 -0
- package/dist/commands/add.js.map +1 -0
- package/dist/commands/index.js +13 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/commands/info.js +193 -0
- package/dist/commands/info.js.map +1 -0
- package/dist/commands/init.js +155 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/constants.js +125 -0
- package/dist/constants.js.map +1 -0
- package/dist/generators/core/index.js +23 -0
- package/dist/generators/core/index.js.map +1 -0
- package/dist/generators/core/mobile.js +251 -0
- package/dist/generators/core/mobile.js.map +1 -0
- package/dist/generators/core/shared.js +474 -0
- package/dist/generators/core/shared.js.map +1 -0
- package/dist/generators/core/web.js +330 -0
- package/dist/generators/core/web.js.map +1 -0
- package/dist/generators/extensions/api.js +223 -0
- package/dist/generators/extensions/api.js.map +1 -0
- package/dist/generators/extensions/devcontainer.js +575 -0
- package/dist/generators/extensions/devcontainer.js.map +1 -0
- package/dist/generators/extensions/graphql.js +202 -0
- package/dist/generators/extensions/graphql.js.map +1 -0
- package/dist/generators/extensions/index.js +17 -0
- package/dist/generators/extensions/index.js.map +1 -0
- package/dist/generators/extensions/prisma.js +249 -0
- package/dist/generators/extensions/prisma.js.map +1 -0
- package/dist/generators/extensions/trpc.js +258 -0
- package/dist/generators/extensions/trpc.js.map +1 -0
- package/dist/generators/index.js +122 -4
- package/dist/generators/index.js.map +1 -1
- package/dist/generators/reactNative.js +253 -0
- package/dist/generators/reactNative.js.map +1 -0
- package/dist/generators/workspace.js +303 -0
- package/dist/generators/workspace.js.map +1 -0
- package/dist/identifiers/android.js +75 -0
- package/dist/identifiers/android.js.map +1 -0
- package/dist/identifiers/index.js +35 -0
- package/dist/identifiers/index.js.map +1 -0
- package/dist/identifiers/ios.js +65 -0
- package/dist/identifiers/ios.js.map +1 -0
- package/dist/index.js +41 -319
- package/dist/index.js.map +1 -1
- package/dist/templates/copier.js +135 -0
- package/dist/templates/copier.js.map +1 -0
- package/dist/templates/index.js +23 -0
- package/dist/templates/index.js.map +1 -0
- package/dist/templates/merger.js +113 -0
- package/dist/templates/merger.js.map +1 -0
- package/dist/templates/processor.js +142 -0
- package/dist/templates/processor.js.map +1 -0
- package/dist/types/commands/add.d.ts +14 -0
- package/dist/types/commands/index.d.ts +6 -0
- package/dist/types/commands/info.d.ts +10 -0
- package/dist/types/commands/init.d.ts +19 -0
- package/dist/types/constants.d.ts +82 -0
- package/dist/types/generators/core/index.d.ts +6 -0
- package/dist/types/generators/core/mobile.d.ts +14 -0
- package/dist/types/generators/core/shared.d.ts +8 -0
- package/dist/types/generators/core/web.d.ts +8 -0
- package/dist/types/generators/extensions/api.d.ts +8 -0
- package/dist/types/generators/extensions/devcontainer.d.ts +15 -0
- package/dist/types/generators/extensions/graphql.d.ts +8 -0
- package/dist/types/generators/extensions/index.d.ts +8 -0
- package/dist/types/generators/extensions/prisma.d.ts +8 -0
- package/dist/types/generators/extensions/trpc.d.ts +9 -0
- package/dist/types/generators/index.d.ts +11 -3
- package/dist/types/generators/reactNative.d.ts +19 -0
- package/dist/types/generators/workspace.d.ts +8 -0
- package/dist/types/identifiers/android.d.ts +26 -0
- package/dist/types/identifiers/index.d.ts +26 -0
- package/dist/types/identifiers/ios.d.ts +21 -0
- package/dist/types/index.d.ts +3 -0
- package/dist/types/templates/copier.d.ts +24 -0
- package/dist/types/templates/index.d.ts +6 -0
- package/dist/types/templates/merger.d.ts +43 -0
- package/dist/types/templates/processor.d.ts +39 -0
- package/dist/types/types.d.ts +184 -5
- package/dist/types/utils/filesystem.d.ts +56 -0
- package/dist/types/utils/index.d.ts +7 -0
- package/dist/types/utils/logger.d.ts +64 -0
- package/dist/types/utils/shell.d.ts +35 -0
- package/dist/types/utils/validation.d.ts +32 -0
- package/dist/types/wizard/index.d.ts +20 -0
- package/dist/types/wizard/steps/apiExtension.d.ts +5 -0
- package/dist/types/wizard/steps/appDisplayName.d.ts +5 -0
- package/dist/types/wizard/steps/devcontainerExtension.d.ts +5 -0
- package/dist/types/wizard/steps/graphqlExtension.d.ts +5 -0
- package/dist/types/wizard/steps/index.d.ts +12 -0
- package/dist/types/wizard/steps/orgDomain.d.ts +5 -0
- package/dist/types/wizard/steps/prismaExtension.d.ts +5 -0
- package/dist/types/wizard/steps/projectName.d.ts +5 -0
- package/dist/types/wizard/steps/summary.d.ts +5 -0
- package/dist/types/wizard/steps/trpcExtension.d.ts +5 -0
- package/dist/types/wizard/validators.d.ts +17 -0
- package/dist/types.js +74 -0
- package/dist/types.js.map +1 -1
- package/dist/utils/filesystem.js +173 -0
- package/dist/utils/filesystem.js.map +1 -0
- package/dist/utils/index.js +24 -0
- package/dist/utils/index.js.map +1 -0
- package/dist/utils/logger.js +106 -0
- package/dist/utils/logger.js.map +1 -0
- package/dist/utils/shell.js +113 -0
- package/dist/utils/shell.js.map +1 -0
- package/dist/utils/validation.js +196 -0
- package/dist/utils/validation.js.map +1 -0
- package/dist/wizard/index.js +177 -0
- package/dist/wizard/index.js.map +1 -0
- package/dist/wizard/steps/apiExtension.js +33 -0
- package/dist/wizard/steps/apiExtension.js.map +1 -0
- package/dist/wizard/steps/appDisplayName.js +53 -0
- package/dist/wizard/steps/appDisplayName.js.map +1 -0
- package/dist/wizard/steps/devcontainerExtension.js +131 -0
- package/dist/wizard/steps/devcontainerExtension.js.map +1 -0
- package/dist/wizard/steps/graphqlExtension.js +37 -0
- package/dist/wizard/steps/graphqlExtension.js.map +1 -0
- package/dist/wizard/steps/index.js +25 -0
- package/dist/wizard/steps/index.js.map +1 -0
- package/dist/wizard/steps/orgDomain.js +40 -0
- package/dist/wizard/steps/orgDomain.js.map +1 -0
- package/dist/wizard/steps/prismaExtension.js +33 -0
- package/dist/wizard/steps/prismaExtension.js.map +1 -0
- package/dist/wizard/steps/projectName.js +40 -0
- package/dist/wizard/steps/projectName.js.map +1 -0
- package/dist/wizard/steps/summary.js +119 -0
- package/dist/wizard/steps/summary.js.map +1 -0
- package/dist/wizard/steps/trpcExtension.js +37 -0
- package/dist/wizard/steps/trpcExtension.js.map +1 -0
- package/dist/wizard/validators.js +35 -0
- package/dist/wizard/validators.js.map +1 -0
- package/package.json +6 -19
- package/README.md +0 -110
- package/dist/generators/init.js +0 -268
- package/dist/generators/init.js.map +0 -1
- package/dist/generators/utils.js +0 -682
- package/dist/generators/utils.js.map +0 -1
- package/dist/scripts/configure-react-native-monorepo.js +0 -144
- package/dist/scripts/configure-react-native-monorepo.js.map +0 -1
- package/dist/template/.devcontainer/Dockerfile +0 -26
- package/dist/template/.devcontainer/devcontainer.json +0 -113
- package/dist/template/.devcontainer/docker-compose.yml +0 -59
- package/dist/template/.devcontainer/figma-mcp.sh +0 -32
- package/dist/template/.devcontainer/gitignore.template +0 -2
- package/dist/template/.devcontainer/setup.sh +0 -45
- package/dist/template/DOCKER.md +0 -0
- package/dist/template/Dockerfile +0 -111
- package/dist/template/README.md +0 -233
- package/dist/template/docker/nginx/prod.conf +0 -238
- package/dist/template/docker/nginx.conf +0 -131
- package/dist/template/docker/postgres/init.sql +0 -41
- package/dist/template/docker/prometheus/prometheus.yml +0 -52
- package/dist/template/docker-compose.prod.yml +0 -146
- package/dist/template/docker-compose.yml +0 -143
- package/dist/template/dockerignore.template +0 -151
- package/dist/template/env.example.template +0 -36
- package/dist/template/gitignore.template +0 -56
- package/dist/template/jest.config.js +0 -20
- package/dist/template/mcp.json.template +0 -8
- package/dist/template/package.json +0 -45
- package/dist/template/packages/api/README.md +0 -510
- package/dist/template/packages/api/__tests__/api.test.ts +0 -26
- package/dist/template/packages/api/env.example.template +0 -6
- package/dist/template/packages/api/gitignore.template +0 -35
- package/dist/template/packages/api/jest.config.js +0 -23
- package/dist/template/packages/api/jest.setup.js +0 -9
- package/dist/template/packages/api/package.json +0 -66
- package/dist/template/packages/api/src/context.ts +0 -52
- package/dist/template/packages/api/src/controllers/TestController.ts +0 -0
- package/dist/template/packages/api/src/graphql/builder.ts +0 -75
- package/dist/template/packages/api/src/graphql/generated.ts +0 -64
- package/dist/template/packages/api/src/graphql/index.ts +0 -75
- package/dist/template/packages/api/src/graphql/types/index.ts +0 -44
- package/dist/template/packages/api/src/graphql/types/test.ts +0 -245
- package/dist/template/packages/api/src/index.ts +0 -26
- package/dist/template/packages/api/src/lib/database.ts +0 -23
- package/dist/template/packages/api/src/router/index.ts +0 -163
- package/dist/template/packages/api/src/routers/test.ts +0 -161
- package/dist/template/packages/api/src/server.ts +0 -68
- package/dist/template/packages/api/src/trpc.ts +0 -28
- package/dist/template/packages/api/tsconfig.json +0 -44
- package/dist/template/packages/database/README.md +0 -162
- package/dist/template/packages/database/gitignore.template +0 -41
- package/dist/template/packages/database/package.json +0 -49
- package/dist/template/packages/database/prisma/seed.ts +0 -64
- package/dist/template/packages/database/schema.prisma +0 -107
- package/dist/template/packages/database/src/index.ts +0 -15
- package/dist/template/packages/database/src/validators.ts +0 -10
- package/dist/template/packages/database/tsconfig.json +0 -18
- package/dist/template/packages/mobile/README.md +0 -86
- package/dist/template/packages/mobile/__tests__/App.test.tsx +0 -156
- package/dist/template/packages/mobile/__tests__/components.test.tsx +0 -300
- package/dist/template/packages/mobile/app.json +0 -5
- package/dist/template/packages/mobile/babel.config.js +0 -10
- package/dist/template/packages/mobile/gitignore.template +0 -73
- package/dist/template/packages/mobile/index.js +0 -6
- package/dist/template/packages/mobile/jest.config.js +0 -21
- package/dist/template/packages/mobile/jest.setup.js +0 -12
- package/dist/template/packages/mobile/metro.config.js +0 -36
- package/dist/template/packages/mobile/package.json +0 -60
- package/dist/template/packages/mobile/src/App.tsx +0 -8
- package/dist/template/packages/mobile/src/utils/trpc.ts +0 -7
- package/dist/template/packages/mobile/tsconfig.json +0 -28
- package/dist/template/packages/shared/README.md +0 -135
- package/dist/template/packages/shared/__tests__/shared.test.ts +0 -51
- package/dist/template/packages/shared/gitignore.template +0 -35
- package/dist/template/packages/shared/jest.config.js +0 -22
- package/dist/template/packages/shared/package.json +0 -68
- package/dist/template/packages/shared/src/components/App.tsx +0 -57
- package/dist/template/packages/shared/src/components/HelloWorld.tsx +0 -531
- package/dist/template/packages/shared/src/components/index.ts +0 -1
- package/dist/template/packages/shared/src/graphql/client.ts +0 -34
- package/dist/template/packages/shared/src/index.ts +0 -22
- package/dist/template/packages/shared/src/navigation/AppRouter.tsx +0 -565
- package/dist/template/packages/shared/src/trpc/client.ts +0 -44
- package/dist/template/packages/shared/tsconfig.json +0 -22
- package/dist/template/packages/web/README.md +0 -131
- package/dist/template/packages/web/__tests__/App.test.tsx +0 -342
- package/dist/template/packages/web/__tests__/components.test.tsx +0 -564
- package/dist/template/packages/web/gitignore.template +0 -35
- package/dist/template/packages/web/index.html +0 -13
- package/dist/template/packages/web/jest.config.js +0 -27
- package/dist/template/packages/web/jest.setup.js +0 -24
- package/dist/template/packages/web/package.json +0 -69
- package/dist/template/packages/web/src/App.tsx +0 -14
- package/dist/template/packages/web/src/components/TestDemo.tsx +0 -164
- package/dist/template/packages/web/src/main.tsx +0 -25
- package/dist/template/packages/web/src/utils/trpc.ts +0 -7
- package/dist/template/packages/web/tsconfig.json +0 -26
- package/dist/template/packages/web/vite.config.ts +0 -98
- package/dist/template/setup.sh +0 -30
- package/dist/template/tsconfig.json +0 -22
- package/dist/template/yarnrc.yml.template +0 -4
- package/dist/types/generators/init.d.ts +0 -5
- package/dist/types/generators/utils.d.ts +0 -45
- package/dist/types/scripts/configure-react-native-monorepo.d.ts +0 -23
- package/template/.devcontainer/Dockerfile +0 -26
- package/template/.devcontainer/devcontainer.json +0 -113
- package/template/.devcontainer/docker-compose.yml +0 -59
- package/template/.devcontainer/figma-mcp.sh +0 -32
- package/template/.devcontainer/setup.sh +0 -45
- package/template/.dockerignore +0 -151
- package/template/.env.example +0 -36
- package/template/.env.production +0 -56
- package/template/DOCKER.md +0 -0
- package/template/Dockerfile +0 -111
- package/template/README.md +0 -233
- package/template/docker/nginx/prod.conf +0 -238
- package/template/docker/nginx.conf +0 -131
- package/template/docker/postgres/init.sql +0 -41
- package/template/docker/prometheus/prometheus.yml +0 -52
- package/template/docker-compose.prod.yml +0 -146
- package/template/docker-compose.yml +0 -143
- package/template/jest.config.js +0 -20
- package/template/package.json +0 -45
- package/template/packages/api/.env.example +0 -6
- package/template/packages/api/README.md +0 -510
- package/template/packages/api/__tests__/api.test.ts +0 -26
- package/template/packages/api/jest.config.js +0 -23
- package/template/packages/api/jest.setup.js +0 -9
- package/template/packages/api/package.json +0 -66
- package/template/packages/api/src/context.ts +0 -52
- package/template/packages/api/src/controllers/TestController.ts +0 -0
- package/template/packages/api/src/graphql/builder.ts +0 -75
- package/template/packages/api/src/graphql/generated.ts +0 -64
- package/template/packages/api/src/graphql/index.ts +0 -75
- package/template/packages/api/src/graphql/types/index.ts +0 -44
- package/template/packages/api/src/graphql/types/test.ts +0 -245
- package/template/packages/api/src/index.ts +0 -26
- package/template/packages/api/src/lib/database.ts +0 -23
- package/template/packages/api/src/router/index.ts +0 -163
- package/template/packages/api/src/routers/test.ts +0 -161
- package/template/packages/api/src/server.ts +0 -68
- package/template/packages/api/src/trpc.ts +0 -28
- package/template/packages/api/tsconfig.json +0 -44
- package/template/packages/database/README.md +0 -162
- package/template/packages/database/package.json +0 -49
- package/template/packages/database/prisma/seed.ts +0 -64
- package/template/packages/database/schema.prisma +0 -107
- package/template/packages/database/src/index.ts +0 -15
- package/template/packages/database/src/validators.ts +0 -10
- package/template/packages/database/tsconfig.json +0 -18
- package/template/packages/mobile/README.md +0 -86
- package/template/packages/mobile/__tests__/App.test.tsx +0 -156
- package/template/packages/mobile/__tests__/components.test.tsx +0 -300
- package/template/packages/mobile/app.json +0 -5
- package/template/packages/mobile/babel.config.js +0 -26
- package/template/packages/mobile/index.js +0 -8
- package/template/packages/mobile/jest.config.js +0 -21
- package/template/packages/mobile/jest.setup.js +0 -12
- package/template/packages/mobile/metro.config.js +0 -36
- package/template/packages/mobile/package.json +0 -60
- package/template/packages/mobile/src/App.tsx +0 -8
- package/template/packages/mobile/src/utils/trpc.ts +0 -7
- package/template/packages/mobile/tsconfig.json +0 -28
- package/template/packages/shared/README.md +0 -135
- package/template/packages/shared/__tests__/shared.test.ts +0 -51
- package/template/packages/shared/jest.config.js +0 -22
- package/template/packages/shared/package.json +0 -68
- package/template/packages/shared/src/components/App.tsx +0 -57
- package/template/packages/shared/src/components/HelloWorld.tsx +0 -531
- package/template/packages/shared/src/components/index.ts +0 -1
- package/template/packages/shared/src/graphql/client.ts +0 -34
- package/template/packages/shared/src/index.ts +0 -25
- package/template/packages/shared/src/navigation/AppRouter.tsx +0 -565
- package/template/packages/shared/src/trpc/client.ts +0 -44
- package/template/packages/shared/src/unistyles.ts +0 -50
- package/template/packages/shared/tsconfig.json +0 -22
- package/template/packages/web/README.md +0 -131
- package/template/packages/web/__tests__/App.test.tsx +0 -342
- package/template/packages/web/__tests__/components.test.tsx +0 -564
- package/template/packages/web/index.html +0 -13
- package/template/packages/web/jest.config.js +0 -27
- package/template/packages/web/jest.setup.js +0 -24
- package/template/packages/web/package.json +0 -69
- package/template/packages/web/src/App.tsx +0 -14
- package/template/packages/web/src/components/TestDemo.tsx +0 -164
- package/template/packages/web/src/main.tsx +0 -27
- package/template/packages/web/src/utils/trpc.ts +0 -7
- package/template/packages/web/tsconfig.json +0 -26
- package/template/packages/web/vite.config.ts +0 -114
- package/template/setup.sh +0 -30
- package/template/tsconfig.json +0 -22
|
@@ -1,113 +0,0 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "{{projectName}} Development",
|
|
3
|
-
"dockerComposeFile": "docker-compose.yml",
|
|
4
|
-
"service": "app",
|
|
5
|
-
"workspaceFolder": "/workspace",
|
|
6
|
-
|
|
7
|
-
// Forward ports
|
|
8
|
-
"forwardPorts": [
|
|
9
|
-
3000, // Api server
|
|
10
|
-
5173, // Vite dev server
|
|
11
|
-
8081, // Metro Bundler
|
|
12
|
-
19006, // Expo dev tools
|
|
13
|
-
5432, // PostgreSQL
|
|
14
|
-
6379, // Redis
|
|
15
|
-
3333 // Figma MCP server
|
|
16
|
-
],
|
|
17
|
-
|
|
18
|
-
// Port attributes
|
|
19
|
-
"portsAttributes": {
|
|
20
|
-
"3000": {
|
|
21
|
-
"label": "API Server",
|
|
22
|
-
"onAutoForward": "notify"
|
|
23
|
-
},
|
|
24
|
-
"5173": {
|
|
25
|
-
"label": "Vite Dev Server",
|
|
26
|
-
"onAutoForward": "openBrowser"
|
|
27
|
-
},
|
|
28
|
-
"8081": {
|
|
29
|
-
"label": "Metro Bundler",
|
|
30
|
-
"onAutoForward": "notify"
|
|
31
|
-
},
|
|
32
|
-
"19006": {
|
|
33
|
-
"label": "Expo Dev Tools",
|
|
34
|
-
"onAutoForward": "openBrowser"
|
|
35
|
-
},
|
|
36
|
-
"5432": {
|
|
37
|
-
"label": "PostgreSQL Database",
|
|
38
|
-
"onAutoForward": "silent"
|
|
39
|
-
},
|
|
40
|
-
"6379": {
|
|
41
|
-
"label": "Redis Cache",
|
|
42
|
-
"onAutoForward": "silent"
|
|
43
|
-
},
|
|
44
|
-
"3333": {
|
|
45
|
-
"label": "Figma MCP Server",
|
|
46
|
-
"onAutoForward": "openBrowser"
|
|
47
|
-
}
|
|
48
|
-
},
|
|
49
|
-
|
|
50
|
-
// VS Code customizations
|
|
51
|
-
"customizations": {
|
|
52
|
-
"vscode": {
|
|
53
|
-
"extensions": [
|
|
54
|
-
// React Native/React development
|
|
55
|
-
"ms-vscode.vscode-react-native",
|
|
56
|
-
"msjsdiag.vscode-react-native",
|
|
57
|
-
|
|
58
|
-
// TypeScript/JavaScript
|
|
59
|
-
"ms-vscode.vscode-typescript-next",
|
|
60
|
-
"dbaeumer.vscode-eslint",
|
|
61
|
-
"esbenp.prettier-vscode",
|
|
62
|
-
"bradlc.vscode-tailwindcss",
|
|
63
|
-
|
|
64
|
-
// General development
|
|
65
|
-
"ms-vscode.vscode-json",
|
|
66
|
-
"redhat.vscode-yaml",
|
|
67
|
-
"ms-vscode.vscode-docker",
|
|
68
|
-
"ms-vscode.vscode-markdown",
|
|
69
|
-
"christian-kohler.path-intellisense",
|
|
70
|
-
"formulahendry.auto-rename-tag",
|
|
71
|
-
|
|
72
|
-
// Testing
|
|
73
|
-
"orta.vscode-jest",
|
|
74
|
-
"ms-vscode.test-adapter-converter",
|
|
75
|
-
|
|
76
|
-
// Git
|
|
77
|
-
"mhutchie.git-graph",
|
|
78
|
-
"eamodio.gitlens",
|
|
79
|
-
"github.vscode-pull-request-github",
|
|
80
|
-
"github.copilot",
|
|
81
|
-
"github.copilot-chat"
|
|
82
|
-
],
|
|
83
|
-
"settings": {
|
|
84
|
-
"terminal.integrated.defaultProfile.linux": "bash",
|
|
85
|
-
"typescript.preferences.includePackageJsonAutoImports": "auto",
|
|
86
|
-
"editor.formatOnSave": true,
|
|
87
|
-
"editor.defaultFormatter": "esbenp.prettier-vscode",
|
|
88
|
-
"editor.codeActionsOnSave": {
|
|
89
|
-
"source.fixAll.eslint": "explicit",
|
|
90
|
-
"source.organizeImports": "explicit"
|
|
91
|
-
},
|
|
92
|
-
"files.watcherExclude": {
|
|
93
|
-
"**/node_modules/**": true,
|
|
94
|
-
"**/.git/**": true,
|
|
95
|
-
"**/dist/**": true,
|
|
96
|
-
"**/coverage/**": true
|
|
97
|
-
},
|
|
98
|
-
"search.exclude": {
|
|
99
|
-
"**/node_modules": true,
|
|
100
|
-
"**/dist": true,
|
|
101
|
-
"**/coverage": true,
|
|
102
|
-
"**/.yarn": true
|
|
103
|
-
},
|
|
104
|
-
"jest.jestCommandLine": "yarn test",
|
|
105
|
-
"jest.autoRun": "off"
|
|
106
|
-
}
|
|
107
|
-
}
|
|
108
|
-
},
|
|
109
|
-
"remoteUser": "node",
|
|
110
|
-
|
|
111
|
-
// Post-create command to set up the development environment
|
|
112
|
-
"postCreateCommand": "bash .devcontainer/setup.sh"
|
|
113
|
-
}
|
|
@@ -1,59 +0,0 @@
|
|
|
1
|
-
services:
|
|
2
|
-
# PostgreSQL Database
|
|
3
|
-
postgres:
|
|
4
|
-
image: postgres:15-alpine
|
|
5
|
-
environment:
|
|
6
|
-
POSTGRES_DB: idealyst_db
|
|
7
|
-
POSTGRES_USER: postgres
|
|
8
|
-
POSTGRES_PASSWORD: postgres
|
|
9
|
-
ports:
|
|
10
|
-
- "5432:5432"
|
|
11
|
-
volumes:
|
|
12
|
-
- postgres_data:/var/lib/postgresql/data
|
|
13
|
-
|
|
14
|
-
# Redis Cache
|
|
15
|
-
redis:
|
|
16
|
-
image: redis:7-alpine
|
|
17
|
-
ports:
|
|
18
|
-
- "6379:6379"
|
|
19
|
-
volumes:
|
|
20
|
-
- redis_data:/data
|
|
21
|
-
|
|
22
|
-
# Development Service (for devcontainer)
|
|
23
|
-
app:
|
|
24
|
-
build:
|
|
25
|
-
context: .
|
|
26
|
-
dockerfile: Dockerfile
|
|
27
|
-
environment:
|
|
28
|
-
NODE_ENV: development
|
|
29
|
-
DATABASE_URL: postgresql://postgres:postgres@postgres:5432/idealyst_db
|
|
30
|
-
REDIS_URL: redis://redis:6379
|
|
31
|
-
ports:
|
|
32
|
-
- "3000:3000"
|
|
33
|
-
- "5173:5173"
|
|
34
|
-
- "8081:8081"
|
|
35
|
-
- "19006:19006"
|
|
36
|
-
volumes:
|
|
37
|
-
- ..:/workspace
|
|
38
|
-
depends_on:
|
|
39
|
-
- postgres
|
|
40
|
-
- redis
|
|
41
|
-
command: sleep infinity
|
|
42
|
-
|
|
43
|
-
# Figma MCP Server
|
|
44
|
-
figma-mcp:
|
|
45
|
-
image: node:18-alpine
|
|
46
|
-
working_dir: /app
|
|
47
|
-
environment:
|
|
48
|
-
- FIGMA_ACCESS_TOKEN=${FIGMA_ACCESS_TOKEN:-}
|
|
49
|
-
ports:
|
|
50
|
-
- "3333:3333"
|
|
51
|
-
volumes:
|
|
52
|
-
- ./figma-mcp.sh:/app/figma-mcp.sh:ro
|
|
53
|
-
- figma_mcp_data:/app/node_modules
|
|
54
|
-
command: ["sh", "/app/figma-mcp.sh"]
|
|
55
|
-
|
|
56
|
-
volumes:
|
|
57
|
-
postgres_data:
|
|
58
|
-
redis_data:
|
|
59
|
-
figma_mcp_data:
|
|
@@ -1,32 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
set -e
|
|
3
|
-
|
|
4
|
-
echo "Starting Figma MCP Server..."
|
|
5
|
-
|
|
6
|
-
# Check if FIGMA_ACCESS_TOKEN is provided
|
|
7
|
-
if [ -z "$FIGMA_ACCESS_TOKEN" ]; then
|
|
8
|
-
echo "❌ No FIGMA_ACCESS_TOKEN provided"
|
|
9
|
-
echo "💡 Add your token to .devcontainer/.env to enable Figma integration"
|
|
10
|
-
echo " Example: echo 'FIGMA_ACCESS_TOKEN=fig_your_token_here' > .devcontainer/.env"
|
|
11
|
-
echo ""
|
|
12
|
-
echo "🔄 Keeping container alive (waiting for token)..."
|
|
13
|
-
sleep infinity
|
|
14
|
-
exit 0
|
|
15
|
-
fi
|
|
16
|
-
|
|
17
|
-
echo "✅ Figma token found, installing figma-developer-mcp..."
|
|
18
|
-
|
|
19
|
-
# Install figma-developer-mcp if not already installed
|
|
20
|
-
if ! command -v figma-developer-mcp &> /dev/null; then
|
|
21
|
-
npm install -g figma-developer-mcp
|
|
22
|
-
echo "📦 figma-developer-mcp installed successfully"
|
|
23
|
-
else
|
|
24
|
-
echo "📦 figma-developer-mcp already installed"
|
|
25
|
-
fi
|
|
26
|
-
|
|
27
|
-
echo "🚀 Starting Figma MCP server on port 3333..."
|
|
28
|
-
echo "🎨 Figma designs will be available to AI tools like Claude"
|
|
29
|
-
|
|
30
|
-
# Start the MCP server with the correct environment variable
|
|
31
|
-
export FIGMA_API_KEY="$FIGMA_ACCESS_TOKEN"
|
|
32
|
-
exec npx figma-developer-mcp --port 3333
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
#!/bin/bash
|
|
2
|
-
|
|
3
|
-
echo "🚀 Setting up Idealyst development environment..."
|
|
4
|
-
|
|
5
|
-
# Create environment file if it doesn't exist
|
|
6
|
-
if [ ! -f ".env" ]; then
|
|
7
|
-
echo "📝 Creating .env file..."
|
|
8
|
-
cat > .env << EOF
|
|
9
|
-
# Database Configuration
|
|
10
|
-
DATABASE_URL=postgresql://postgres:postgres@postgres:5432/idealyst_db
|
|
11
|
-
POSTGRES_DB=idealyst_db
|
|
12
|
-
POSTGRES_USER=postgres
|
|
13
|
-
POSTGRES_PASSWORD=postgres
|
|
14
|
-
|
|
15
|
-
# Redis Configuration
|
|
16
|
-
REDIS_URL=redis://redis:6379
|
|
17
|
-
|
|
18
|
-
# API Configuration
|
|
19
|
-
API_PORT=3000
|
|
20
|
-
JWT_SECRET=your-jwt-secret-here
|
|
21
|
-
|
|
22
|
-
# Web Configuration
|
|
23
|
-
WEB_PORT=3000
|
|
24
|
-
|
|
25
|
-
# Development Configuration
|
|
26
|
-
NODE_ENV=development
|
|
27
|
-
LOG_LEVEL=debug
|
|
28
|
-
|
|
29
|
-
# Project Configuration
|
|
30
|
-
PROJECT_NAME={{packageName}}
|
|
31
|
-
EOF
|
|
32
|
-
fi
|
|
33
|
-
|
|
34
|
-
# Wait for database to be ready
|
|
35
|
-
echo "⏳ Waiting for database to be ready..."
|
|
36
|
-
until pg_isready -h postgres -p 5432 -U postgres; do
|
|
37
|
-
echo "Database is unavailable - sleeping"
|
|
38
|
-
sleep 1
|
|
39
|
-
done
|
|
40
|
-
|
|
41
|
-
echo "Add Figma MCP to Claude Code"
|
|
42
|
-
claude mcp add -t sse figma-mcp http://figma-mcp:3333/sse
|
|
43
|
-
|
|
44
|
-
echo "✅ Development environment is ready!"
|
|
45
|
-
echo "🎉 You can now start developing your Idealyst application!"
|
package/template/.dockerignore
DELETED
|
@@ -1,151 +0,0 @@
|
|
|
1
|
-
# Dockerignore file for Idealyst workspace
|
|
2
|
-
# Excludes files and directories from Docker build context
|
|
3
|
-
|
|
4
|
-
# Node.js
|
|
5
|
-
node_modules/
|
|
6
|
-
npm-debug.log*
|
|
7
|
-
yarn-debug.log*
|
|
8
|
-
yarn-error.log*
|
|
9
|
-
.pnpm-debug.log*
|
|
10
|
-
|
|
11
|
-
# Environment files (use .env.example instead)
|
|
12
|
-
.env
|
|
13
|
-
.env.local
|
|
14
|
-
.env.development.local
|
|
15
|
-
.env.test.local
|
|
16
|
-
.env.production.local
|
|
17
|
-
|
|
18
|
-
# Build outputs
|
|
19
|
-
dist/
|
|
20
|
-
build/
|
|
21
|
-
out/
|
|
22
|
-
.next/
|
|
23
|
-
coverage/
|
|
24
|
-
|
|
25
|
-
# Development tools
|
|
26
|
-
.vscode/
|
|
27
|
-
.idea/
|
|
28
|
-
*.swp
|
|
29
|
-
*.swo
|
|
30
|
-
*~
|
|
31
|
-
|
|
32
|
-
# OS generated files
|
|
33
|
-
.DS_Store
|
|
34
|
-
.DS_Store?
|
|
35
|
-
._*
|
|
36
|
-
.Spotlight-V100
|
|
37
|
-
.Trashes
|
|
38
|
-
ehthumbs.db
|
|
39
|
-
Thumbs.db
|
|
40
|
-
|
|
41
|
-
# Git
|
|
42
|
-
.git/
|
|
43
|
-
.gitignore
|
|
44
|
-
.gitattributes
|
|
45
|
-
|
|
46
|
-
# Docker
|
|
47
|
-
Dockerfile*
|
|
48
|
-
docker-compose*.yml
|
|
49
|
-
.dockerignore
|
|
50
|
-
|
|
51
|
-
# CI/CD
|
|
52
|
-
.github/
|
|
53
|
-
.gitlab-ci.yml
|
|
54
|
-
.travis.yml
|
|
55
|
-
.circleci/
|
|
56
|
-
|
|
57
|
-
# Logs
|
|
58
|
-
logs/
|
|
59
|
-
*.log
|
|
60
|
-
|
|
61
|
-
# Runtime data
|
|
62
|
-
pids/
|
|
63
|
-
*.pid
|
|
64
|
-
*.seed
|
|
65
|
-
*.pid.lock
|
|
66
|
-
|
|
67
|
-
# Coverage directory used by tools like istanbul
|
|
68
|
-
coverage/
|
|
69
|
-
.nyc_output/
|
|
70
|
-
|
|
71
|
-
# Test files and directories
|
|
72
|
-
__tests__/
|
|
73
|
-
*.test.js
|
|
74
|
-
*.test.ts
|
|
75
|
-
*.test.tsx
|
|
76
|
-
*.spec.js
|
|
77
|
-
*.spec.ts
|
|
78
|
-
*.spec.tsx
|
|
79
|
-
test/
|
|
80
|
-
tests/
|
|
81
|
-
|
|
82
|
-
# Documentation
|
|
83
|
-
README.md
|
|
84
|
-
CHANGELOG.md
|
|
85
|
-
LICENSE
|
|
86
|
-
*.md
|
|
87
|
-
|
|
88
|
-
# Package manager files
|
|
89
|
-
package-lock.json
|
|
90
|
-
# yarn.lock - DO NOT IGNORE: Required for immutable installs
|
|
91
|
-
pnpm-lock.yaml
|
|
92
|
-
|
|
93
|
-
# Development scripts
|
|
94
|
-
scripts/dev*
|
|
95
|
-
scripts/test*
|
|
96
|
-
|
|
97
|
-
# Temporary files
|
|
98
|
-
tmp/
|
|
99
|
-
temp/
|
|
100
|
-
.tmp/
|
|
101
|
-
|
|
102
|
-
# Editor directories and files
|
|
103
|
-
.vscode/
|
|
104
|
-
.idea/
|
|
105
|
-
*.suo
|
|
106
|
-
*.ntvs*
|
|
107
|
-
*.njsproj
|
|
108
|
-
*.sln
|
|
109
|
-
*.sw?
|
|
110
|
-
|
|
111
|
-
# Runtime configuration
|
|
112
|
-
.editorconfig
|
|
113
|
-
.eslintrc*
|
|
114
|
-
.prettierrc*
|
|
115
|
-
.stylelintrc*
|
|
116
|
-
jest.config.*
|
|
117
|
-
tsconfig.json
|
|
118
|
-
tsconfig.*.json
|
|
119
|
-
|
|
120
|
-
# Mobile development
|
|
121
|
-
android/
|
|
122
|
-
ios/
|
|
123
|
-
.expo/
|
|
124
|
-
.expo-shared/
|
|
125
|
-
|
|
126
|
-
# Backup files
|
|
127
|
-
*.backup
|
|
128
|
-
backups/
|
|
129
|
-
|
|
130
|
-
# Database files
|
|
131
|
-
*.db
|
|
132
|
-
*.sqlite
|
|
133
|
-
*.sqlite3
|
|
134
|
-
|
|
135
|
-
# Cache directories
|
|
136
|
-
.cache/
|
|
137
|
-
.parcel-cache/
|
|
138
|
-
.eslintcache
|
|
139
|
-
|
|
140
|
-
# Storybook
|
|
141
|
-
.storybook/
|
|
142
|
-
storybook-static/
|
|
143
|
-
|
|
144
|
-
# IDE files
|
|
145
|
-
.project
|
|
146
|
-
.classpath
|
|
147
|
-
.c9/
|
|
148
|
-
*.launch
|
|
149
|
-
.settings/
|
|
150
|
-
*.sublime-workspace
|
|
151
|
-
*.sublime-project
|
package/template/.env.example
DELETED
|
@@ -1,36 +0,0 @@
|
|
|
1
|
-
# Environment variables for Docker Compose
|
|
2
|
-
# Copy this file to .env and customize for your environment
|
|
3
|
-
|
|
4
|
-
# Project Configuration
|
|
5
|
-
PROJECT_NAME={{packageName}}
|
|
6
|
-
NODE_ENV=development
|
|
7
|
-
|
|
8
|
-
# Database Configuration
|
|
9
|
-
POSTGRES_DB=idealyst_db
|
|
10
|
-
POSTGRES_USER=postgres
|
|
11
|
-
POSTGRES_PASSWORD=postgres
|
|
12
|
-
POSTGRES_PORT=5432
|
|
13
|
-
|
|
14
|
-
# Redis Configuration
|
|
15
|
-
REDIS_PORT=6379
|
|
16
|
-
|
|
17
|
-
# API Configuration
|
|
18
|
-
API_PORT=3000
|
|
19
|
-
JWT_SECRET=your-jwt-secret-change-this-in-production
|
|
20
|
-
|
|
21
|
-
# Web Configuration
|
|
22
|
-
WEB_PORT=3000
|
|
23
|
-
|
|
24
|
-
# Monitoring Configuration (optional)
|
|
25
|
-
GRAFANA_PASSWORD=admin
|
|
26
|
-
|
|
27
|
-
# SSL Configuration (for production)
|
|
28
|
-
DOMAIN_NAME=localhost
|
|
29
|
-
SSL_EMAIL=admin@localhost
|
|
30
|
-
|
|
31
|
-
# Logging
|
|
32
|
-
LOG_LEVEL=info
|
|
33
|
-
|
|
34
|
-
# Rate Limiting
|
|
35
|
-
RATE_LIMIT_WINDOW_MS=900000
|
|
36
|
-
RATE_LIMIT_MAX_REQUESTS=100
|
package/template/.env.production
DELETED
|
@@ -1,56 +0,0 @@
|
|
|
1
|
-
# Production Environment Variables
|
|
2
|
-
# Copy this file to .env for production deployment
|
|
3
|
-
|
|
4
|
-
# Project Configuration
|
|
5
|
-
PROJECT_NAME={{packageName}}
|
|
6
|
-
NODE_ENV=production
|
|
7
|
-
|
|
8
|
-
# Database Configuration (use strong passwords!)
|
|
9
|
-
POSTGRES_DB={{packageName}}_production
|
|
10
|
-
POSTGRES_USER={{packageName}}_user
|
|
11
|
-
POSTGRES_PASSWORD=CHANGE_THIS_STRONG_PASSWORD
|
|
12
|
-
POSTGRES_PORT=5432
|
|
13
|
-
|
|
14
|
-
# Redis Configuration
|
|
15
|
-
REDIS_PORT=6379
|
|
16
|
-
|
|
17
|
-
# API Configuration
|
|
18
|
-
API_PORT=3001
|
|
19
|
-
JWT_SECRET=CHANGE_THIS_VERY_STRONG_JWT_SECRET_MINIMUM_32_CHARACTERS
|
|
20
|
-
|
|
21
|
-
# Web Configuration
|
|
22
|
-
WEB_PORT=80
|
|
23
|
-
|
|
24
|
-
# SSL/Domain Configuration
|
|
25
|
-
DOMAIN_NAME=yourdomain.com
|
|
26
|
-
SSL_EMAIL=admin@yourdomain.com
|
|
27
|
-
|
|
28
|
-
# Monitoring
|
|
29
|
-
GRAFANA_PASSWORD=CHANGE_THIS_STRONG_PASSWORD
|
|
30
|
-
|
|
31
|
-
# Logging
|
|
32
|
-
LOG_LEVEL=warn
|
|
33
|
-
|
|
34
|
-
# Rate Limiting (more restrictive for production)
|
|
35
|
-
RATE_LIMIT_WINDOW_MS=900000
|
|
36
|
-
RATE_LIMIT_MAX_REQUESTS=50
|
|
37
|
-
|
|
38
|
-
# Security Settings
|
|
39
|
-
SESSION_SECRET=CHANGE_THIS_VERY_STRONG_SESSION_SECRET
|
|
40
|
-
ENCRYPTION_KEY=CHANGE_THIS_32_CHARACTER_ENCRYPTION_KEY
|
|
41
|
-
|
|
42
|
-
# External Services (configure as needed)
|
|
43
|
-
# SMTP_HOST=smtp.yourdomain.com
|
|
44
|
-
# SMTP_PORT=587
|
|
45
|
-
# SMTP_USER=noreply@yourdomain.com
|
|
46
|
-
# SMTP_PASS=smtp_password
|
|
47
|
-
|
|
48
|
-
# AWS/Cloud Storage (if using)
|
|
49
|
-
# AWS_ACCESS_KEY_ID=your_access_key
|
|
50
|
-
# AWS_SECRET_ACCESS_KEY=your_secret_key
|
|
51
|
-
# AWS_REGION=us-east-1
|
|
52
|
-
# S3_BUCKET=your-bucket-name
|
|
53
|
-
|
|
54
|
-
# Analytics/Monitoring
|
|
55
|
-
# SENTRY_DSN=your_sentry_dsn
|
|
56
|
-
# GOOGLE_ANALYTICS_ID=your_ga_id
|
package/template/DOCKER.md
DELETED
|
File without changes
|
package/template/Dockerfile
DELETED
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
# Multi-stage Dockerfile for Idealyst Workspace
|
|
2
|
-
# Supports web apps, API services, and can be used for staging/production
|
|
3
|
-
|
|
4
|
-
# Base stage with Node.js and build tools
|
|
5
|
-
FROM node:20-bullseye-slim AS base
|
|
6
|
-
RUN apt-get update && apt-get install -y \
|
|
7
|
-
libc6-dev \
|
|
8
|
-
git \
|
|
9
|
-
&& rm -rf /var/lib/apt/lists/*
|
|
10
|
-
WORKDIR /app
|
|
11
|
-
|
|
12
|
-
# Enable corepack for yarn
|
|
13
|
-
RUN corepack enable
|
|
14
|
-
|
|
15
|
-
# Dependencies stage - install all dependencies
|
|
16
|
-
FROM base AS deps
|
|
17
|
-
COPY package.json yarn.lock .yarnrc.yml ./
|
|
18
|
-
COPY .yarn .yarn
|
|
19
|
-
|
|
20
|
-
# Create packages directory structure and copy package.json files
|
|
21
|
-
RUN mkdir -p packages/api packages/app packages/components packages/web
|
|
22
|
-
COPY packages/api/package.json ./packages/api/
|
|
23
|
-
COPY packages/app/package.json ./packages/app/
|
|
24
|
-
COPY packages/components/package.json ./packages/components/
|
|
25
|
-
COPY packages/web/package.json ./packages/web/
|
|
26
|
-
|
|
27
|
-
RUN yarn install
|
|
28
|
-
|
|
29
|
-
# Build stage - build all packages
|
|
30
|
-
FROM base AS builder
|
|
31
|
-
COPY --from=deps /app/node_modules ./node_modules
|
|
32
|
-
COPY . .
|
|
33
|
-
|
|
34
|
-
# Build all packages
|
|
35
|
-
RUN yarn build:all
|
|
36
|
-
|
|
37
|
-
# Production API stage
|
|
38
|
-
FROM base AS api-runner
|
|
39
|
-
RUN addgroup --system --gid 1001 nodejs
|
|
40
|
-
RUN adduser --system --uid 1001 apiuser
|
|
41
|
-
|
|
42
|
-
# Copy built API and dependencies
|
|
43
|
-
COPY --from=builder /app/packages/*/dist ./packages/
|
|
44
|
-
COPY --from=builder /app/node_modules ./node_modules
|
|
45
|
-
COPY --from=builder /app/package.json ./
|
|
46
|
-
|
|
47
|
-
USER apiuser
|
|
48
|
-
EXPOSE 3000
|
|
49
|
-
ENV NODE_ENV=production
|
|
50
|
-
ENV PORT=3000
|
|
51
|
-
|
|
52
|
-
# Health check for API
|
|
53
|
-
HEALTHCHECK --interval=30s --timeout=10s --start-period=5s --retries=3 \
|
|
54
|
-
CMD node -e "require('http').get('http://localhost:3000/health', (res) => { process.exit(res.statusCode === 200 ? 0 : 1) })"
|
|
55
|
-
|
|
56
|
-
CMD ["node", "packages/api/dist/server.js"]
|
|
57
|
-
|
|
58
|
-
# Production Web stage
|
|
59
|
-
FROM nginx:alpine AS web-runner
|
|
60
|
-
COPY --from=builder /app/packages/web/dist /usr/share/nginx/html
|
|
61
|
-
COPY docker/nginx.conf /etc/nginx/nginx.conf
|
|
62
|
-
|
|
63
|
-
EXPOSE 80
|
|
64
|
-
CMD ["nginx", "-g", "daemon off;"]
|
|
65
|
-
|
|
66
|
-
# Development stage - for use with dev containers
|
|
67
|
-
FROM base AS dev
|
|
68
|
-
|
|
69
|
-
# Install additional tools for development
|
|
70
|
-
RUN apt-get update && apt-get install -y \
|
|
71
|
-
sudo \
|
|
72
|
-
postgresql-client \
|
|
73
|
-
&& rm -rf /var/lib/apt/lists/*
|
|
74
|
-
|
|
75
|
-
# Create dev user with proper permissions
|
|
76
|
-
RUN groupadd --gid 1000 devuser \
|
|
77
|
-
&& useradd --uid 1000 --gid devuser --shell /bin/bash --create-home devuser \
|
|
78
|
-
&& echo 'devuser ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers
|
|
79
|
-
|
|
80
|
-
# Set up workspace directory with proper ownership
|
|
81
|
-
RUN mkdir -p /app && chown -R devuser:devuser /app
|
|
82
|
-
|
|
83
|
-
# Switch to dev user for remaining setup
|
|
84
|
-
USER devuser
|
|
85
|
-
WORKDIR /app
|
|
86
|
-
|
|
87
|
-
# Copy package files
|
|
88
|
-
COPY --chown=devuser:devuser package.json yarn.lock .yarnrc.yml ./
|
|
89
|
-
COPY --chown=devuser:devuser .yarn .yarn
|
|
90
|
-
|
|
91
|
-
# Create packages directory structure and copy package.json files
|
|
92
|
-
RUN mkdir -p packages/api packages/app packages/components packages/web
|
|
93
|
-
COPY --chown=devuser:devuser packages/api/package.json ./packages/api/
|
|
94
|
-
COPY --chown=devuser:devuser packages/app/package.json ./packages/app/
|
|
95
|
-
COPY --chown=devuser:devuser packages/components/package.json ./packages/components/
|
|
96
|
-
COPY --chown=devuser:devuser packages/web/package.json ./packages/web/
|
|
97
|
-
|
|
98
|
-
# Install dependencies including dev dependencies
|
|
99
|
-
RUN yarn install
|
|
100
|
-
|
|
101
|
-
EXPOSE 3000 5173 1 19006
|
|
102
|
-
|
|
103
|
-
CMD ["tail", "-f", "/dev/null"]
|
|
104
|
-
|
|
105
|
-
# Test runner stage
|
|
106
|
-
FROM base AS test-runner
|
|
107
|
-
COPY --from=deps /app/node_modules ./node_modules
|
|
108
|
-
COPY . .
|
|
109
|
-
|
|
110
|
-
# Run tests
|
|
111
|
-
CMD ["yarn", "test:ci"]
|