@idealyst/cli 1.1.9 → 1.2.1

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.
Files changed (324) hide show
  1. package/dist/commands/add.js +233 -0
  2. package/dist/commands/add.js.map +1 -0
  3. package/dist/commands/index.js +13 -0
  4. package/dist/commands/index.js.map +1 -0
  5. package/dist/commands/info.js +193 -0
  6. package/dist/commands/info.js.map +1 -0
  7. package/dist/commands/init.js +155 -0
  8. package/dist/commands/init.js.map +1 -0
  9. package/dist/constants.js +119 -0
  10. package/dist/constants.js.map +1 -0
  11. package/dist/generators/core/index.js +23 -0
  12. package/dist/generators/core/index.js.map +1 -0
  13. package/dist/generators/core/mobile.js +286 -0
  14. package/dist/generators/core/mobile.js.map +1 -0
  15. package/dist/generators/core/shared.js +207 -0
  16. package/dist/generators/core/shared.js.map +1 -0
  17. package/dist/generators/core/web.js +377 -0
  18. package/dist/generators/core/web.js.map +1 -0
  19. package/dist/generators/extensions/api.js +223 -0
  20. package/dist/generators/extensions/api.js.map +1 -0
  21. package/dist/generators/extensions/devcontainer.js +510 -0
  22. package/dist/generators/extensions/devcontainer.js.map +1 -0
  23. package/dist/generators/extensions/graphql.js +202 -0
  24. package/dist/generators/extensions/graphql.js.map +1 -0
  25. package/dist/generators/extensions/index.js +17 -0
  26. package/dist/generators/extensions/index.js.map +1 -0
  27. package/dist/generators/extensions/prisma.js +249 -0
  28. package/dist/generators/extensions/prisma.js.map +1 -0
  29. package/dist/generators/extensions/trpc.js +258 -0
  30. package/dist/generators/extensions/trpc.js.map +1 -0
  31. package/dist/generators/index.js +106 -4
  32. package/dist/generators/index.js.map +1 -1
  33. package/dist/generators/reactNative.js +177 -0
  34. package/dist/generators/reactNative.js.map +1 -0
  35. package/dist/generators/workspace.js +272 -0
  36. package/dist/generators/workspace.js.map +1 -0
  37. package/dist/identifiers/android.js +75 -0
  38. package/dist/identifiers/android.js.map +1 -0
  39. package/dist/identifiers/index.js +35 -0
  40. package/dist/identifiers/index.js.map +1 -0
  41. package/dist/identifiers/ios.js +65 -0
  42. package/dist/identifiers/ios.js.map +1 -0
  43. package/dist/index.js +41 -319
  44. package/dist/index.js.map +1 -1
  45. package/dist/templates/copier.js +135 -0
  46. package/dist/templates/copier.js.map +1 -0
  47. package/dist/templates/index.js +23 -0
  48. package/dist/templates/index.js.map +1 -0
  49. package/dist/templates/merger.js +113 -0
  50. package/dist/templates/merger.js.map +1 -0
  51. package/dist/templates/processor.js +142 -0
  52. package/dist/templates/processor.js.map +1 -0
  53. package/dist/types/commands/add.d.ts +14 -0
  54. package/dist/types/commands/index.d.ts +6 -0
  55. package/dist/types/commands/info.d.ts +10 -0
  56. package/dist/types/commands/init.d.ts +19 -0
  57. package/dist/types/constants.d.ts +76 -0
  58. package/dist/types/generators/core/index.d.ts +6 -0
  59. package/dist/types/generators/core/mobile.d.ts +13 -0
  60. package/dist/types/generators/core/shared.d.ts +8 -0
  61. package/dist/types/generators/core/web.d.ts +8 -0
  62. package/dist/types/generators/extensions/api.d.ts +8 -0
  63. package/dist/types/generators/extensions/devcontainer.d.ts +15 -0
  64. package/dist/types/generators/extensions/graphql.d.ts +8 -0
  65. package/dist/types/generators/extensions/index.d.ts +8 -0
  66. package/dist/types/generators/extensions/prisma.d.ts +8 -0
  67. package/dist/types/generators/extensions/trpc.d.ts +9 -0
  68. package/dist/types/generators/index.d.ts +11 -3
  69. package/dist/types/generators/reactNative.d.ts +19 -0
  70. package/dist/types/generators/workspace.d.ts +8 -0
  71. package/dist/types/identifiers/android.d.ts +26 -0
  72. package/dist/types/identifiers/index.d.ts +26 -0
  73. package/dist/types/identifiers/ios.d.ts +21 -0
  74. package/dist/types/index.d.ts +3 -0
  75. package/dist/types/templates/copier.d.ts +24 -0
  76. package/dist/types/templates/index.d.ts +6 -0
  77. package/dist/types/templates/merger.d.ts +43 -0
  78. package/dist/types/templates/processor.d.ts +39 -0
  79. package/dist/types/types.d.ts +153 -5
  80. package/dist/types/utils/filesystem.d.ts +56 -0
  81. package/dist/types/utils/index.d.ts +7 -0
  82. package/dist/types/utils/logger.d.ts +58 -0
  83. package/dist/types/utils/shell.d.ts +35 -0
  84. package/dist/types/utils/validation.d.ts +32 -0
  85. package/dist/types/wizard/index.d.ts +20 -0
  86. package/dist/types/wizard/steps/apiExtension.d.ts +5 -0
  87. package/dist/types/wizard/steps/appDisplayName.d.ts +5 -0
  88. package/dist/types/wizard/steps/devcontainerExtension.d.ts +5 -0
  89. package/dist/types/wizard/steps/graphqlExtension.d.ts +5 -0
  90. package/dist/types/wizard/steps/index.d.ts +12 -0
  91. package/dist/types/wizard/steps/orgDomain.d.ts +5 -0
  92. package/dist/types/wizard/steps/prismaExtension.d.ts +5 -0
  93. package/dist/types/wizard/steps/projectName.d.ts +5 -0
  94. package/dist/types/wizard/steps/summary.d.ts +5 -0
  95. package/dist/types/wizard/steps/trpcExtension.d.ts +5 -0
  96. package/dist/types/wizard/validators.d.ts +17 -0
  97. package/dist/types.js +41 -0
  98. package/dist/types.js.map +1 -1
  99. package/dist/utils/filesystem.js +173 -0
  100. package/dist/utils/filesystem.js.map +1 -0
  101. package/dist/utils/index.js +24 -0
  102. package/dist/utils/index.js.map +1 -0
  103. package/dist/utils/logger.js +95 -0
  104. package/dist/utils/logger.js.map +1 -0
  105. package/dist/utils/shell.js +113 -0
  106. package/dist/utils/shell.js.map +1 -0
  107. package/dist/utils/validation.js +196 -0
  108. package/dist/utils/validation.js.map +1 -0
  109. package/dist/wizard/index.js +177 -0
  110. package/dist/wizard/index.js.map +1 -0
  111. package/dist/wizard/steps/apiExtension.js +33 -0
  112. package/dist/wizard/steps/apiExtension.js.map +1 -0
  113. package/dist/wizard/steps/appDisplayName.js +53 -0
  114. package/dist/wizard/steps/appDisplayName.js.map +1 -0
  115. package/dist/wizard/steps/devcontainerExtension.js +78 -0
  116. package/dist/wizard/steps/devcontainerExtension.js.map +1 -0
  117. package/dist/wizard/steps/graphqlExtension.js +37 -0
  118. package/dist/wizard/steps/graphqlExtension.js.map +1 -0
  119. package/dist/wizard/steps/index.js +25 -0
  120. package/dist/wizard/steps/index.js.map +1 -0
  121. package/dist/wizard/steps/orgDomain.js +40 -0
  122. package/dist/wizard/steps/orgDomain.js.map +1 -0
  123. package/dist/wizard/steps/prismaExtension.js +33 -0
  124. package/dist/wizard/steps/prismaExtension.js.map +1 -0
  125. package/dist/wizard/steps/projectName.js +40 -0
  126. package/dist/wizard/steps/projectName.js.map +1 -0
  127. package/dist/wizard/steps/summary.js +107 -0
  128. package/dist/wizard/steps/summary.js.map +1 -0
  129. package/dist/wizard/steps/trpcExtension.js +37 -0
  130. package/dist/wizard/steps/trpcExtension.js.map +1 -0
  131. package/dist/wizard/validators.js +35 -0
  132. package/dist/wizard/validators.js.map +1 -0
  133. package/package.json +6 -19
  134. package/README.md +0 -110
  135. package/dist/generators/init.js +0 -268
  136. package/dist/generators/init.js.map +0 -1
  137. package/dist/generators/utils.js +0 -682
  138. package/dist/generators/utils.js.map +0 -1
  139. package/dist/scripts/configure-react-native-monorepo.js +0 -144
  140. package/dist/scripts/configure-react-native-monorepo.js.map +0 -1
  141. package/dist/template/.devcontainer/Dockerfile +0 -26
  142. package/dist/template/.devcontainer/devcontainer.json +0 -113
  143. package/dist/template/.devcontainer/docker-compose.yml +0 -59
  144. package/dist/template/.devcontainer/figma-mcp.sh +0 -32
  145. package/dist/template/.devcontainer/gitignore.template +0 -2
  146. package/dist/template/.devcontainer/setup.sh +0 -45
  147. package/dist/template/DOCKER.md +0 -0
  148. package/dist/template/Dockerfile +0 -111
  149. package/dist/template/README.md +0 -233
  150. package/dist/template/docker/nginx/prod.conf +0 -238
  151. package/dist/template/docker/nginx.conf +0 -131
  152. package/dist/template/docker/postgres/init.sql +0 -41
  153. package/dist/template/docker/prometheus/prometheus.yml +0 -52
  154. package/dist/template/docker-compose.prod.yml +0 -146
  155. package/dist/template/docker-compose.yml +0 -143
  156. package/dist/template/dockerignore.template +0 -151
  157. package/dist/template/env.example.template +0 -36
  158. package/dist/template/gitignore.template +0 -56
  159. package/dist/template/jest.config.js +0 -20
  160. package/dist/template/mcp.json.template +0 -8
  161. package/dist/template/package.json +0 -45
  162. package/dist/template/packages/api/README.md +0 -510
  163. package/dist/template/packages/api/__tests__/api.test.ts +0 -26
  164. package/dist/template/packages/api/env.example.template +0 -6
  165. package/dist/template/packages/api/gitignore.template +0 -35
  166. package/dist/template/packages/api/jest.config.js +0 -23
  167. package/dist/template/packages/api/jest.setup.js +0 -9
  168. package/dist/template/packages/api/package.json +0 -66
  169. package/dist/template/packages/api/src/context.ts +0 -52
  170. package/dist/template/packages/api/src/controllers/TestController.ts +0 -0
  171. package/dist/template/packages/api/src/graphql/builder.ts +0 -75
  172. package/dist/template/packages/api/src/graphql/generated.ts +0 -64
  173. package/dist/template/packages/api/src/graphql/index.ts +0 -75
  174. package/dist/template/packages/api/src/graphql/types/index.ts +0 -44
  175. package/dist/template/packages/api/src/graphql/types/test.ts +0 -245
  176. package/dist/template/packages/api/src/index.ts +0 -26
  177. package/dist/template/packages/api/src/lib/database.ts +0 -23
  178. package/dist/template/packages/api/src/router/index.ts +0 -163
  179. package/dist/template/packages/api/src/routers/test.ts +0 -161
  180. package/dist/template/packages/api/src/server.ts +0 -68
  181. package/dist/template/packages/api/src/trpc.ts +0 -28
  182. package/dist/template/packages/api/tsconfig.json +0 -44
  183. package/dist/template/packages/database/README.md +0 -162
  184. package/dist/template/packages/database/gitignore.template +0 -41
  185. package/dist/template/packages/database/package.json +0 -49
  186. package/dist/template/packages/database/prisma/seed.ts +0 -64
  187. package/dist/template/packages/database/schema.prisma +0 -107
  188. package/dist/template/packages/database/src/index.ts +0 -15
  189. package/dist/template/packages/database/src/validators.ts +0 -10
  190. package/dist/template/packages/database/tsconfig.json +0 -18
  191. package/dist/template/packages/mobile/README.md +0 -86
  192. package/dist/template/packages/mobile/__tests__/App.test.tsx +0 -156
  193. package/dist/template/packages/mobile/__tests__/components.test.tsx +0 -300
  194. package/dist/template/packages/mobile/app.json +0 -5
  195. package/dist/template/packages/mobile/babel.config.js +0 -10
  196. package/dist/template/packages/mobile/gitignore.template +0 -73
  197. package/dist/template/packages/mobile/index.js +0 -6
  198. package/dist/template/packages/mobile/jest.config.js +0 -21
  199. package/dist/template/packages/mobile/jest.setup.js +0 -12
  200. package/dist/template/packages/mobile/metro.config.js +0 -36
  201. package/dist/template/packages/mobile/package.json +0 -60
  202. package/dist/template/packages/mobile/src/App.tsx +0 -8
  203. package/dist/template/packages/mobile/src/utils/trpc.ts +0 -7
  204. package/dist/template/packages/mobile/tsconfig.json +0 -28
  205. package/dist/template/packages/shared/README.md +0 -135
  206. package/dist/template/packages/shared/__tests__/shared.test.ts +0 -51
  207. package/dist/template/packages/shared/gitignore.template +0 -35
  208. package/dist/template/packages/shared/jest.config.js +0 -22
  209. package/dist/template/packages/shared/package.json +0 -68
  210. package/dist/template/packages/shared/src/components/App.tsx +0 -57
  211. package/dist/template/packages/shared/src/components/HelloWorld.tsx +0 -531
  212. package/dist/template/packages/shared/src/components/index.ts +0 -1
  213. package/dist/template/packages/shared/src/graphql/client.ts +0 -34
  214. package/dist/template/packages/shared/src/index.ts +0 -22
  215. package/dist/template/packages/shared/src/navigation/AppRouter.tsx +0 -565
  216. package/dist/template/packages/shared/src/trpc/client.ts +0 -44
  217. package/dist/template/packages/shared/tsconfig.json +0 -22
  218. package/dist/template/packages/web/README.md +0 -131
  219. package/dist/template/packages/web/__tests__/App.test.tsx +0 -342
  220. package/dist/template/packages/web/__tests__/components.test.tsx +0 -564
  221. package/dist/template/packages/web/gitignore.template +0 -35
  222. package/dist/template/packages/web/index.html +0 -13
  223. package/dist/template/packages/web/jest.config.js +0 -27
  224. package/dist/template/packages/web/jest.setup.js +0 -24
  225. package/dist/template/packages/web/package.json +0 -69
  226. package/dist/template/packages/web/src/App.tsx +0 -14
  227. package/dist/template/packages/web/src/components/TestDemo.tsx +0 -164
  228. package/dist/template/packages/web/src/main.tsx +0 -25
  229. package/dist/template/packages/web/src/utils/trpc.ts +0 -7
  230. package/dist/template/packages/web/tsconfig.json +0 -26
  231. package/dist/template/packages/web/vite.config.ts +0 -98
  232. package/dist/template/setup.sh +0 -30
  233. package/dist/template/tsconfig.json +0 -22
  234. package/dist/template/yarnrc.yml.template +0 -4
  235. package/dist/types/generators/init.d.ts +0 -5
  236. package/dist/types/generators/utils.d.ts +0 -45
  237. package/dist/types/scripts/configure-react-native-monorepo.d.ts +0 -23
  238. package/template/.devcontainer/Dockerfile +0 -26
  239. package/template/.devcontainer/devcontainer.json +0 -113
  240. package/template/.devcontainer/docker-compose.yml +0 -59
  241. package/template/.devcontainer/figma-mcp.sh +0 -32
  242. package/template/.devcontainer/setup.sh +0 -45
  243. package/template/.dockerignore +0 -151
  244. package/template/.env.example +0 -36
  245. package/template/.env.production +0 -56
  246. package/template/DOCKER.md +0 -0
  247. package/template/Dockerfile +0 -111
  248. package/template/README.md +0 -233
  249. package/template/docker/nginx/prod.conf +0 -238
  250. package/template/docker/nginx.conf +0 -131
  251. package/template/docker/postgres/init.sql +0 -41
  252. package/template/docker/prometheus/prometheus.yml +0 -52
  253. package/template/docker-compose.prod.yml +0 -146
  254. package/template/docker-compose.yml +0 -143
  255. package/template/jest.config.js +0 -20
  256. package/template/package.json +0 -45
  257. package/template/packages/api/.env.example +0 -6
  258. package/template/packages/api/README.md +0 -510
  259. package/template/packages/api/__tests__/api.test.ts +0 -26
  260. package/template/packages/api/jest.config.js +0 -23
  261. package/template/packages/api/jest.setup.js +0 -9
  262. package/template/packages/api/package.json +0 -66
  263. package/template/packages/api/src/context.ts +0 -52
  264. package/template/packages/api/src/controllers/TestController.ts +0 -0
  265. package/template/packages/api/src/graphql/builder.ts +0 -75
  266. package/template/packages/api/src/graphql/generated.ts +0 -64
  267. package/template/packages/api/src/graphql/index.ts +0 -75
  268. package/template/packages/api/src/graphql/types/index.ts +0 -44
  269. package/template/packages/api/src/graphql/types/test.ts +0 -245
  270. package/template/packages/api/src/index.ts +0 -26
  271. package/template/packages/api/src/lib/database.ts +0 -23
  272. package/template/packages/api/src/router/index.ts +0 -163
  273. package/template/packages/api/src/routers/test.ts +0 -161
  274. package/template/packages/api/src/server.ts +0 -68
  275. package/template/packages/api/src/trpc.ts +0 -28
  276. package/template/packages/api/tsconfig.json +0 -44
  277. package/template/packages/database/README.md +0 -162
  278. package/template/packages/database/package.json +0 -49
  279. package/template/packages/database/prisma/seed.ts +0 -64
  280. package/template/packages/database/schema.prisma +0 -107
  281. package/template/packages/database/src/index.ts +0 -15
  282. package/template/packages/database/src/validators.ts +0 -10
  283. package/template/packages/database/tsconfig.json +0 -18
  284. package/template/packages/mobile/README.md +0 -86
  285. package/template/packages/mobile/__tests__/App.test.tsx +0 -156
  286. package/template/packages/mobile/__tests__/components.test.tsx +0 -300
  287. package/template/packages/mobile/app.json +0 -5
  288. package/template/packages/mobile/babel.config.js +0 -26
  289. package/template/packages/mobile/index.js +0 -8
  290. package/template/packages/mobile/jest.config.js +0 -21
  291. package/template/packages/mobile/jest.setup.js +0 -12
  292. package/template/packages/mobile/metro.config.js +0 -36
  293. package/template/packages/mobile/package.json +0 -60
  294. package/template/packages/mobile/src/App.tsx +0 -8
  295. package/template/packages/mobile/src/utils/trpc.ts +0 -7
  296. package/template/packages/mobile/tsconfig.json +0 -28
  297. package/template/packages/shared/README.md +0 -135
  298. package/template/packages/shared/__tests__/shared.test.ts +0 -51
  299. package/template/packages/shared/jest.config.js +0 -22
  300. package/template/packages/shared/package.json +0 -68
  301. package/template/packages/shared/src/components/App.tsx +0 -57
  302. package/template/packages/shared/src/components/HelloWorld.tsx +0 -531
  303. package/template/packages/shared/src/components/index.ts +0 -1
  304. package/template/packages/shared/src/graphql/client.ts +0 -34
  305. package/template/packages/shared/src/index.ts +0 -25
  306. package/template/packages/shared/src/navigation/AppRouter.tsx +0 -565
  307. package/template/packages/shared/src/trpc/client.ts +0 -44
  308. package/template/packages/shared/src/unistyles.ts +0 -50
  309. package/template/packages/shared/tsconfig.json +0 -22
  310. package/template/packages/web/README.md +0 -131
  311. package/template/packages/web/__tests__/App.test.tsx +0 -342
  312. package/template/packages/web/__tests__/components.test.tsx +0 -564
  313. package/template/packages/web/index.html +0 -13
  314. package/template/packages/web/jest.config.js +0 -27
  315. package/template/packages/web/jest.setup.js +0 -24
  316. package/template/packages/web/package.json +0 -69
  317. package/template/packages/web/src/App.tsx +0 -14
  318. package/template/packages/web/src/components/TestDemo.tsx +0 -164
  319. package/template/packages/web/src/main.tsx +0 -27
  320. package/template/packages/web/src/utils/trpc.ts +0 -7
  321. package/template/packages/web/tsconfig.json +0 -26
  322. package/template/packages/web/vite.config.ts +0 -114
  323. package/template/setup.sh +0 -30
  324. package/template/tsconfig.json +0 -22
