@donotdev/cli 0.0.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.
Files changed (281) hide show
  1. package/LICENSE.md +48 -0
  2. package/README.md +291 -0
  3. package/dependencies-matrix.json +694 -0
  4. package/dist/bin/commands/build.d.ts +11 -0
  5. package/dist/bin/commands/build.d.ts.map +1 -0
  6. package/dist/bin/commands/build.js +8162 -0
  7. package/dist/bin/commands/build.js.map +1 -0
  8. package/dist/bin/commands/bump.d.ts +11 -0
  9. package/dist/bin/commands/bump.d.ts.map +1 -0
  10. package/dist/bin/commands/bump.js +8004 -0
  11. package/dist/bin/commands/bump.js.map +1 -0
  12. package/dist/bin/commands/cacheout.d.ts +11 -0
  13. package/dist/bin/commands/cacheout.d.ts.map +1 -0
  14. package/dist/bin/commands/cacheout.js +7630 -0
  15. package/dist/bin/commands/cacheout.js.map +1 -0
  16. package/dist/bin/commands/create-app.d.ts +11 -0
  17. package/dist/bin/commands/create-app.d.ts.map +1 -0
  18. package/dist/bin/commands/create-app.js +9032 -0
  19. package/dist/bin/commands/create-app.js.map +1 -0
  20. package/dist/bin/commands/create-project.d.ts +11 -0
  21. package/dist/bin/commands/create-project.d.ts.map +1 -0
  22. package/dist/bin/commands/create-project.js +9643 -0
  23. package/dist/bin/commands/create-project.js.map +1 -0
  24. package/dist/bin/commands/deploy.d.ts +11 -0
  25. package/dist/bin/commands/deploy.d.ts.map +1 -0
  26. package/dist/bin/commands/deploy.js +9007 -0
  27. package/dist/bin/commands/deploy.js.map +1 -0
  28. package/dist/bin/commands/dev.d.ts +11 -0
  29. package/dist/bin/commands/dev.d.ts.map +1 -0
  30. package/dist/bin/commands/dev.js +7892 -0
  31. package/dist/bin/commands/dev.js.map +1 -0
  32. package/dist/bin/commands/emu.d.ts +11 -0
  33. package/dist/bin/commands/emu.d.ts.map +1 -0
  34. package/dist/bin/commands/emu.js +8302 -0
  35. package/dist/bin/commands/emu.js.map +1 -0
  36. package/dist/bin/commands/format.d.ts +11 -0
  37. package/dist/bin/commands/format.d.ts.map +1 -0
  38. package/dist/bin/commands/format.js +8009 -0
  39. package/dist/bin/commands/format.js.map +1 -0
  40. package/dist/bin/commands/lint.d.ts +11 -0
  41. package/dist/bin/commands/lint.d.ts.map +1 -0
  42. package/dist/bin/commands/lint.js +7481 -0
  43. package/dist/bin/commands/lint.js.map +1 -0
  44. package/dist/bin/commands/preview.d.ts +11 -0
  45. package/dist/bin/commands/preview.d.ts.map +1 -0
  46. package/dist/bin/commands/preview.js +7909 -0
  47. package/dist/bin/commands/preview.js.map +1 -0
  48. package/dist/bin/commands/sync-secrets.d.ts +11 -0
  49. package/dist/bin/commands/sync-secrets.d.ts.map +1 -0
  50. package/dist/bin/commands/sync-secrets.js +8227 -0
  51. package/dist/bin/commands/sync-secrets.js.map +1 -0
  52. package/dist/bin/dndev.js +222 -0
  53. package/dist/bin/donotdev.js +222 -0
  54. package/dist/index.d.ts +8 -0
  55. package/dist/index.d.ts.map +1 -0
  56. package/dist/index.js +12820 -0
  57. package/dist/index.js.map +1 -0
  58. package/package.json +71 -0
  59. package/templates/app-demo/index.html.example +20 -0
  60. package/templates/app-demo/public/favicon.ico.example +0 -0
  61. package/templates/app-demo/public/fonts/Roboto-400-cyrillic-ext.woff2.example +0 -0
  62. package/templates/app-demo/public/fonts/Roboto-400-cyrillic.woff2.example +0 -0
  63. package/templates/app-demo/public/fonts/Roboto-400-greek-ext.woff2.example +0 -0
  64. package/templates/app-demo/public/fonts/Roboto-400-greek.woff2.example +0 -0
  65. package/templates/app-demo/public/fonts/Roboto-400-latin-ext.woff2.example +0 -0
  66. package/templates/app-demo/public/fonts/Roboto-400-latin.woff2.example +0 -0
  67. package/templates/app-demo/public/fonts/Roboto-400-vietnamese.woff2.example +0 -0
  68. package/templates/app-demo/public/fonts/Roboto-700-cyrillic-ext.woff2.example +0 -0
  69. package/templates/app-demo/public/fonts/Roboto-700-cyrillic.woff2.example +0 -0
  70. package/templates/app-demo/public/fonts/Roboto-700-greek-ext.woff2.example +0 -0
  71. package/templates/app-demo/public/fonts/Roboto-700-greek.woff2.example +0 -0
  72. package/templates/app-demo/public/fonts/Roboto-700-latin-ext.woff2.example +0 -0
  73. package/templates/app-demo/public/fonts/Roboto-700-latin.woff2.example +0 -0
  74. package/templates/app-demo/public/fonts/Roboto-700-vietnamese.woff2.example +0 -0
  75. package/templates/app-demo/public/fonts/fonts.css.example +144 -0
  76. package/templates/app-demo/public/logo.png.example +0 -0
  77. package/templates/app-demo/public/logo.svg.example +1 -0
  78. package/templates/app-demo/public/manifest.json.example +10 -0
  79. package/templates/app-demo/src/App.tsx.example +17 -0
  80. package/templates/app-demo/src/Routes.tsx.example +20 -0
  81. package/templates/app-demo/src/components/ThemeToggle.tsx.example +48 -0
  82. package/templates/app-demo/src/globals.css.example +4 -0
  83. package/templates/app-demo/src/main.tsx.example +27 -0
  84. package/templates/app-demo/src/pages/DetailPage.tsx.example +103 -0
  85. package/templates/app-demo/src/pages/FullPage.tsx.example +142 -0
  86. package/templates/app-demo/src/pages/HomePage.tsx.example +79 -0
  87. package/templates/app-demo/src/pages/components/ComponentRenderer.tsx.example +511 -0
  88. package/templates/app-demo/src/pages/components/ComponentsData.tsx.example +152 -0
  89. package/templates/app-demo/src/pages/components/DemoLayout.tsx.example +266 -0
  90. package/templates/app-demo/src/pages/components/LayoutRoute.tsx.example +20 -0
  91. package/templates/app-demo/src/pages/components/componentConfig.ts.example +921 -0
  92. package/templates/app-demo/src/themes.css.example +179 -0
  93. package/templates/app-demo/tsconfig.json.example +9 -0
  94. package/templates/app-demo/vite.config.ts.example +53 -0
  95. package/templates/app-next/.env.example +92 -0
  96. package/templates/app-next/next.config.ts.example +8 -0
  97. package/templates/app-next/postcss.config.js.example +58 -0
  98. package/templates/app-next/service-account-key.json.example +2 -0
  99. package/templates/app-next/src/app/ClientLayout.tsx.example +39 -0
  100. package/templates/app-next/src/app/layout.tsx.example +52 -0
  101. package/templates/app-next/src/app/not-found.tsx.example +21 -0
  102. package/templates/app-next/src/config/app.ts.example +75 -0
  103. package/templates/app-next/src/config/legal.ts.example +170 -0
  104. package/templates/app-next/src/globals.css.example +15 -0
  105. package/templates/app-next/src/locales/dndev_en.json.example +516 -0
  106. package/templates/app-next/src/pages/HomePage.tsx.example +20 -0
  107. package/templates/app-next/src/pages/legal/LegalNoticePage.tsx.example +75 -0
  108. package/templates/app-next/src/pages/legal/PrivacyPage.tsx.example +69 -0
  109. package/templates/app-next/src/pages/legal/TermsPage.tsx.example +71 -0
  110. package/templates/app-next/src/themes.css.example +179 -0
  111. package/templates/app-next/tsconfig.json.example +11 -0
  112. package/templates/app-payload/.env.example +28 -0
  113. package/templates/app-payload/README.md.example +233 -0
  114. package/templates/app-payload/collections/Company.ts.example +125 -0
  115. package/templates/app-payload/collections/Hero.ts.example +62 -0
  116. package/templates/app-payload/collections/Media.ts.example +41 -0
  117. package/templates/app-payload/collections/Products.ts.example +115 -0
  118. package/templates/app-payload/collections/Services.ts.example +104 -0
  119. package/templates/app-payload/collections/Testimonials.ts.example +92 -0
  120. package/templates/app-payload/collections/Users.ts.example +35 -0
  121. package/templates/app-payload/src/server.ts.example +79 -0
  122. package/templates/app-payload/tsconfig.json.example +24 -0
  123. package/templates/app-vite/.env.example +77 -0
  124. package/templates/app-vite/index.html.example +127 -0
  125. package/templates/app-vite/service-account-key.json.example +2 -0
  126. package/templates/app-vite/src/App.tsx.example +39 -0
  127. package/templates/app-vite/src/Routes.tsx.example +16 -0
  128. package/templates/app-vite/src/config/app.ts.example +75 -0
  129. package/templates/app-vite/src/config/legal.ts.example +170 -0
  130. package/templates/app-vite/src/globals.css.example +11 -0
  131. package/templates/app-vite/src/locales/dndev_en.json.example +516 -0
  132. package/templates/app-vite/src/main.tsx.example +21 -0
  133. package/templates/app-vite/src/pages/HomePage.tsx.example +22 -0
  134. package/templates/app-vite/src/pages/NotFoundPage.tsx.example +33 -0
  135. package/templates/app-vite/src/pages/legal/LegalNoticePage.tsx.example +75 -0
  136. package/templates/app-vite/src/pages/legal/PrivacyPage.tsx.example +69 -0
  137. package/templates/app-vite/src/pages/legal/TermsPage.tsx.example +71 -0
  138. package/templates/app-vite/src/pages/locales/README.md.example +1 -0
  139. package/templates/app-vite/src/pages/locales/example_en.json.example +5 -0
  140. package/templates/app-vite/src/themes.css.example +179 -0
  141. package/templates/app-vite/tsconfig.json.example +9 -0
  142. package/templates/app-vite/vite.config.ts.example +9 -0
  143. package/templates/functions-firebase/README.md.example +129 -0
  144. package/templates/functions-firebase/build.mjs.example +52 -0
  145. package/templates/functions-firebase/functions-firebase/.env.example.example +45 -0
  146. package/templates/functions-firebase/functions-firebase/README.md.example +123 -0
  147. package/templates/functions-firebase/functions-firebase/build.mjs.example +52 -0
  148. package/templates/functions-firebase/functions-firebase/src/auth/getCustomClaims.ts.example +19 -0
  149. package/templates/functions-firebase/functions-firebase/src/auth/getUserAuthStatus.ts.example +21 -0
  150. package/templates/functions-firebase/functions-firebase/src/auth/index.ts.example +11 -0
  151. package/templates/functions-firebase/functions-firebase/src/auth/removeCustomClaims.ts.example +21 -0
  152. package/templates/functions-firebase/functions-firebase/src/auth/setCustomClaims.ts.example +21 -0
  153. package/templates/functions-firebase/functions-firebase/src/billing/handleStripeWebhook.ts.example +24 -0
  154. package/templates/functions-firebase/functions-firebase/src/billing/index.ts.example +10 -0
  155. package/templates/functions-firebase/functions-firebase/src/billing/processPaymentSuccess.ts.example +14 -0
  156. package/templates/functions-firebase/functions-firebase/src/billing/refreshSubscriptionStatus.ts.example +14 -0
  157. package/templates/functions-firebase/functions-firebase/src/crud/createEntity.ts.example +19 -0
  158. package/templates/functions-firebase/functions-firebase/src/crud/deleteEntity.ts.example +14 -0
  159. package/templates/functions-firebase/functions-firebase/src/crud/getEntity.ts.example +14 -0
  160. package/templates/functions-firebase/functions-firebase/src/crud/index.ts.example +12 -0
  161. package/templates/functions-firebase/functions-firebase/src/crud/listEntities.ts.example +14 -0
  162. package/templates/functions-firebase/functions-firebase/src/crud/updateEntity.ts.example +14 -0
  163. package/templates/functions-firebase/functions-firebase/src/index.ts.example +45 -0
  164. package/templates/functions-firebase/functions-firebase/src/oauth/checkGitHubAccess.ts.example +14 -0
  165. package/templates/functions-firebase/functions-firebase/src/oauth/disconnect.ts.example +14 -0
  166. package/templates/functions-firebase/functions-firebase/src/oauth/exchangeToken.ts.example +14 -0
  167. package/templates/functions-firebase/functions-firebase/src/oauth/getConnections.ts.example +14 -0
  168. package/templates/functions-firebase/functions-firebase/src/oauth/grantGitHubAccess.ts.example +14 -0
  169. package/templates/functions-firebase/functions-firebase/src/oauth/index.ts.example +17 -0
  170. package/templates/functions-firebase/functions-firebase/src/oauth/refreshToken.ts.example +14 -0
  171. package/templates/functions-firebase/functions-firebase/src/oauth/revokeGitHubAccess.ts.example +14 -0
  172. package/templates/functions-firebase/functions-firebase/tsconfig.json.example +21 -0
  173. package/templates/functions-firebase/functions.yaml.example +14 -0
  174. package/templates/functions-firebase/src/auth/getCustomClaims.ts.example +19 -0
  175. package/templates/functions-firebase/src/auth/getUserAuthStatus.ts.example +21 -0
  176. package/templates/functions-firebase/src/auth/index.ts.example +11 -0
  177. package/templates/functions-firebase/src/auth/removeCustomClaims.ts.example +21 -0
  178. package/templates/functions-firebase/src/auth/setCustomClaims.ts.example +21 -0
  179. package/templates/functions-firebase/src/billing/handleStripeWebhook.ts.example +24 -0
  180. package/templates/functions-firebase/src/billing/index.ts.example +10 -0
  181. package/templates/functions-firebase/src/billing/processPaymentSuccess.ts.example +14 -0
  182. package/templates/functions-firebase/src/billing/refreshSubscriptionStatus.ts.example +14 -0
  183. package/templates/functions-firebase/src/crud/createEntity.ts.example +19 -0
  184. package/templates/functions-firebase/src/crud/deleteEntity.ts.example +14 -0
  185. package/templates/functions-firebase/src/crud/getEntity.ts.example +14 -0
  186. package/templates/functions-firebase/src/crud/index.ts.example +12 -0
  187. package/templates/functions-firebase/src/crud/listEntities.ts.example +14 -0
  188. package/templates/functions-firebase/src/crud/updateEntity.ts.example +14 -0
  189. package/templates/functions-firebase/src/index.ts.example +45 -0
  190. package/templates/functions-firebase/src/oauth/checkGitHubAccess.ts.example +14 -0
  191. package/templates/functions-firebase/src/oauth/disconnect.ts.example +14 -0
  192. package/templates/functions-firebase/src/oauth/exchangeToken.ts.example +14 -0
  193. package/templates/functions-firebase/src/oauth/getConnections.ts.example +14 -0
  194. package/templates/functions-firebase/src/oauth/grantGitHubAccess.ts.example +14 -0
  195. package/templates/functions-firebase/src/oauth/index.ts.example +17 -0
  196. package/templates/functions-firebase/src/oauth/refreshToken.ts.example +14 -0
  197. package/templates/functions-firebase/src/oauth/revokeGitHubAccess.ts.example +14 -0
  198. package/templates/functions-firebase/tsconfig.json.example +24 -0
  199. package/templates/functions-vercel/README.md.example +116 -0
  200. package/templates/functions-vercel/build.mjs.example +52 -0
  201. package/templates/functions-vercel/functions-vercel/.env.example.example +37 -0
  202. package/templates/functions-vercel/functions-vercel/README.md.example +116 -0
  203. package/templates/functions-vercel/functions-vercel/build.mjs.example +52 -0
  204. package/templates/functions-vercel/functions-vercel/src/api/auth/getCustomClaims.ts.example +20 -0
  205. package/templates/functions-vercel/functions-vercel/src/api/auth/getUserAuthStatus.ts.example +20 -0
  206. package/templates/functions-vercel/functions-vercel/src/api/auth/removeCustomClaims.ts.example +20 -0
  207. package/templates/functions-vercel/functions-vercel/src/api/auth/setCustomClaims.ts.example +20 -0
  208. package/templates/functions-vercel/functions-vercel/src/api/billing/handleStripeWebhook.ts.example +20 -0
  209. package/templates/functions-vercel/functions-vercel/src/api/billing/processPaymentSuccess.ts.example +20 -0
  210. package/templates/functions-vercel/functions-vercel/src/api/billing/refreshSubscriptionStatus.ts.example +20 -0
  211. package/templates/functions-vercel/functions-vercel/src/api/crud/createEntity.ts.example +20 -0
  212. package/templates/functions-vercel/functions-vercel/src/api/crud/deleteEntity.ts.example +20 -0
  213. package/templates/functions-vercel/functions-vercel/src/api/crud/getEntity.ts.example +20 -0
  214. package/templates/functions-vercel/functions-vercel/src/api/crud/listEntities.ts.example +20 -0
  215. package/templates/functions-vercel/functions-vercel/src/api/crud/updateEntity.ts.example +20 -0
  216. package/templates/functions-vercel/functions-vercel/src/api/oauth/checkGitHubAccess.ts.example +20 -0
  217. package/templates/functions-vercel/functions-vercel/src/api/oauth/disconnect.ts.example +20 -0
  218. package/templates/functions-vercel/functions-vercel/src/api/oauth/exchangeToken.ts.example +20 -0
  219. package/templates/functions-vercel/functions-vercel/src/api/oauth/getConnections.ts.example +20 -0
  220. package/templates/functions-vercel/functions-vercel/src/api/oauth/grantGitHubAccess.ts.example +20 -0
  221. package/templates/functions-vercel/functions-vercel/src/api/oauth/refreshToken.ts.example +20 -0
  222. package/templates/functions-vercel/functions-vercel/src/api/oauth/revokeGitHubAccess.ts.example +20 -0
  223. package/templates/functions-vercel/functions-vercel/tsconfig.json.example +21 -0
  224. package/templates/functions-vercel/functions-vercel/vercel.json.example +14 -0
  225. package/templates/functions-vercel/src/api/auth/getCustomClaims.ts.example +20 -0
  226. package/templates/functions-vercel/src/api/auth/getUserAuthStatus.ts.example +20 -0
  227. package/templates/functions-vercel/src/api/auth/removeCustomClaims.ts.example +20 -0
  228. package/templates/functions-vercel/src/api/auth/setCustomClaims.ts.example +20 -0
  229. package/templates/functions-vercel/src/api/billing/handleStripeWebhook.ts.example +20 -0
  230. package/templates/functions-vercel/src/api/billing/processPaymentSuccess.ts.example +20 -0
  231. package/templates/functions-vercel/src/api/billing/refreshSubscriptionStatus.ts.example +20 -0
  232. package/templates/functions-vercel/src/api/crud/createEntity.ts.example +20 -0
  233. package/templates/functions-vercel/src/api/crud/deleteEntity.ts.example +20 -0
  234. package/templates/functions-vercel/src/api/crud/getEntity.ts.example +20 -0
  235. package/templates/functions-vercel/src/api/crud/listEntities.ts.example +20 -0
  236. package/templates/functions-vercel/src/api/crud/updateEntity.ts.example +20 -0
  237. package/templates/functions-vercel/src/api/oauth/checkGitHubAccess.ts.example +20 -0
  238. package/templates/functions-vercel/src/api/oauth/disconnect.ts.example +20 -0
  239. package/templates/functions-vercel/src/api/oauth/exchangeToken.ts.example +20 -0
  240. package/templates/functions-vercel/src/api/oauth/getConnections.ts.example +20 -0
  241. package/templates/functions-vercel/src/api/oauth/grantGitHubAccess.ts.example +20 -0
  242. package/templates/functions-vercel/src/api/oauth/refreshToken.ts.example +20 -0
  243. package/templates/functions-vercel/src/api/oauth/revokeGitHubAccess.ts.example +20 -0
  244. package/templates/functions-vercel/tsconfig.json.example +24 -0
  245. package/templates/functions-vercel/vercel.json.example +14 -0
  246. package/templates/github/github/workflows/firebase-deploy.yml.example +79 -0
  247. package/templates/github/workflows/firebase-deploy.yml.example +79 -0
  248. package/templates/root-consumer/.env.example +19 -0
  249. package/templates/root-consumer/.gitignore.example +82 -0
  250. package/templates/root-consumer/.prettierrc.cjs.example +12 -0
  251. package/templates/root-consumer/CLAUDE.md.example +73 -0
  252. package/templates/root-consumer/README.md.example +295 -0
  253. package/templates/root-consumer/bunfig.toml.example +68 -0
  254. package/templates/root-consumer/eslint.config.js.example +336 -0
  255. package/templates/root-consumer/firebase.json.example +348 -0
  256. package/templates/root-consumer/guides/AGENT_START_HERE.md.example +98 -0
  257. package/templates/root-consumer/guides/APP_CHECK_SETUP.md.example +111 -0
  258. package/templates/root-consumer/guides/AUTH_SETUP.md.example +92 -0
  259. package/templates/root-consumer/guides/BILLING_SETUP.md.example +120 -0
  260. package/templates/root-consumer/guides/CLI.md.example +293 -0
  261. package/templates/root-consumer/guides/COMPONENTS.md.example +875 -0
  262. package/templates/root-consumer/guides/CONFIG_SETUP.md.example +132 -0
  263. package/templates/root-consumer/guides/EMULATOR_SETUP.md.example +48 -0
  264. package/templates/root-consumer/guides/FEATURES.md.example +286 -0
  265. package/templates/root-consumer/guides/FRAMEWORK_OVERVIEW.md.example +97 -0
  266. package/templates/root-consumer/guides/FUNCTIONS.md.example +177 -0
  267. package/templates/root-consumer/guides/GETTING_STARTED.md.example +451 -0
  268. package/templates/root-consumer/guides/HOW_TO_USE.md.example +296 -0
  269. package/templates/root-consumer/guides/I18N_SETUP.md.example +204 -0
  270. package/templates/root-consumer/guides/IMPORT_PATTERNS.md.example +79 -0
  271. package/templates/root-consumer/guides/INDEX.md.example +50 -0
  272. package/templates/root-consumer/guides/INSTALLATION.md.example +296 -0
  273. package/templates/root-consumer/guides/LAYOUTS.md.example +310 -0
  274. package/templates/root-consumer/guides/PAGES_SETUP.md.example +123 -0
  275. package/templates/root-consumer/guides/STYLING.md.example +273 -0
  276. package/templates/root-consumer/guides/THEMING_SETUP.md.example +119 -0
  277. package/templates/root-consumer/guides/VERSION_CONTROL.md.example +181 -0
  278. package/templates/root-consumer/tsconfig.functions.json.example +15 -0
  279. package/templates/root-consumer/tsconfig.json.example +18 -0
  280. package/templates/root-consumer/turbo.json.example +46 -0
  281. package/templates/root-consumer/vercel.json.example +124 -0
@@ -0,0 +1,73 @@
1
+ # Agent Behavior - All Projects
2
+
3
+ **⚠️ CRITICAL: READ FIRST - ENFORCE ALWAYS ⚠️**
4
+
5
+ **NEVER act without explicit command. Questions = analysis only.**
6
+ **Commands = execute immediately. No assumptions, no auto-actions.**
7
+
8
+ ---
9
+
10
+ **PRIME DIRECTIVE: PRECISION OVER SPEED.**
11
+
12
+ ## **Correctness is non-negotiable. Concise, even at the cost of grammar. Never guess, every output must be verifiable. Check every assumption against actual codebase, documentation or user. If ambiguity exists, ask. No exceptions.**
13
+
14
+ ## Identity & Persona Mandate
15
+
16
+ **Human user** - Architect, Product Owner, Product Manager
17
+ **AI assistant** - Lead Developer, UX/UI Designer, Expert Adviser
18
+
19
+ **Objective:** Multi-faceted, critical advisor applications. Blunt, on-point feedback driving applications quality. No sugarcoating.
20
+
21
+ Persona adapts to task:
22
+
23
+ - **Lead Developer:** Implementation, code quality, patterns respect
24
+ - **UX/UI Designer:** UX/UI considerations
25
+ - **Expert Adviser:** Strategic feedback, trade-offs
26
+
27
+ ## Communication Style
28
+
29
+ Extremely concise. Sacrifice grammar for concision while maintaining correctness.
30
+ Never guess, always search (codebase, documentation, online) or ask.
31
+
32
+ **Response hygiene:**
33
+
34
+ - NO MIRRORING - never echo user's tone, mood, or phrasing
35
+ - ALWAYS DELIVER facts, analysis, decisions; no motivation or encouragement
36
+ - ALWAYS and ONLY execute the task at hand
37
+
38
+ **Examples:**
39
+
40
+ - ❌ "I will now proceed to update the configuration file"
41
+ - ✅ "Updating config"
42
+ - ❌ "Added support for dark mode theming"
43
+ - ✅ "add dark mode support"
44
+ - ❌ "I have implemented the feature you requested"
45
+ - ✅ "Done"
46
+
47
+ **ALWAYS DO**
48
+
49
+ - Brutal, blunt honest feedback
50
+ - Challenge ideas aggressively
51
+ - Provide pros/cons/trade-offs with evidence/research/studies
52
+ - Suggest better approaches
53
+ - Extremely concise
54
+ - **NEVER act without explicit command** - Questions are for analysis only
55
+ - **NEVER ask follow-up questions** like "Do you want me to...?" or "Should I...?"
56
+
57
+ ## Plans
58
+
59
+ At end of each plan, list unresolved questions (if any). Extremely concise.
60
+
61
+ **Example:**
62
+
63
+ ```
64
+ **Unresolved:**
65
+ - Auth strategy ? (google or more?)
66
+ - Backend target? (Vercel vs Firebase)
67
+ ```
68
+
69
+ ## Environment Constraints
70
+
71
+ ## General Principles
72
+ - **Code reading/writing:** Be critical and concise/precise. Question redundant systems, conflicting logic, unnecessary complexity. You need to **ANALYZE** code.
73
+ - **Conventions:** Always follow project's conventions when updating/adding/fixing files
@@ -0,0 +1,295 @@
1
+ # {{projectName}}
2
+
3
+ **Built with [DoNotDev Framework](https://donotdev.com)**
4
+
5
+ ## 🚀 Quick Start
6
+
7
+ ```bash
8
+ # Install dependencies
9
+ bun install
10
+
11
+ # Start development server
12
+ bun run dev
13
+
14
+ # Build for production
15
+ bun run build
16
+ ```
17
+
18
+ ## 📦 What's Included
19
+
20
+ This project is scaffolded with:
21
+
22
+ - ✅ **DoNotDev Framework** - Modern React framework with auth, billing, i18n
23
+ - ✅ **Vite** - Lightning-fast development
24
+ - ✅ **TypeScript** - Type-safe throughout
25
+ - ✅ **Firebase** - Authentication & database ready
26
+ - ✅ **Stripe** - Billing integration ready (optional)
27
+ - ✅ **i18n** - Multi-language support (8 languages)
28
+ - ✅ **Themes** - Dark mode & custom themes
29
+
30
+ ## 📁 Project Structure
31
+
32
+ ```
33
+ {{projectName}}/
34
+ ├── src/
35
+ │ ├── pages/ # Auto-discovered routes
36
+ │ │ └── HomePage.tsx # Your landing page
37
+ │ ├── components/ # Your components
38
+ │ ├── App.tsx # App entry point
39
+ │ └── main.tsx # Vite entry
40
+ ├── public/
41
+ │ └── assets/
42
+ │ ├── themes/ # Custom theme files
43
+ │ └── locales/ # Translation files
44
+ ├── CLAUDE.md # Guide for AI agents
45
+ └── package.json
46
+ ```
47
+
48
+ ## 🔧 Configuration
49
+
50
+ ### License Key
51
+
52
+ This project uses `@donotdev` packages from npm. To remove the watermark, add your license key:
53
+
54
+ 1. Get your license key from [donotdev.com/pricing](https://donotdev.com/pricing)
55
+ 2. Add to `.env` file:
56
+ ```env
57
+ VITE_DONOTDEV_LICENSE_KEY=dndev_your_key_here
58
+ ```
59
+ Or for Next.js:
60
+ ```env
61
+ NEXT_PUBLIC_DONOTDEV_LICENSE_KEY=dndev_your_key_here
62
+ ```
63
+
64
+ ### Environment Variables
65
+
66
+ 1. Copy `.env.example` to `.env`:
67
+ ```bash
68
+ cp .env.example .env
69
+ ```
70
+
71
+ 2. Update the values:
72
+ ```env
73
+ VITE_FIREBASE_API_KEY=your-api-key
74
+ VITE_FIREBASE_PROJECT_ID=your-project-id
75
+ VITE_FIREBASE_AUTH_DOMAIN=your-auth-domain
76
+ ```
77
+
78
+ ### Features Configuration
79
+
80
+ Edit `vite.config.ts` to enable/disable features:
81
+
82
+ ```typescript
83
+ export default defineConfig({
84
+ plugins: [
85
+ doNotDevPlugin({
86
+ features: {
87
+ enabled: ['auth', 'billing', 'oauth'],
88
+ },
89
+ }),
90
+ ],
91
+ });
92
+ ```
93
+
94
+ ## 🎨 Customization
95
+
96
+ ### Adding Your Logo
97
+
98
+ Add your `logo.svg` to `public/`:
99
+
100
+ - Framework will prompt during build if missing: "Do you want us to provide one from the framework?"
101
+ - Or manually copy from `node_modules/@donotdev/ui/assets/logo.svg`
102
+ - Framework automatically generates favicon, app icons, and PWA assets from your logo
103
+
104
+ ### Add a New Page
105
+
106
+ Create a file in `src/pages/`:
107
+
108
+ ```tsx
109
+ // src/pages/AboutPage.tsx
110
+ import { PageContainer } from '@donotdev/ui';
111
+ import { Info } from 'lucide-react';
112
+ import type { PageMeta } from '@donotdev/core';
113
+
114
+ export const meta: PageMeta = {
115
+ namespace: 'about',
116
+ icon: <Info />,
117
+ };
118
+
119
+ export default function AboutPage() {
120
+ return (
121
+ <PageContainer variant="standard">
122
+ <h1>About Us</h1>
123
+ </PageContainer>
124
+ );
125
+ }
126
+ ```
127
+
128
+ Route auto-discovered as `/about` ✨
129
+
130
+ ### Add Translations
131
+
132
+ Create/edit `public/assets/locales/about_en.json`:
133
+
134
+ ```json
135
+ {
136
+ "title": "About Us",
137
+ "description": "Learn more about our mission"
138
+ }
139
+ ```
140
+
141
+ ### Add Custom Theme
142
+
143
+ Edit `src/themes.css`:
144
+
145
+ ```css
146
+ .ocean {
147
+ --theme-icon: 'Waves';
148
+ --theme-label: 'Ocean';
149
+ --primary: #0ea5e9;
150
+ --background: #0a1929;
151
+ }
152
+ ```
153
+
154
+ ## 🔐 Authentication
155
+
156
+ Enable Firebase Auth:
157
+
158
+ 1. Set up Firebase project
159
+ 2. Enable authentication methods
160
+ 3. Update `.env` with Firebase credentials
161
+ 4. Use in your pages:
162
+
163
+ ```tsx
164
+ import { useAuth } from '@donotdev/auth';
165
+
166
+ export default function ProfilePage() {
167
+ const { user, signOut } = useAuth();
168
+ return <div>Hello, {user?.displayName}!</div>;
169
+ }
170
+ ```
171
+
172
+ ## 💳 Billing (Optional)
173
+
174
+ Enable Stripe:
175
+
176
+ 1. Create Stripe account
177
+ 2. Add Stripe keys to `.env`
178
+ 3. Enable in `vite.config.ts`
179
+ 4. Use in your pages:
180
+
181
+ ```tsx
182
+ import { useStripeBilling } from '@donotdev/billing';
183
+
184
+ export default function PricingPage() {
185
+ const { createCheckoutSession } = useStripeBilling();
186
+ return <button onClick={() => createCheckoutSession('pro')}>
187
+ Upgrade to Pro
188
+ </button>;
189
+ }
190
+ ```
191
+
192
+ ## 🚢 Deployment
193
+
194
+ ### Firebase Hosting
195
+
196
+ ```bash
197
+ # Install Firebase CLI
198
+ npm install -g firebase-tools
199
+
200
+ # Login and init
201
+ firebase login
202
+ firebase init hosting
203
+
204
+ # Deploy
205
+ bun run build
206
+ firebase deploy
207
+ ```
208
+
209
+ ### Vercel
210
+
211
+ ```bash
212
+ # Install Vercel CLI
213
+ npm install -g vercel
214
+
215
+ # Deploy
216
+ vercel
217
+ ```
218
+
219
+ ## 🤖 Working with AI Agents
220
+
221
+ This project includes `CLAUDE.md` - a guide for AI agents like Claude, ChatGPT, etc.
222
+
223
+ When working with an AI:
224
+ 1. The AI will automatically read `CLAUDE.md`
225
+ 2. The AI will understand the framework conventions
226
+ 3. Ask the AI to create pages, add features, fix bugs, etc.
227
+
228
+ **Example prompts:**
229
+ - "Create a blog page with post listing"
230
+ - "Add French translations for the home page"
231
+ - "Create a protected dashboard page that requires authentication"
232
+ - "Add a pricing page with Stripe integration"
233
+
234
+ ## 📚 Documentation
235
+
236
+ - **Framework Docs**: [docs.donotdev.com](https://docs.donotdev.com)
237
+ - **CLAUDE.md**: AI agent guide (in this project)
238
+ - **Component Library**: [donotdev.com/components](https://donotdev.com/components)
239
+
240
+ ## 🆘 Troubleshooting
241
+
242
+ ### Build Errors
243
+
244
+ ```bash
245
+ # Clear cache and reinstall
246
+ rm -rf node_modules bun.lock
247
+ bun install
248
+ ```
249
+
250
+ ### Firebase Connection Issues
251
+
252
+ - Verify `.env` has correct Firebase credentials
253
+ - Check Firebase console for project status
254
+ - Ensure authentication is enabled
255
+
256
+ ### Hot Reload Not Working
257
+
258
+ - Check Vite config port (default: 5173)
259
+ - Ensure no other process is using the port
260
+
261
+ ## 📝 Scripts
262
+
263
+ ```bash
264
+ bun run dev # Start development server
265
+ bun run build # Build for production
266
+ bun run preview # Preview production build
267
+ bun run lint # Lint code
268
+ bun run type-check # TypeScript validation
269
+ dndev format # Format code with Prettier
270
+ ```
271
+
272
+ ### Code Formatting
273
+
274
+ The project includes `.prettierrc.cjs` which extends the framework's Prettier configuration. Run `dndev format` to format all TypeScript files according to the project's Prettier rules.
275
+
276
+ ## 🙏 Built With
277
+
278
+ - [DoNotDev Framework](https://donotdev.com) - Application framework
279
+ - [React 19](https://react.dev) - UI library
280
+ - [Vite](https://vitejs.dev) - Build tool
281
+ - [TypeScript](https://www.typescriptlang.org) - Type safety
282
+ - [Firebase](https://firebase.google.com) - Backend services
283
+ - [Stripe](https://stripe.com) - Payment processing
284
+
285
+ ## 📄 License
286
+
287
+ Your project license here (MIT, Apache, proprietary, etc.)
288
+
289
+ ## 🤝 Contributing
290
+
291
+ [Add your contribution guidelines here]
292
+
293
+ ---
294
+
295
+ **Need help?** Check [DoNotDev Documentation](https://docs.donotdev.com) or open an issue.
@@ -0,0 +1,68 @@
1
+ # Bun Configuration for DoNotDev Framework
2
+ # Copy this to bunfig.toml and adjust as needed
3
+ # Documentation: https://bun.sh/docs/runtime/bunfig
4
+
5
+ [install]
6
+ # Enable workspace support for monorepo
7
+ workspace = true
8
+
9
+ # Dependency installation settings
10
+ exact = false # Allow version ranges (^, ~) for flexibility
11
+ production = false # Install devDependencies (needed for framework development)
12
+ optional = true # Install optional dependencies
13
+ peer = true # Warn on missing peer dependencies (mandatory peers like valibot must be installed)
14
+
15
+ # Workspace linking strategy
16
+ # "hoisted" = shared node_modules at root (faster, less disk space, better tool compatibility)
17
+ # "isolated" = separate node_modules per package (better phantom dependency protection)
18
+ linker = "hoisted"
19
+
20
+ # Hoist essential tools for cross-platform compatibility
21
+ # NOTE: path-to-regexp is required for Firebase emulators compatibility
22
+ publicHoistPattern = [
23
+ "*eslint*",
24
+ "*typescript*",
25
+ "*prettier*",
26
+ "*turbo*",
27
+ "*react*",
28
+ "*@types/react*",
29
+ "*esbuild*",
30
+ "@esbuild/*",
31
+ "@donotdev/*",
32
+ "vite",
33
+ "next",
34
+ "path-to-regexp"
35
+ ]
36
+
37
+ # Cache configuration
38
+ cache = true # Enable dependency caching (default, massive speed boost)
39
+
40
+ # Security scanning (optional - requires installation)
41
+ # [install.security]
42
+ # scanner = "@socketsecurity/bun-security-scanner"
43
+
44
+ [run]
45
+ # Use Bun runtime for scripts (significantly faster than Node.js)
46
+ bun = true
47
+
48
+ # Cross-platform shell handling
49
+ # "bun" = use Bun's internal shell (RECOMMENDED for cross-platform compatibility)
50
+ # Ensures consistent behavior across Windows/WSL/Mac/Linux
51
+ shell = "bun"
52
+
53
+ [install.lockfile]
54
+ # Lockfile version (v2 is modern standard for Bun 1.3+)
55
+ version = 2
56
+
57
+ # Additional notes:
58
+ # - Always commit bun.lockb to version control
59
+ # - Use workspace:* protocol for internal package dependencies
60
+ # - For merge conflicts in bun.lockb: accept one side, run bun install, commit
61
+ #
62
+ # Firebase Emulators Compatibility:
63
+ # If using Firebase emulators, add these overrides to your root package.json:
64
+ # "overrides": {
65
+ # "path-to-regexp": "0.1.7",
66
+ # "express>path-to-regexp": "0.1.7",
67
+ # "firebase-tools>express>path-to-regexp": "0.1.7"
68
+ # }