@@ -1 +0,0 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/generators/utils.ts"],"names":[],"mappings":"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"}
@@ -1,144 +0,0 @@
1
- "use strict";
2
- var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
- if (k2 === undefined) k2 = k;
4
- var desc = Object.getOwnPropertyDescriptor(m, k);
5
- if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
- desc = { enumerable: true, get: function() { return m[k]; } };
7
- }
8
- Object.defineProperty(o, k2, desc);
9
- }) : (function(o, m, k, k2) {
10
- if (k2 === undefined) k2 = k;
11
- o[k2] = m[k];
12
- }));
13
- var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
14
- Object.defineProperty(o, "default", { enumerable: true, value: v });
15
- }) : function(o, v) {
16
- o["default"] = v;
17
- });
18
- var __importStar = (this && this.__importStar) || (function () {
19
- var ownKeys = function(o) {
20
- ownKeys = Object.getOwnPropertyNames || function (o) {
21
- var ar = [];
22
- for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
23
- return ar;
24
- };
25
- return ownKeys(o);
26
- };
27
- return function (mod) {
28
- if (mod && mod.__esModule) return mod;
29
- var result = {};
30
- if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
31
- __setModuleDefault(result, mod);
32
- return result;
33
- };
34
- })();
35
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.configureAndroid = configureAndroid;
37
- exports.configureIOS = configureIOS;
38
- exports.configureReactNativeMonorepo = configureReactNativeMonorepo;
39
- const fs = __importStar(require("fs-extra"));
40
- const path = __importStar(require("path"));
41
- /**
42
- * Calculate relative path from mobile package to workspace root node_modules
43
- */
44
- function getRelativeNodeModulesPath(mobilePackagePath, workspaceRoot) {
45
- const relativePath = path.relative(mobilePackagePath, workspaceRoot);
46
- // Normalize to forward slashes for consistency
47
- return relativePath.replace(/\\/g, '/');
48
- }
49
- /**
50
- * Updates Android gradle files to use workspace root node_modules
51
- */
52
- async function configureAndroid(options) {
53
- const { mobilePackagePath, workspaceRoot } = options;
54
- const androidDir = path.join(mobilePackagePath, 'android');
55
- if (!await fs.pathExists(androidDir)) {
56
- console.log(' ⚠️ Android directory not found, skipping Android configuration');
57
- return;
58
- }
59
- const relativeRoot = getRelativeNodeModulesPath(path.join(androidDir, 'app'), workspaceRoot);
60
- const relativeRootFromSettings = getRelativeNodeModulesPath(androidDir, workspaceRoot);
61
- // 1. Update settings.gradle
62
- const settingsGradlePath = path.join(androidDir, 'settings.gradle');
63
- if (await fs.pathExists(settingsGradlePath)) {
64
- let settingsContent = await fs.readFile(settingsGradlePath, 'utf8');
65
- // Fix existing includeBuild paths to point to root node_modules
66
- settingsContent = settingsContent.replace(/includeBuild\(["']\.\.\/node_modules\/@react-native\/gradle-plugin["']\)/g, `includeBuild("${relativeRootFromSettings}/node_modules/@react-native/gradle-plugin")`);
67
- // Note: React Native 0.82+ uses autolinking via ReactSettingsExtension (ex.autolinkLibrariesFromCommand())
68
- // so we don't need to manually add native_modules.gradle anymore
69
- // The gradle plugin is already included via pluginManagement at the top of the file
70
- await fs.writeFile(settingsGradlePath, settingsContent);
71
- }
72
- // 2. Update build.gradle (top-level)
73
- const buildGradlePath = path.join(androidDir, 'build.gradle');
74
- if (await fs.pathExists(buildGradlePath)) {
75
- let buildContent = await fs.readFile(buildGradlePath, 'utf8');
76
- // Add rootProject.ext configuration BEFORE apply plugin line
77
- // This is critical - reactNativeDir must be set before the plugin applies
78
- const rootProjectConfig = `
79
- rootProject.ext {
80
- reactNativeDir = rootProject.file("${relativeRoot}/node_modules/react-native/")
81
- codegenDir = rootProject.file("${relativeRoot}/node_modules/@react-native/codegen/")
82
- }
83
- `;
84
- if (!buildContent.includes('reactNativeDir = rootProject.file')) {
85
- // Add before "apply plugin" line
86
- buildContent = buildContent.replace(/(apply plugin:\s*["']com\.facebook\.react\.rootproject["'])/, `${rootProjectConfig}\n$1`);
87
- await fs.writeFile(buildGradlePath, buildContent);
88
- }
89
- }
90
- // 3. Update app/build.gradle
91
- const appBuildGradlePath = path.join(androidDir, 'app', 'build.gradle');
92
- if (await fs.pathExists(appBuildGradlePath)) {
93
- let appBuildContent = await fs.readFile(appBuildGradlePath, 'utf8');
94
- // Update react {} block to point to root node_modules
95
- if (appBuildContent.includes('react {')) {
96
- // Uncomment and set reactNativeDir, codegenDir, and cliFile
97
- appBuildContent = appBuildContent.replace(/react\s*\{/, `react {
98
- /* Monorepo configuration - paths to workspace root node_modules */
99
- reactNativeDir = file("${relativeRoot}/node_modules/react-native")
100
- codegenDir = file("${relativeRoot}/node_modules/@react-native/codegen")
101
- cliFile = file("${relativeRoot}/node_modules/react-native/cli.js")`);
102
- await fs.writeFile(appBuildGradlePath, appBuildContent);
103
- }
104
- }
105
- console.log(' ✅ Android configured for monorepo');
106
- }
107
- /**
108
- * Updates iOS Podfile to use workspace root node_modules
109
- */
110
- async function configureIOS(options) {
111
- const { mobilePackagePath, workspaceRoot } = options;
112
- const iosDir = path.join(mobilePackagePath, 'ios');
113
- if (!await fs.pathExists(iosDir)) {
114
- console.log(' ⚠️ iOS directory not found, skipping iOS configuration');
115
- return;
116
- }
117
- const podfilePath = path.join(iosDir, 'Podfile');
118
- if (!await fs.pathExists(podfilePath)) {
119
- console.log(' ⚠️ Podfile not found, skipping iOS configuration');
120
- return;
121
- }
122
- const relativeRoot = getRelativeNodeModulesPath(iosDir, workspaceRoot);
123
- let podfileContent = await fs.readFile(podfilePath, 'utf8');
124
- // Update the paths to react-native from root node_modules
125
- // Replace relative paths like ../node_modules/react-native with workspace root paths
126
- podfileContent = podfileContent.replace(/['"]\.\.\/node_modules\/react-native['"]/g, `'${relativeRoot}/node_modules/react-native'`);
127
- // Also handle cases where it's used in require statements
128
- podfileContent = podfileContent.replace(/require_relative\s+['"]\.\.\/node_modules\/react-native/g, `require_relative '${relativeRoot}/node_modules/react-native`);
129
- // Update Flipper configuration if present
130
- podfileContent = podfileContent.replace(/['"]\.\.\/node_modules\/react-native-flipper['"]/g, `'${relativeRoot}/node_modules/react-native-flipper'`);
131
- await fs.writeFile(podfilePath, podfileContent);
132
- console.log(' ✅ iOS configured for monorepo');
133
- }
134
- /**
135
- * Main function to configure both Android and iOS
136
- */
137
- async function configureReactNativeMonorepo(mobilePackagePath, workspaceRoot) {
138
- console.log('🔧 Configuring React Native for monorepo...');
139
- const options = { mobilePackagePath, workspaceRoot };
140
- await configureAndroid(options);
141
- await configureIOS(options);
142
- console.log('✅ React Native monorepo configuration complete');
143
- }
144
- //# sourceMappingURL=configure-react-native-monorepo.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"configure-react-native-monorepo.js","sourceRoot":"","sources":["../../src/scripts/configure-react-native-monorepo.ts"],"names":[],"mappings":"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"}
@@ -1,26 +0,0 @@
1
- FROM node:20-bullseye
2
-
3
- # Install additional tools including gosu for proper user switching
4
- RUN apt-get update && apt-get install -y \
5
- git \
6
- postgresql-client \
7
- && rm -rf /var/lib/apt/lists/*
8
-
9
- # Enable corepack for yarn
10
- RUN corepack enable
11
-
12
- # Install global tools that might be useful
13
- RUN npm install -g @expo/cli @anthropic-ai/claude-code
14
-
15
- # Set up git (will be configured in setup script)
16
- RUN git config --global init.defaultBranch main
17
-
18
- # Create workspace directory
19
- RUN mkdir -p /workspace
20
- WORKDIR /workspace
21
- RUN chown -R node:node /workspace
22
-
23
- # Note: We don't switch to node user here anymore - entrypoint.sh will do it
24
- # This allows the entrypoint to fix permissions as root first
25
-
26
- USER node
@@ -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,2 +0,0 @@
1
- # Environment variables (contains secrets)
2
- .env
@@ -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!"
File without changes
@@ -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"]