@better-t-stack/template-generator 3.13.2-dev.6c6cffb → 3.13.2-dev.cc9652f

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 (425) hide show
  1. package/dist/core/template-reader.d.mts +10 -0
  2. package/dist/core/template-reader.d.mts.map +1 -0
  3. package/dist/{template-reader.mjs → core/template-reader.mjs} +4 -31
  4. package/dist/core/template-reader.mjs.map +1 -0
  5. package/dist/fs-writer.d.mts.map +1 -1
  6. package/dist/fs-writer.mjs +11 -24
  7. package/dist/fs-writer.mjs.map +1 -1
  8. package/dist/index.d.mts +15 -37
  9. package/dist/index.d.mts.map +1 -1
  10. package/dist/index.mjs +17963 -17235
  11. package/dist/index.mjs.map +1 -1
  12. package/package.json +6 -6
  13. package/dist/template-reader.d.mts +0 -30
  14. package/dist/template-reader.d.mts.map +0 -1
  15. package/dist/template-reader.mjs.map +0 -1
  16. package/scripts/generate-templates.ts +0 -97
  17. package/templates/addons/biome/biome.json.hbs +0 -96
  18. package/templates/addons/husky/.husky/pre-commit +0 -1
  19. package/templates/addons/pwa/apps/web/next/public/favicon/apple-touch-icon.png +0 -0
  20. package/templates/addons/pwa/apps/web/next/public/favicon/favicon-96x96.png +0 -0
  21. package/templates/addons/pwa/apps/web/next/public/favicon/favicon.svg +0 -6
  22. package/templates/addons/pwa/apps/web/next/public/favicon/site.webmanifest.hbs +0 -21
  23. package/templates/addons/pwa/apps/web/next/public/favicon/web-app-manifest-192x192.png +0 -0
  24. package/templates/addons/pwa/apps/web/next/public/favicon/web-app-manifest-512x512.png +0 -0
  25. package/templates/addons/pwa/apps/web/next/src/app/manifest.ts.hbs +0 -26
  26. package/templates/addons/pwa/apps/web/vite/public/logo.png +0 -0
  27. package/templates/addons/pwa/apps/web/vite/pwa-assets.config.ts.hbs +0 -12
  28. package/templates/addons/ruler/.ruler/bts.md.hbs +0 -142
  29. package/templates/addons/ruler/.ruler/ruler.toml.hbs +0 -80
  30. package/templates/addons/turborepo/turbo.json.hbs +0 -74
  31. package/templates/addons/ultracite/biome.json.hbs +0 -26
  32. package/templates/api/orpc/fullstack/next/src/app/api/rpc/[[...rest]]/route.ts.hbs +0 -50
  33. package/templates/api/orpc/fullstack/tanstack-start/src/routes/api/rpc/$.ts.hbs +0 -58
  34. package/templates/api/orpc/native/utils/orpc.ts.hbs +0 -39
  35. package/templates/api/orpc/server/_gitignore +0 -34
  36. package/templates/api/orpc/server/package.json.hbs +0 -15
  37. package/templates/api/orpc/server/src/context.ts.hbs +0 -148
  38. package/templates/api/orpc/server/src/index.ts.hbs +0 -21
  39. package/templates/api/orpc/server/src/routers/index.ts.hbs +0 -55
  40. package/templates/api/orpc/server/tsconfig.json.hbs +0 -10
  41. package/templates/api/orpc/web/nuxt/app/plugins/orpc.ts.hbs +0 -32
  42. package/templates/api/orpc/web/nuxt/app/plugins/vue-query.ts.hbs +0 -44
  43. package/templates/api/orpc/web/react/base/src/utils/orpc.ts.hbs +0 -113
  44. package/templates/api/orpc/web/solid/src/utils/orpc.ts.hbs +0 -30
  45. package/templates/api/orpc/web/svelte/src/lib/orpc.ts.hbs +0 -30
  46. package/templates/api/trpc/fullstack/next/src/app/api/trpc/[trpc]/route.ts.hbs +0 -14
  47. package/templates/api/trpc/fullstack/tanstack-start/src/routes/api/trpc/$.ts.hbs +0 -22
  48. package/templates/api/trpc/native/utils/trpc.ts.hbs +0 -37
  49. package/templates/api/trpc/server/_gitignore +0 -34
  50. package/templates/api/trpc/server/package.json.hbs +0 -14
  51. package/templates/api/trpc/server/src/context.ts.hbs +0 -148
  52. package/templates/api/trpc/server/src/index.ts.hbs +0 -26
  53. package/templates/api/trpc/server/src/routers/index.ts.hbs +0 -55
  54. package/templates/api/trpc/server/tsconfig.json.hbs +0 -10
  55. package/templates/api/trpc/web/react/base/src/utils/trpc.ts.hbs +0 -97
  56. package/templates/auth/better-auth/convex/backend/convex/auth.config.ts.hbs +0 -6
  57. package/templates/auth/better-auth/convex/backend/convex/auth.ts.hbs +0 -68
  58. package/templates/auth/better-auth/convex/backend/convex/http.ts.hbs +0 -12
  59. package/templates/auth/better-auth/convex/backend/convex/privateData.ts.hbs +0 -17
  60. package/templates/auth/better-auth/convex/native/bare/components/sign-in.tsx.hbs +0 -127
  61. package/templates/auth/better-auth/convex/native/bare/components/sign-up.tsx.hbs +0 -138
  62. package/templates/auth/better-auth/convex/native/base/lib/auth-client.ts.hbs +0 -18
  63. package/templates/auth/better-auth/convex/native/unistyles/components/sign-in.tsx.hbs +0 -127
  64. package/templates/auth/better-auth/convex/native/unistyles/components/sign-up.tsx.hbs +0 -145
  65. package/templates/auth/better-auth/convex/native/uniwind/components/sign-in.tsx.hbs +0 -73
  66. package/templates/auth/better-auth/convex/native/uniwind/components/sign-up.tsx.hbs +0 -85
  67. package/templates/auth/better-auth/convex/web/react/next/src/app/api/auth/[...all]/route.ts.hbs +0 -3
  68. package/templates/auth/better-auth/convex/web/react/next/src/app/dashboard/page.tsx.hbs +0 -40
  69. package/templates/auth/better-auth/convex/web/react/next/src/components/sign-in-form.tsx.hbs +0 -129
  70. package/templates/auth/better-auth/convex/web/react/next/src/components/sign-up-form.tsx.hbs +0 -154
  71. package/templates/auth/better-auth/convex/web/react/next/src/components/user-menu.tsx.hbs +0 -48
  72. package/templates/auth/better-auth/convex/web/react/next/src/lib/auth-client.ts.hbs +0 -6
  73. package/templates/auth/better-auth/convex/web/react/next/src/lib/auth-server.ts.hbs +0 -16
  74. package/templates/auth/better-auth/convex/web/react/tanstack-router/src/components/sign-in-form.tsx.hbs +0 -133
  75. package/templates/auth/better-auth/convex/web/react/tanstack-router/src/components/sign-up-form.tsx.hbs +0 -158
  76. package/templates/auth/better-auth/convex/web/react/tanstack-router/src/components/user-menu.tsx.hbs +0 -52
  77. package/templates/auth/better-auth/convex/web/react/tanstack-router/src/lib/auth-client.ts.hbs +0 -11
  78. package/templates/auth/better-auth/convex/web/react/tanstack-router/src/routes/dashboard.tsx.hbs +0 -43
  79. package/templates/auth/better-auth/convex/web/react/tanstack-start/src/components/sign-in-form.tsx.hbs +0 -133
  80. package/templates/auth/better-auth/convex/web/react/tanstack-start/src/components/sign-up-form.tsx.hbs +0 -158
  81. package/templates/auth/better-auth/convex/web/react/tanstack-start/src/components/user-menu.tsx.hbs +0 -47
  82. package/templates/auth/better-auth/convex/web/react/tanstack-start/src/lib/auth-client.ts.hbs +0 -6
  83. package/templates/auth/better-auth/convex/web/react/tanstack-start/src/lib/auth-server.ts.hbs +0 -13
  84. package/templates/auth/better-auth/convex/web/react/tanstack-start/src/routes/api/auth/$.ts.hbs +0 -11
  85. package/templates/auth/better-auth/convex/web/react/tanstack-start/src/routes/dashboard.tsx.hbs +0 -43
  86. package/templates/auth/better-auth/fullstack/next/src/app/api/auth/[...all]/route.ts.hbs +0 -4
  87. package/templates/auth/better-auth/fullstack/tanstack-start/src/routes/api/auth/$.ts.hbs +0 -15
  88. package/templates/auth/better-auth/native/bare/app/(drawer)/index.tsx.hbs +0 -186
  89. package/templates/auth/better-auth/native/bare/components/sign-in.tsx.hbs +0 -131
  90. package/templates/auth/better-auth/native/bare/components/sign-up.tsx.hbs +0 -150
  91. package/templates/auth/better-auth/native/base/lib/auth-client.ts.hbs +0 -16
  92. package/templates/auth/better-auth/native/unistyles/app/(drawer)/index.tsx.hbs +0 -187
  93. package/templates/auth/better-auth/native/unistyles/components/sign-in.tsx.hbs +0 -139
  94. package/templates/auth/better-auth/native/unistyles/components/sign-up.tsx.hbs +0 -157
  95. package/templates/auth/better-auth/native/uniwind/app/(drawer)/index.tsx.hbs +0 -123
  96. package/templates/auth/better-auth/native/uniwind/components/sign-in.tsx.hbs +0 -87
  97. package/templates/auth/better-auth/native/uniwind/components/sign-up.tsx.hbs +0 -128
  98. package/templates/auth/better-auth/server/base/_gitignore +0 -34
  99. package/templates/auth/better-auth/server/base/package.json.hbs +0 -14
  100. package/templates/auth/better-auth/server/base/src/index.ts.hbs +0 -304
  101. package/templates/auth/better-auth/server/base/tsconfig.json.hbs +0 -10
  102. package/templates/auth/better-auth/server/db/drizzle/mysql/src/schema/auth.ts.hbs +0 -100
  103. package/templates/auth/better-auth/server/db/drizzle/postgres/src/schema/auth.ts.hbs +0 -93
  104. package/templates/auth/better-auth/server/db/drizzle/sqlite/src/schema/auth.ts.hbs +0 -107
  105. package/templates/auth/better-auth/server/db/mongoose/mongodb/src/models/auth.model.ts.hbs +0 -68
  106. package/templates/auth/better-auth/server/db/prisma/mongodb/prisma/schema/auth.prisma.hbs +0 -62
  107. package/templates/auth/better-auth/server/db/prisma/mysql/prisma/schema/auth.prisma.hbs +0 -62
  108. package/templates/auth/better-auth/server/db/prisma/postgres/prisma/schema/auth.prisma.hbs +0 -62
  109. package/templates/auth/better-auth/server/db/prisma/sqlite/prisma/schema/auth.prisma.hbs +0 -62
  110. package/templates/auth/better-auth/web/nuxt/app/components/SignInForm.vue.hbs +0 -82
  111. package/templates/auth/better-auth/web/nuxt/app/components/SignUpForm.vue.hbs +0 -91
  112. package/templates/auth/better-auth/web/nuxt/app/components/UserMenu.vue.hbs +0 -42
  113. package/templates/auth/better-auth/web/nuxt/app/middleware/auth.ts.hbs +0 -14
  114. package/templates/auth/better-auth/web/nuxt/app/pages/dashboard.vue.hbs +0 -99
  115. package/templates/auth/better-auth/web/nuxt/app/pages/login.vue.hbs +0 -27
  116. package/templates/auth/better-auth/web/nuxt/app/plugins/auth-client.ts.hbs +0 -21
  117. package/templates/auth/better-auth/web/react/base/src/lib/auth-client.ts.hbs +0 -16
  118. package/templates/auth/better-auth/web/react/next/src/app/dashboard/dashboard.tsx.hbs +0 -60
  119. package/templates/auth/better-auth/web/react/next/src/app/dashboard/page.tsx.hbs +0 -42
  120. package/templates/auth/better-auth/web/react/next/src/app/login/page.tsx.hbs +0 -16
  121. package/templates/auth/better-auth/web/react/next/src/components/sign-in-form.tsx.hbs +0 -135
  122. package/templates/auth/better-auth/web/react/next/src/components/sign-up-form.tsx.hbs +0 -160
  123. package/templates/auth/better-auth/web/react/next/src/components/user-menu.tsx.hbs +0 -62
  124. package/templates/auth/better-auth/web/react/react-router/src/components/sign-in-form.tsx.hbs +0 -135
  125. package/templates/auth/better-auth/web/react/react-router/src/components/sign-up-form.tsx.hbs +0 -160
  126. package/templates/auth/better-auth/web/react/react-router/src/components/user-menu.tsx.hbs +0 -61
  127. package/templates/auth/better-auth/web/react/react-router/src/routes/dashboard.tsx.hbs +0 -80
  128. package/templates/auth/better-auth/web/react/react-router/src/routes/login.tsx.hbs +0 -13
  129. package/templates/auth/better-auth/web/react/tanstack-router/src/components/sign-in-form.tsx.hbs +0 -135
  130. package/templates/auth/better-auth/web/react/tanstack-router/src/components/sign-up-form.tsx.hbs +0 -160
  131. package/templates/auth/better-auth/web/react/tanstack-router/src/components/user-menu.tsx.hbs +0 -63
  132. package/templates/auth/better-auth/web/react/tanstack-router/src/routes/dashboard.tsx.hbs +0 -71
  133. package/templates/auth/better-auth/web/react/tanstack-router/src/routes/login.tsx.hbs +0 -18
  134. package/templates/auth/better-auth/web/react/tanstack-start/src/components/sign-in-form.tsx.hbs +0 -135
  135. package/templates/auth/better-auth/web/react/tanstack-start/src/components/sign-up-form.tsx.hbs +0 -160
  136. package/templates/auth/better-auth/web/react/tanstack-start/src/components/user-menu.tsx.hbs +0 -63
  137. package/templates/auth/better-auth/web/react/tanstack-start/src/functions/get-user.ts.hbs +0 -6
  138. package/templates/auth/better-auth/web/react/tanstack-start/src/middleware/auth.ts.hbs +0 -31
  139. package/templates/auth/better-auth/web/react/tanstack-start/src/routes/dashboard.tsx.hbs +0 -84
  140. package/templates/auth/better-auth/web/react/tanstack-start/src/routes/login.tsx.hbs +0 -18
  141. package/templates/auth/better-auth/web/solid/src/components/sign-in-form.tsx.hbs +0 -124
  142. package/templates/auth/better-auth/web/solid/src/components/sign-up-form.tsx.hbs +0 -148
  143. package/templates/auth/better-auth/web/solid/src/components/user-menu.tsx.hbs +0 -55
  144. package/templates/auth/better-auth/web/solid/src/lib/auth-client.ts.hbs +0 -12
  145. package/templates/auth/better-auth/web/solid/src/routes/dashboard.tsx.hbs +0 -67
  146. package/templates/auth/better-auth/web/solid/src/routes/login.tsx.hbs +0 -23
  147. package/templates/auth/better-auth/web/svelte/src/components/SignInForm.svelte.hbs +0 -109
  148. package/templates/auth/better-auth/web/svelte/src/components/SignUpForm.svelte.hbs +0 -142
  149. package/templates/auth/better-auth/web/svelte/src/components/UserMenu.svelte.hbs +0 -52
  150. package/templates/auth/better-auth/web/svelte/src/lib/auth-client.ts.hbs +0 -12
  151. package/templates/auth/better-auth/web/svelte/src/routes/dashboard/+page.svelte.hbs +0 -59
  152. package/templates/auth/better-auth/web/svelte/src/routes/login/+page.svelte.hbs +0 -12
  153. package/templates/auth/clerk/convex/backend/convex/auth.config.ts.hbs +0 -12
  154. package/templates/auth/clerk/convex/backend/convex/privateData.ts.hbs +0 -16
  155. package/templates/auth/clerk/convex/native/base/app/(auth)/_layout.tsx.hbs +0 -12
  156. package/templates/auth/clerk/convex/native/base/app/(auth)/sign-in.tsx.hbs +0 -67
  157. package/templates/auth/clerk/convex/native/base/app/(auth)/sign-up.tsx.hbs +0 -110
  158. package/templates/auth/clerk/convex/native/base/components/sign-out-button.tsx.hbs +0 -27
  159. package/templates/auth/clerk/convex/web/react/next/src/app/dashboard/page.tsx.hbs +0 -29
  160. package/templates/auth/clerk/convex/web/react/next/src/middleware.ts.hbs +0 -12
  161. package/templates/auth/clerk/convex/web/react/react-router/src/routes/dashboard.tsx.hbs +0 -32
  162. package/templates/auth/clerk/convex/web/react/tanstack-router/src/routes/dashboard.tsx.hbs +0 -37
  163. package/templates/auth/clerk/convex/web/react/tanstack-start/src/routes/dashboard.tsx.hbs +0 -37
  164. package/templates/auth/clerk/convex/web/react/tanstack-start/src/start.ts.hbs +0 -8
  165. package/templates/backend/convex/packages/backend/_gitignore +0 -2
  166. package/templates/backend/convex/packages/backend/convex/README.md +0 -90
  167. package/templates/backend/convex/packages/backend/convex/convex.config.ts.hbs +0 -17
  168. package/templates/backend/convex/packages/backend/convex/healthCheck.ts.hbs +0 -7
  169. package/templates/backend/convex/packages/backend/convex/schema.ts.hbs +0 -11
  170. package/templates/backend/convex/packages/backend/convex/tsconfig.json.hbs +0 -25
  171. package/templates/backend/convex/packages/backend/package.json.hbs +0 -15
  172. package/templates/backend/server/base/_gitignore +0 -55
  173. package/templates/backend/server/base/package.json.hbs +0 -17
  174. package/templates/backend/server/base/tsconfig.json.hbs +0 -13
  175. package/templates/backend/server/base/tsdown.config.ts.hbs +0 -9
  176. package/templates/backend/server/elysia/src/index.ts.hbs +0 -122
  177. package/templates/backend/server/express/src/index.ts.hbs +0 -126
  178. package/templates/backend/server/fastify/src/index.ts.hbs +0 -187
  179. package/templates/backend/server/hono/src/index.ts.hbs +0 -171
  180. package/templates/base/_gitignore +0 -50
  181. package/templates/base/package.json.hbs +0 -10
  182. package/templates/base/tsconfig.json.hbs +0 -3
  183. package/templates/db/base/_gitignore +0 -35
  184. package/templates/db/base/package.json.hbs +0 -14
  185. package/templates/db/base/tsconfig.json.hbs +0 -10
  186. package/templates/db/drizzle/base/src/schema/index.ts.hbs +0 -7
  187. package/templates/db/drizzle/mysql/drizzle.config.ts.hbs +0 -19
  188. package/templates/db/drizzle/mysql/src/index.ts.hbs +0 -54
  189. package/templates/db/drizzle/postgres/drizzle.config.ts.hbs +0 -19
  190. package/templates/db/drizzle/postgres/src/index.ts.hbs +0 -44
  191. package/templates/db/drizzle/sqlite/drizzle.config.ts.hbs +0 -28
  192. package/templates/db/drizzle/sqlite/src/index.ts.hbs +0 -39
  193. package/templates/db/mongoose/mongodb/src/index.ts.hbs +0 -10
  194. package/templates/db/prisma/mongodb/prisma/schema/schema.prisma.hbs +0 -19
  195. package/templates/db/prisma/mongodb/prisma.config.ts.hbs +0 -18
  196. package/templates/db/prisma/mongodb/src/index.ts.hbs +0 -5
  197. package/templates/db/prisma/mysql/prisma/schema/schema.prisma.hbs +0 -21
  198. package/templates/db/prisma/mysql/prisma.config.ts.hbs +0 -21
  199. package/templates/db/prisma/mysql/src/index.ts.hbs +0 -55
  200. package/templates/db/prisma/postgres/prisma/schema/schema.prisma.hbs +0 -21
  201. package/templates/db/prisma/postgres/prisma.config.ts.hbs +0 -21
  202. package/templates/db/prisma/postgres/src/index.ts.hbs +0 -69
  203. package/templates/db/prisma/sqlite/prisma/schema/schema.prisma.hbs +0 -18
  204. package/templates/db/prisma/sqlite/prisma.config.ts.hbs +0 -25
  205. package/templates/db/prisma/sqlite/src/index.ts.hbs +0 -25
  206. package/templates/db-setup/docker-compose/mongodb/docker-compose.yml.hbs +0 -23
  207. package/templates/db-setup/docker-compose/mysql/docker-compose.yml.hbs +0 -24
  208. package/templates/db-setup/docker-compose/postgres/docker-compose.yml.hbs +0 -23
  209. package/templates/examples/ai/convex/packages/backend/convex/agent.ts.hbs +0 -9
  210. package/templates/examples/ai/convex/packages/backend/convex/chat.ts.hbs +0 -67
  211. package/templates/examples/ai/fullstack/next/src/app/api/ai/route.ts.hbs +0 -20
  212. package/templates/examples/ai/fullstack/tanstack-start/src/routes/api/ai/$.ts.hbs +0 -36
  213. package/templates/examples/ai/native/bare/app/(drawer)/ai.tsx.hbs +0 -586
  214. package/templates/examples/ai/native/bare/polyfills.js +0 -22
  215. package/templates/examples/ai/native/unistyles/app/(drawer)/ai.tsx.hbs +0 -588
  216. package/templates/examples/ai/native/unistyles/polyfills.js +0 -22
  217. package/templates/examples/ai/native/uniwind/app/(drawer)/ai.tsx.hbs +0 -331
  218. package/templates/examples/ai/native/uniwind/polyfills.js +0 -22
  219. package/templates/examples/ai/web/nuxt/app/pages/ai.vue.hbs +0 -54
  220. package/templates/examples/ai/web/react/next/src/app/ai/page.tsx.hbs +0 -267
  221. package/templates/examples/ai/web/react/react-router/src/routes/ai.tsx.hbs +0 -235
  222. package/templates/examples/ai/web/react/tanstack-router/src/routes/ai.tsx.hbs +0 -242
  223. package/templates/examples/ai/web/react/tanstack-start/src/routes/ai.tsx.hbs +0 -243
  224. package/templates/examples/ai/web/svelte/src/routes/ai/+page.svelte.hbs +0 -107
  225. package/templates/examples/todo/convex/packages/backend/convex/todos.ts.hbs +0 -42
  226. package/templates/examples/todo/native/bare/app/(drawer)/todos.tsx.hbs +0 -521
  227. package/templates/examples/todo/native/unistyles/app/(drawer)/todos.tsx.hbs +0 -340
  228. package/templates/examples/todo/native/uniwind/app/(drawer)/todos.tsx.hbs +0 -282
  229. package/templates/examples/todo/server/drizzle/base/src/routers/todo.ts.hbs +0 -75
  230. package/templates/examples/todo/server/drizzle/mysql/src/schema/todo.ts +0 -7
  231. package/templates/examples/todo/server/drizzle/postgres/src/schema/todo.ts +0 -7
  232. package/templates/examples/todo/server/drizzle/sqlite/src/schema/todo.ts +0 -7
  233. package/templates/examples/todo/server/mongoose/base/src/routers/todo.ts.hbs +0 -66
  234. package/templates/examples/todo/server/mongoose/mongodb/src/models/todo.model.ts.hbs +0 -24
  235. package/templates/examples/todo/server/prisma/base/src/routers/todo.ts.hbs +0 -116
  236. package/templates/examples/todo/server/prisma/mongodb/prisma/schema/todo.prisma.hbs +0 -7
  237. package/templates/examples/todo/server/prisma/mysql/prisma/schema/todo.prisma.hbs +0 -7
  238. package/templates/examples/todo/server/prisma/postgres/prisma/schema/todo.prisma.hbs +0 -7
  239. package/templates/examples/todo/server/prisma/sqlite/prisma/schema/todo.prisma.hbs +0 -7
  240. package/templates/examples/todo/web/nuxt/app/pages/todos.vue.hbs +0 -220
  241. package/templates/examples/todo/web/react/next/src/app/todos/page.tsx.hbs +0 -245
  242. package/templates/examples/todo/web/react/react-router/src/routes/todos.tsx.hbs +0 -242
  243. package/templates/examples/todo/web/react/tanstack-router/src/routes/todos.tsx.hbs +0 -247
  244. package/templates/examples/todo/web/react/tanstack-start/src/routes/todos.tsx.hbs +0 -272
  245. package/templates/examples/todo/web/solid/src/routes/todos.tsx.hbs +0 -132
  246. package/templates/examples/todo/web/svelte/src/routes/todos/+page.svelte.hbs +0 -317
  247. package/templates/extras/_npmrc.hbs +0 -5
  248. package/templates/extras/bunfig.toml.hbs +0 -6
  249. package/templates/extras/pnpm-workspace.yaml +0 -3
  250. package/templates/frontend/native/bare/_gitignore +0 -18
  251. package/templates/frontend/native/bare/app/(drawer)/(tabs)/_layout.tsx.hbs +0 -41
  252. package/templates/frontend/native/bare/app/(drawer)/(tabs)/index.tsx.hbs +0 -43
  253. package/templates/frontend/native/bare/app/(drawer)/(tabs)/two.tsx.hbs +0 -43
  254. package/templates/frontend/native/bare/app/(drawer)/_layout.tsx.hbs +0 -90
  255. package/templates/frontend/native/bare/app/(drawer)/index.tsx.hbs +0 -234
  256. package/templates/frontend/native/bare/app/+not-found.tsx.hbs +0 -65
  257. package/templates/frontend/native/bare/app/_layout.tsx.hbs +0 -165
  258. package/templates/frontend/native/bare/app/modal.tsx.hbs +0 -34
  259. package/templates/frontend/native/bare/app.json.hbs +0 -50
  260. package/templates/frontend/native/bare/components/container.tsx.hbs +0 -25
  261. package/templates/frontend/native/bare/components/header-button.tsx.hbs +0 -47
  262. package/templates/frontend/native/bare/components/tabbar-icon.tsx.hbs +0 -9
  263. package/templates/frontend/native/bare/lib/android-navigation-bar.tsx.hbs +0 -12
  264. package/templates/frontend/native/bare/lib/constants.ts.hbs +0 -19
  265. package/templates/frontend/native/bare/lib/use-color-scheme.ts.hbs +0 -20
  266. package/templates/frontend/native/bare/metro.config.js.hbs +0 -9
  267. package/templates/frontend/native/bare/package.json.hbs +0 -51
  268. package/templates/frontend/native/bare/tsconfig.json.hbs +0 -11
  269. package/templates/frontend/native/base/assets/images/android-icon-background.png +0 -0
  270. package/templates/frontend/native/base/assets/images/android-icon-foreground.png +0 -0
  271. package/templates/frontend/native/base/assets/images/android-icon-monochrome.png +0 -0
  272. package/templates/frontend/native/base/assets/images/favicon.png +0 -0
  273. package/templates/frontend/native/base/assets/images/icon.png +0 -0
  274. package/templates/frontend/native/base/assets/images/partial-react-logo.png +0 -0
  275. package/templates/frontend/native/base/assets/images/react-logo.png +0 -0
  276. package/templates/frontend/native/base/assets/images/react-logo@2x.png +0 -0
  277. package/templates/frontend/native/base/assets/images/react-logo@3x.png +0 -0
  278. package/templates/frontend/native/base/assets/images/splash-icon.png +0 -0
  279. package/templates/frontend/native/unistyles/_gitignore +0 -24
  280. package/templates/frontend/native/unistyles/app/(drawer)/(tabs)/_layout.tsx.hbs +0 -39
  281. package/templates/frontend/native/unistyles/app/(drawer)/(tabs)/index.tsx.hbs +0 -37
  282. package/templates/frontend/native/unistyles/app/(drawer)/(tabs)/two.tsx.hbs +0 -37
  283. package/templates/frontend/native/unistyles/app/(drawer)/_layout.tsx.hbs +0 -87
  284. package/templates/frontend/native/unistyles/app/(drawer)/index.tsx.hbs +0 -333
  285. package/templates/frontend/native/unistyles/app/+not-found.tsx.hbs +0 -65
  286. package/templates/frontend/native/unistyles/app/_layout.tsx.hbs +0 -169
  287. package/templates/frontend/native/unistyles/app/modal.tsx.hbs +0 -33
  288. package/templates/frontend/native/unistyles/app.json.hbs +0 -49
  289. package/templates/frontend/native/unistyles/babel.config.js.hbs +0 -21
  290. package/templates/frontend/native/unistyles/breakpoints.ts.hbs +0 -9
  291. package/templates/frontend/native/unistyles/components/container.tsx.hbs +0 -15
  292. package/templates/frontend/native/unistyles/components/header-button.tsx.hbs +0 -36
  293. package/templates/frontend/native/unistyles/components/tabbar-icon.tsx.hbs +0 -8
  294. package/templates/frontend/native/unistyles/index.js.hbs +0 -2
  295. package/templates/frontend/native/unistyles/metro.config.js.hbs +0 -5
  296. package/templates/frontend/native/unistyles/package.json.hbs +0 -51
  297. package/templates/frontend/native/unistyles/theme.ts.hbs +0 -98
  298. package/templates/frontend/native/unistyles/tsconfig.json.hbs +0 -12
  299. package/templates/frontend/native/unistyles/unistyles.ts.hbs +0 -27
  300. package/templates/frontend/native/uniwind/_gitignore +0 -21
  301. package/templates/frontend/native/uniwind/app/(drawer)/(tabs)/_layout.tsx.hbs +0 -46
  302. package/templates/frontend/native/uniwind/app/(drawer)/(tabs)/index.tsx.hbs +0 -15
  303. package/templates/frontend/native/uniwind/app/(drawer)/(tabs)/two.tsx.hbs +0 -15
  304. package/templates/frontend/native/uniwind/app/(drawer)/_layout.tsx.hbs +0 -91
  305. package/templates/frontend/native/uniwind/app/(drawer)/index.tsx.hbs +0 -191
  306. package/templates/frontend/native/uniwind/app/+not-found.tsx.hbs +0 -27
  307. package/templates/frontend/native/uniwind/app/_layout.tsx.hbs +0 -132
  308. package/templates/frontend/native/uniwind/app/modal.tsx.hbs +0 -37
  309. package/templates/frontend/native/uniwind/app.json.hbs +0 -19
  310. package/templates/frontend/native/uniwind/components/container.tsx.hbs +0 -33
  311. package/templates/frontend/native/uniwind/components/theme-toggle.tsx.hbs +0 -35
  312. package/templates/frontend/native/uniwind/contexts/app-theme-context.tsx.hbs +0 -62
  313. package/templates/frontend/native/uniwind/global.css +0 -5
  314. package/templates/frontend/native/uniwind/metro.config.js.hbs +0 -13
  315. package/templates/frontend/native/uniwind/package.json.hbs +0 -54
  316. package/templates/frontend/native/uniwind/tsconfig.json.hbs +0 -14
  317. package/templates/frontend/nuxt/_gitignore +0 -27
  318. package/templates/frontend/nuxt/app/app.config.ts.hbs +0 -15
  319. package/templates/frontend/nuxt/app/app.vue.hbs +0 -17
  320. package/templates/frontend/nuxt/app/assets/css/main.css +0 -2
  321. package/templates/frontend/nuxt/app/components/Header.vue.hbs +0 -40
  322. package/templates/frontend/nuxt/app/layouts/default.vue.hbs +0 -10
  323. package/templates/frontend/nuxt/app/pages/index.vue.hbs +0 -97
  324. package/templates/frontend/nuxt/nuxt.config.ts.hbs +0 -29
  325. package/templates/frontend/nuxt/package.json.hbs +0 -24
  326. package/templates/frontend/nuxt/public/favicon.ico +0 -0
  327. package/templates/frontend/nuxt/public/robots.txt +0 -2
  328. package/templates/frontend/nuxt/server/tsconfig.json +0 -3
  329. package/templates/frontend/nuxt/tsconfig.json.hbs +0 -18
  330. package/templates/frontend/react/next/next-env.d.ts.hbs +0 -5
  331. package/templates/frontend/react/next/next.config.ts.hbs +0 -22
  332. package/templates/frontend/react/next/package.json.hbs +0 -34
  333. package/templates/frontend/react/next/postcss.config.mjs.hbs +0 -5
  334. package/templates/frontend/react/next/src/app/favicon.ico +0 -0
  335. package/templates/frontend/react/next/src/app/layout.tsx.hbs +0 -76
  336. package/templates/frontend/react/next/src/app/page.tsx.hbs +0 -79
  337. package/templates/frontend/react/next/src/components/mode-toggle.tsx.hbs +0 -37
  338. package/templates/frontend/react/next/src/components/providers.tsx.hbs +0 -89
  339. package/templates/frontend/react/next/src/components/theme-provider.tsx.hbs +0 -11
  340. package/templates/frontend/react/next/tsconfig.json.hbs +0 -41
  341. package/templates/frontend/react/react-router/package.json.hbs +0 -42
  342. package/templates/frontend/react/react-router/public/favicon.ico +0 -0
  343. package/templates/frontend/react/react-router/react-router.config.ts +0 -6
  344. package/templates/frontend/react/react-router/src/components/mode-toggle.tsx.hbs +0 -29
  345. package/templates/frontend/react/react-router/src/components/theme-provider.tsx.hbs +0 -11
  346. package/templates/frontend/react/react-router/src/root.tsx.hbs +0 -190
  347. package/templates/frontend/react/react-router/src/routes/_index.tsx.hbs +0 -85
  348. package/templates/frontend/react/react-router/src/routes.ts +0 -4
  349. package/templates/frontend/react/react-router/tsconfig.json.hbs +0 -27
  350. package/templates/frontend/react/react-router/vite.config.ts.hbs +0 -12
  351. package/templates/frontend/react/tanstack-router/index.html.hbs +0 -13
  352. package/templates/frontend/react/tanstack-router/package.json.hbs +0 -41
  353. package/templates/frontend/react/tanstack-router/src/components/mode-toggle.tsx.hbs +0 -29
  354. package/templates/frontend/react/tanstack-router/src/components/theme-provider.tsx.hbs +0 -11
  355. package/templates/frontend/react/tanstack-router/src/main.tsx.hbs +0 -90
  356. package/templates/frontend/react/tanstack-router/src/routes/__root.tsx.hbs +0 -103
  357. package/templates/frontend/react/tanstack-router/src/routes/index.tsx.hbs +0 -85
  358. package/templates/frontend/react/tanstack-router/tsconfig.json.hbs +0 -18
  359. package/templates/frontend/react/tanstack-router/vite.config.ts.hbs +0 -21
  360. package/templates/frontend/react/tanstack-start/package.json.hbs +0 -43
  361. package/templates/frontend/react/tanstack-start/public/robots.txt +0 -3
  362. package/templates/frontend/react/tanstack-start/src/router.tsx.hbs +0 -144
  363. package/templates/frontend/react/tanstack-start/src/routes/__root.tsx.hbs +0 -208
  364. package/templates/frontend/react/tanstack-start/src/routes/index.tsx.hbs +0 -85
  365. package/templates/frontend/react/tanstack-start/tsconfig.json.hbs +0 -28
  366. package/templates/frontend/react/tanstack-start/vite.config.ts.hbs +0 -22
  367. package/templates/frontend/react/web-base/_gitignore +0 -60
  368. package/templates/frontend/react/web-base/components.json +0 -24
  369. package/templates/frontend/react/web-base/src/components/header.tsx.hbs +0 -78
  370. package/templates/frontend/react/web-base/src/components/loader.tsx.hbs +0 -9
  371. package/templates/frontend/react/web-base/src/components/ui/button.tsx.hbs +0 -57
  372. package/templates/frontend/react/web-base/src/components/ui/card.tsx.hbs +0 -103
  373. package/templates/frontend/react/web-base/src/components/ui/checkbox.tsx.hbs +0 -26
  374. package/templates/frontend/react/web-base/src/components/ui/dropdown-menu.tsx.hbs +0 -262
  375. package/templates/frontend/react/web-base/src/components/ui/input.tsx.hbs +0 -20
  376. package/templates/frontend/react/web-base/src/components/ui/label.tsx.hbs +0 -20
  377. package/templates/frontend/react/web-base/src/components/ui/skeleton.tsx.hbs +0 -13
  378. package/templates/frontend/react/web-base/src/components/ui/sonner.tsx.hbs +0 -44
  379. package/templates/frontend/react/web-base/src/index.css.hbs +0 -131
  380. package/templates/frontend/react/web-base/src/lib/utils.ts.hbs +0 -6
  381. package/templates/frontend/solid/_gitignore +0 -11
  382. package/templates/frontend/solid/index.html +0 -13
  383. package/templates/frontend/solid/package.json.hbs +0 -24
  384. package/templates/frontend/solid/public/robots.txt +0 -3
  385. package/templates/frontend/solid/src/components/header.tsx.hbs +0 -38
  386. package/templates/frontend/solid/src/components/loader.tsx +0 -9
  387. package/templates/frontend/solid/src/main.tsx.hbs +0 -41
  388. package/templates/frontend/solid/src/routes/__root.tsx.hbs +0 -34
  389. package/templates/frontend/solid/src/routes/index.tsx.hbs +0 -72
  390. package/templates/frontend/solid/src/styles.css +0 -5
  391. package/templates/frontend/solid/tsconfig.json.hbs +0 -29
  392. package/templates/frontend/solid/vite.config.ts.hbs +0 -21
  393. package/templates/frontend/svelte/_gitignore +0 -24
  394. package/templates/frontend/svelte/_npmrc +0 -1
  395. package/templates/frontend/svelte/package.json.hbs +0 -27
  396. package/templates/frontend/svelte/src/app.css +0 -5
  397. package/templates/frontend/svelte/src/app.d.ts +0 -13
  398. package/templates/frontend/svelte/src/app.html +0 -12
  399. package/templates/frontend/svelte/src/components/Header.svelte.hbs +0 -40
  400. package/templates/frontend/svelte/src/lib/index.ts +0 -2
  401. package/templates/frontend/svelte/src/routes/+layout.svelte.hbs +0 -54
  402. package/templates/frontend/svelte/src/routes/+page.svelte.hbs +0 -92
  403. package/templates/frontend/svelte/static/favicon.png +0 -0
  404. package/templates/frontend/svelte/svelte.config.js.hbs +0 -18
  405. package/templates/frontend/svelte/tsconfig.json.hbs +0 -19
  406. package/templates/frontend/svelte/vite.config.ts.hbs +0 -7
  407. package/templates/packages/config/package.json.hbs +0 -5
  408. package/templates/packages/config/tsconfig.base.json.hbs +0 -33
  409. package/templates/packages/env/env.d.ts.hbs +0 -16
  410. package/templates/packages/env/package.json.hbs +0 -7
  411. package/templates/packages/env/src/native.ts.hbs +0 -21
  412. package/templates/packages/env/src/server.ts.hbs +0 -39
  413. package/templates/packages/env/src/web.ts.hbs +0 -98
  414. package/templates/packages/env/tsconfig.json.hbs +0 -3
  415. package/templates/packages/infra/alchemy.run.ts.hbs +0 -271
  416. package/templates/packages/infra/package.json.hbs +0 -10
  417. package/templates/payments/polar/server/base/src/lib/payments.ts.hbs +0 -7
  418. package/templates/payments/polar/web/nuxt/app/pages/success.vue.hbs +0 -11
  419. package/templates/payments/polar/web/react/next/src/app/success/page.tsx.hbs +0 -15
  420. package/templates/payments/polar/web/react/react-router/src/routes/success.tsx.hbs +0 -13
  421. package/templates/payments/polar/web/react/tanstack-router/src/routes/success.tsx.hbs +0 -19
  422. package/templates/payments/polar/web/react/tanstack-start/src/functions/get-payment.ts.hbs +0 -15
  423. package/templates/payments/polar/web/react/tanstack-start/src/routes/success.tsx.hbs +0 -19
  424. package/templates/payments/polar/web/solid/src/routes/success.tsx.hbs +0 -23
  425. package/templates/payments/polar/web/svelte/src/routes/success/+page.svelte.hbs +0 -12
@@ -1,6 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" version="1.1" xmlns:xlink="http://www.w3.org/1999/xlink" width="92" height="92"><svg width="92" height="92" viewBox="0 0 92 92" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <rect x="8" y="8" width="76" height="76" rx="12" fill="#F5EEFF" stroke="#B79AFF" stroke-width="3"></rect>
3
- <text x="46" y="56" text-anchor="middle" font-family="monospace" font-size="40" fill="#8F5BFF">$<tspan dx="0" dy="0">_</tspan></text>
4
- </svg><style>@media (prefers-color-scheme: light) { :root { filter: none; } }
5
- @media (prefers-color-scheme: dark) { :root { filter: none; } }
6
- </style></svg>
@@ -1,21 +0,0 @@
1
- {
2
- "name": "{{projectName}}",
3
- "short_name": "{{projectName}}",
4
- "icons": [
5
- {
6
- "src": "/web-app-manifest-192x192.png",
7
- "sizes": "192x192",
8
- "type": "image/png",
9
- "purpose": "maskable"
10
- },
11
- {
12
- "src": "/web-app-manifest-512x512.png",
13
- "sizes": "512x512",
14
- "type": "image/png",
15
- "purpose": "maskable"
16
- }
17
- ],
18
- "theme_color": "#ffffff",
19
- "background_color": "#ffffff",
20
- "display": "standalone"
21
- }
@@ -1,26 +0,0 @@
1
- import type { MetadataRoute } from "next";
2
-
3
- export default function manifest(): MetadataRoute.Manifest {
4
- return {
5
- name: "{{projectName}}",
6
- short_name: "{{projectName}}",
7
- description:
8
- "my pwa app",
9
- start_url: "/new",
10
- display: "standalone",
11
- background_color: "#ffffff",
12
- theme_color: "#000000",
13
- icons: [
14
- {
15
- src: "/favicon/web-app-manifest-192x192.png",
16
- sizes: "192x192",
17
- type: "image/png",
18
- },
19
- {
20
- src: "/favicon/web-app-manifest-512x512.png",
21
- sizes: "512x512",
22
- type: "image/png",
23
- },
24
- ],
25
- };
26
- }
@@ -1,12 +0,0 @@
1
- import {
2
- defineConfig,
3
- minimal2023Preset as preset,
4
- } from "@vite-pwa/assets-generator/config";
5
-
6
- export default defineConfig({
7
- headLinkOptions: {
8
- preset: "2023",
9
- },
10
- preset,
11
- images: ["public/logo.png"],
12
- });
@@ -1,142 +0,0 @@
1
- # Better-T-Stack Project Rules
2
-
3
- This is a {{projectName}} project created with Better-T-Stack CLI.
4
-
5
- ## Project Structure
6
-
7
- This is a monorepo with the following structure:
8
-
9
- {{#if (or (includes frontend "tanstack-router") (includes frontend "react-router") (includes frontend "tanstack-start")
10
- (includes frontend "next") (includes frontend "nuxt") (includes frontend "svelte") (includes frontend "solid"))}}
11
- - **`apps/web/`** - {{#if (eq backend "self")}}Fullstack application{{else}}Frontend application{{/if}}{{#if (includes frontend "tanstack-router")}} (React with TanStack Router){{else
12
- if (includes frontend "react-router")}} (React with React Router){{else if (includes frontend "next")}} (Next.js){{else
13
- if (includes frontend "nuxt")}} (Nuxt.js){{else if (includes frontend "svelte")}} (SvelteKit){{else if (includes
14
- frontend "solid")}} (SolidStart){{/if}}
15
- {{/if}}
16
-
17
- {{#if (ne backend "convex")}}
18
- {{#if (and (ne backend "none") (ne backend "self"))}}
19
- - **`apps/server/`** - Backend server{{#if (eq backend "hono")}} (Hono){{else if (eq backend "express")}}
20
- (Express){{else if (eq backend "fastify")}} (Fastify){{else if (eq backend "elysia")}} (Elysia){{else if (eq backend
21
- "next")}} (Next.js API){{/if}}
22
- {{/if}}
23
- {{else}}
24
- - **`packages/backend/`** - Convex backend functions
25
- {{/if}}
26
-
27
- {{#if (or (ne backend "none") (ne backend "convex"))}}
28
- {{#if (ne api "none")}}
29
- - **`packages/api/`** - Shared API logic and types
30
- {{/if}}
31
- {{#if (and (ne auth "none") (ne backend "convex"))}}
32
- - **`packages/auth/`** - Authentication logic and utilities
33
- {{/if}}
34
- {{#if (and (ne database "none") (ne orm "none") (ne backend "convex"))}}
35
- - **`packages/db/`** - Database schema and utilities
36
- {{/if}}
37
- {{/if}}
38
-
39
- {{#if (or (includes frontend "native-nativewind") (includes frontend "native-unistyles"))}}
40
- - **`apps/native/`** - React Native mobile app{{#if (includes frontend "native-nativewind")}} (with NativeWind){{else if
41
- (includes frontend "native-unistyles")}} (with Unistyles){{/if}}
42
- {{/if}}
43
-
44
- ## Available Scripts
45
-
46
- - `{{packageManager}} run dev` - Start all apps in development mode
47
- {{#if (and (or (includes frontend "tanstack-router") (includes frontend "react-router") (includes frontend "tanstack-start")
48
- (includes frontend "next") (includes frontend "nuxt") (includes frontend "svelte") (includes frontend "solid")) (ne backend "self"))}}
49
- - `{{packageManager}} run dev:web` - Start only the web app
50
- {{/if}}
51
- {{#if (and (ne backend "none") (ne backend "convex") (ne backend "self"))}}
52
- - `{{packageManager}} run dev:server` - Start only the server
53
- {{/if}}
54
- {{#if (or (includes frontend "native-nativewind") (includes frontend "native-unistyles"))}}
55
- - `{{packageManager}} run dev:native` - Start only the native app
56
- {{/if}}
57
-
58
- {{#if (and (ne database "none") (ne orm "none") (ne backend "convex"))}}
59
- ## Database Commands
60
-
61
- All database operations should be run from the {{#if (eq backend "self")}}web{{else}}server{{/if}} workspace:
62
-
63
- - `{{packageManager}} run db:push` - Push schema changes to database
64
- - `{{packageManager}} run db:studio` - Open database studio
65
- - `{{packageManager}} run db:generate` - Generate {{#if (eq orm "drizzle")}}Drizzle{{else if (eq orm
66
- "prisma")}}Prisma{{else}}{{orm}}{{/if}} files
67
- - `{{packageManager}} run db:migrate` - Run database migrations
68
-
69
- {{#if (eq orm "drizzle")}}
70
- Database schema files are located in {{#if (eq backend "self")}}`apps/web/src/db/schema/`{{else}}`apps/server/src/db/schema/`{{/if}}
71
- {{else if (eq orm "prisma")}}
72
- Database schema is located in {{#if (eq backend "self")}}`apps/web/prisma/schema.prisma`{{else}}`apps/server/prisma/schema.prisma`{{/if}}
73
- {{else if (eq orm "mongoose")}}
74
- Database models are located in {{#if (eq backend "self")}}`apps/web/src/db/models/`{{else}}`apps/server/src/db/models/`{{/if}}
75
- {{/if}}
76
- {{/if}}
77
-
78
- {{#if (ne api "none")}}
79
- ## API Structure
80
-
81
- {{#if (eq api "trpc")}}
82
- - tRPC routers are in {{#if (eq backend "self")}}`packages/api/src/routers/`{{else}}`apps/server/src/routers/`{{/if}}
83
- - Client-side tRPC utils are in `apps/web/src/utils/trpc.ts`
84
- {{else if (eq api "orpc")}}
85
- - oRPC endpoints are in {{#if (eq backend "self")}}`packages/api/src/api/`{{else}}`apps/server/src/api/`{{/if}}
86
- - Client-side API utils are in `apps/web/src/utils/api.ts`
87
- {{/if}}
88
- {{/if}}
89
-
90
- {{#if (eq auth "better-auth")}}
91
- ## Authentication
92
-
93
- Authentication is enabled in this project:
94
- {{#if (ne backend "convex")}}
95
- - Server auth logic is in {{#if (eq backend "self")}}`packages/auth/src/lib/auth.ts`{{else}}`apps/server/src/lib/auth.ts`{{/if}}
96
- {{#if (or (includes frontend "tanstack-router") (includes frontend "react-router") (includes frontend "tanstack-start")
97
- (includes frontend "next") (includes frontend "nuxt") (includes frontend "svelte") (includes frontend "solid"))}}
98
- - Web app auth client is in `apps/web/src/lib/auth-client.ts`
99
- {{/if}}
100
- {{#if (or (includes frontend "native-nativewind") (includes frontend "native-unistyles"))}}
101
- - Native app auth client is in `apps/native/src/lib/auth-client.ts`
102
- {{/if}}
103
- {{else}}
104
- {{/if}}
105
- {{/if}}
106
-
107
- ## Adding More Features
108
-
109
- You can add additional addons or deployment options to your project using:
110
-
111
- ```bash
112
- {{#if (eq packageManager "bun")}}bunx{{else if (eq packageManager "pnpm")}}pnpx{{else}}npx{{/if}} create-better-t-stack
113
- add
114
- ```
115
-
116
- Available addons you can add:
117
- - **Documentation**: Starlight, Fumadocs
118
- - **Linting**: Biome, Oxlint, Ultracite
119
- - **Other**: Ruler, Turborepo, PWA, Tauri, Husky
120
-
121
- You can also add web deployment configurations like Cloudflare Workers support.
122
-
123
- ## Project Configuration
124
-
125
- This project includes a `bts.jsonc` configuration file that stores your Better-T-Stack settings:
126
-
127
- - Contains your selected stack configuration (database, ORM, backend, frontend, etc.)
128
- - Used by the CLI to understand your project structure
129
- - Safe to delete if not needed
130
- - Updated automatically when using the `add` command
131
-
132
- ## Key Points
133
-
134
- - This is a {{#if (includes addons "turborepo")}}Turborepo {{/if}}monorepo using {{packageManager}} workspaces
135
- - Each app has its own `package.json` and dependencies
136
- - Run commands from the root to execute across all workspaces
137
- - Run workspace-specific commands with `{{packageManager}} run command-name`
138
- {{#if (includes addons "turborepo")}}
139
- - Turborepo handles build caching and parallel execution
140
- {{/if}}
141
- - Use `{{#if (eq packageManager "bun")}}bunx{{else if (eq packageManager "pnpm")}}pnpx{{else}}npx{{/if}}
142
- create-better-t-stack add` to add more features later
@@ -1,80 +0,0 @@
1
- # Ruler Configuration File
2
- # See https://okigu.com/ruler for documentation.
3
-
4
- # Default agents to run when --agents is not specified
5
- default_agents = []
6
-
7
- # --- Global MCP Server Configuration ---
8
- [mcp]
9
- # Enable/disable MCP propagation globally (default: true)
10
- enabled = true
11
- # Global merge strategy: 'merge' or 'overwrite' (default: 'merge')
12
- merge_strategy = "merge"
13
-
14
- # --- MCP Server Definitions ---
15
- [mcp_servers.context7]
16
- command = "npx"
17
- args = ["-y", "@upstash/context7-mcp"]
18
-
19
- {{#if (or (eq runtime "workers") (eq webDeploy "wrangler"))}}
20
- [mcp_servers.cloudflare]
21
- command = "npx"
22
- args = ["mcp-remote", "https://docs.mcp.cloudflare.com/sse"]
23
- {{/if}}
24
-
25
- {{#if (eq backend "convex")}}
26
- [mcp_servers.convex]
27
- command = "npx"
28
- args = ["-y", "convex@latest", "mcp", "start"]
29
- {{/if}}
30
-
31
- {{#if (or (includes frontend "tanstack-router") (includes frontend "react-router") (includes frontend "tanstack-start") (includes frontend "next"))}}
32
- [mcp_servers.shadcn]
33
- command = "npx"
34
- args = ["shadcn@latest", "mcp"]
35
- {{/if}}
36
-
37
- {{#if (eq dbSetup "planetscale")}}
38
- [mcp_servers.planetscale]
39
- command = "pscale"
40
- args = ["mcp", "server"]
41
- {{/if}}
42
-
43
- {{#if (eq dbSetup "prisma-postgres")}}
44
- [mcp_servers.prisma]
45
- command = "npx"
46
- args = ["-y", "prisma", "mcp"]
47
- {{/if}}
48
-
49
- {{#if (eq dbSetup "neon")}}
50
- [mcp_servers.neon]
51
- command = "npx"
52
- args = ["-y", "mcp-remote@latest", "https://mcp.neon.tech/mcp"]
53
- {{/if}}
54
-
55
- {{#if (eq dbSetup "mongodb-atlas")}}
56
- [mcp_servers.mongodb]
57
- command = "npx"
58
- args = ["-y", "mongodb-mcp-server", "--connectionString", "mongodb://localhost:27017/myDatabase", "--readOnly"]
59
- {{/if}}
60
-
61
- {{#if (eq auth "better-auth")}}
62
- [mcp_servers.better-auth]
63
- url = "https://mcp.chonkie.ai/better-auth/better-auth-builder/mcp"
64
- {{/if}}
65
-
66
- {{#if (includes frontend "nuxt")}}
67
- [mcp_servers.nuxt-ui]
68
- url = "https://ui.nuxt.com/mcp"
69
- {{/if}}
70
-
71
- {{#if (includes frontend "next")}}
72
- [mcp_servers.next-devtools]
73
- command = "npx"
74
- args = ["-y", "next-devtools-mcp@latest"]
75
- {{/if}}
76
-
77
- # --- Global .gitignore Configuration ---
78
- [gitignore]
79
- # Enable/disable automatic .gitignore updates (default: true)
80
- enabled = true
@@ -1,74 +0,0 @@
1
- {
2
- "$schema": "https://turbo.build/schema.json",
3
- "ui": "tui",
4
- "tasks": {
5
- "build": {
6
- "dependsOn": ["^build"],
7
- "inputs": ["$TURBO_DEFAULT$", ".env*"],
8
- "outputs": ["dist/**"]
9
- },
10
- "lint": {
11
- "dependsOn": ["^lint"]
12
- },
13
- "check-types": {
14
- "dependsOn": ["^check-types"]
15
- },
16
- "dev": {
17
- "cache": false,
18
- "persistent": true
19
- }{{#if (eq backend "convex")}},
20
- "dev:setup": {
21
- "cache": false,
22
- "persistent": true
23
- }
24
- {{else}}{{#unless (or (eq database "none") (eq orm "none"))}},
25
- "db:push": {
26
- "cache": false,
27
- "persistent": true
28
- },
29
- "db:studio": {
30
- "cache": false,
31
- "persistent": true
32
- },
33
- "db:migrate": {
34
- "cache": false,
35
- "persistent": true
36
- },
37
- "db:generate": {
38
- "cache": false,
39
- "persistent": true
40
- }
41
- {{/unless}}{{/if}}
42
- {{#if (eq dbSetup "docker")}},
43
- "db:start": {
44
- "cache": false,
45
- "persistent": true
46
- },
47
- "db:stop": {
48
- "cache": false,
49
- "persistent": true
50
- },
51
- "db:watch": {
52
- "cache": false,
53
- "persistent": true
54
- },
55
- "db:down": {
56
- "cache": false,
57
- "persistent": true
58
- }{{/if}}
59
- {{#if (and (eq database "sqlite") (ne dbSetup "d1"))}},
60
- "db:local": {
61
- "cache": false,
62
- "persistent": true
63
- }
64
- {{/if}}
65
- {{#if (or (eq webDeploy "cloudflare") (eq serverDeploy "cloudflare"))}},
66
- "deploy": {
67
- "cache": false
68
- },
69
- "destroy": {
70
- "cache": false
71
- }
72
- {{/if}}
73
- }
74
- }
@@ -1,26 +0,0 @@
1
- {
2
- "$schema": "./node_modules/@biomejs/biome/configuration_schema.json",
3
- "files": {
4
- "ignoreUnknown": false,
5
- "includes": [
6
- "**",
7
- "!**/.next",
8
- "!**/dist",
9
- "!**/.turbo",
10
- "!**/dev-dist",
11
- "!**/.zed",
12
- "!**/.vscode",
13
- "!**/routeTree.gen.ts",
14
- "!**/src-tauri",
15
- "!**/.nuxt",
16
- "!bts.jsonc",
17
- "!**/.expo",
18
- "!**/.wrangler",
19
- "!**/.alchemy",
20
- "!**/.svelte-kit",
21
- "!**/wrangler.jsonc",
22
- "!**/.source",
23
- "!**/convex/_generated"
24
- ]
25
- }
26
- }
@@ -1,50 +0,0 @@
1
- import { createContext } from "@{{projectName}}/api/context";
2
- import { appRouter } from "@{{projectName}}/api/routers/index";
3
- import { OpenAPIHandler } from "@orpc/openapi/fetch";
4
- import { OpenAPIReferencePlugin } from "@orpc/openapi/plugins";
5
- import { ZodToJsonSchemaConverter } from "@orpc/zod/zod4";
6
- import { RPCHandler } from "@orpc/server/fetch";
7
- import { onError } from "@orpc/server";
8
- import { NextRequest } from "next/server";
9
-
10
- const rpcHandler = new RPCHandler(appRouter, {
11
- interceptors: [
12
- onError((error) => {
13
- console.error(error);
14
- }),
15
- ],
16
- });
17
- const apiHandler = new OpenAPIHandler(appRouter, {
18
- plugins: [
19
- new OpenAPIReferencePlugin({
20
- schemaConverters: [new ZodToJsonSchemaConverter()],
21
- }),
22
- ],
23
- interceptors: [
24
- onError((error) => {
25
- console.error(error);
26
- }),
27
- ],
28
- });
29
-
30
- async function handleRequest(req: NextRequest) {
31
- const rpcResult = await rpcHandler.handle(req, {
32
- prefix: "/api/rpc",
33
- context: await createContext(req),
34
- });
35
- if (rpcResult.response) return rpcResult.response;
36
-
37
- const apiResult = await apiHandler.handle(req, {
38
- prefix: "/api/rpc/api-reference",
39
- context: await createContext(req),
40
- });
41
- if (apiResult.response) return apiResult.response;
42
-
43
- return new Response("Not found", { status: 404 });
44
- }
45
-
46
- export const GET = handleRequest;
47
- export const POST = handleRequest;
48
- export const PUT = handleRequest;
49
- export const PATCH = handleRequest;
50
- export const DELETE = handleRequest;
@@ -1,58 +0,0 @@
1
- import { createContext } from "@{{projectName}}/api/context";
2
- import { appRouter } from "@{{projectName}}/api/routers/index";
3
- import { OpenAPIHandler } from "@orpc/openapi/fetch";
4
- import { OpenAPIReferencePlugin } from "@orpc/openapi/plugins";
5
- import { ZodToJsonSchemaConverter } from "@orpc/zod/zod4";
6
- import { RPCHandler } from "@orpc/server/fetch";
7
- import { onError } from "@orpc/server";
8
- import { createFileRoute } from "@tanstack/react-router";
9
-
10
- const rpcHandler = new RPCHandler(appRouter, {
11
- interceptors: [
12
- onError((error) => {
13
- console.error(error);
14
- }),
15
- ],
16
- });
17
-
18
- const apiHandler = new OpenAPIHandler(appRouter, {
19
- plugins: [
20
- new OpenAPIReferencePlugin({
21
- schemaConverters: [new ZodToJsonSchemaConverter()],
22
- }),
23
- ],
24
- interceptors: [
25
- onError((error) => {
26
- console.error(error);
27
- }),
28
- ],
29
- });
30
-
31
- async function handle({ request }: { request: Request }) {
32
- const rpcResult = await rpcHandler.handle(request, {
33
- prefix: "/api/rpc",
34
- context: await createContext({ req: request }),
35
- });
36
- if (rpcResult.response) return rpcResult.response;
37
-
38
- const apiResult = await apiHandler.handle(request, {
39
- prefix: "/api/rpc/api-reference",
40
- context: await createContext({ req: request }),
41
- });
42
- if (apiResult.response) return apiResult.response;
43
-
44
- return new Response("Not found", { status: 404 });
45
- }
46
-
47
- export const Route = createFileRoute('/api/rpc/$')({
48
- server: {
49
- handlers: {
50
- HEAD: handle,
51
- GET: handle,
52
- POST: handle,
53
- PUT: handle,
54
- PATCH: handle,
55
- DELETE: handle,
56
- },
57
- },
58
- })
@@ -1,39 +0,0 @@
1
- import { createORPCClient } from "@orpc/client";
2
- import { RPCLink } from "@orpc/client/fetch";
3
- import { createTanstackQueryUtils } from "@orpc/tanstack-query";
4
- import { QueryCache, QueryClient } from "@tanstack/react-query";
5
- import type { AppRouterClient } from "@{{projectName}}/api/routers/index";
6
- import { env } from "@{{projectName}}/env/native";
7
- {{#if (eq auth "better-auth")}}
8
- import { authClient } from "@/lib/auth-client";
9
- {{/if}}
10
-
11
- export const queryClient = new QueryClient({
12
- queryCache: new QueryCache({
13
- onError: (error) => {
14
- console.log(error)
15
- },
16
- }),
17
- });
18
-
19
- export const link = new RPCLink({
20
- {{#if (eq backend "self")}}
21
- url: `${env.EXPO_PUBLIC_SERVER_URL}/api/rpc`,
22
- {{else}}
23
- url: `${env.EXPO_PUBLIC_SERVER_URL}/rpc`,
24
- {{/if}}
25
- {{#if (eq auth "better-auth")}}
26
- headers() {
27
- const headers = new Map<string, string>();
28
- const cookies = authClient.getCookie();
29
- if (cookies) {
30
- headers.set("Cookie", cookies);
31
- }
32
- return Object.fromEntries(headers);
33
- },
34
- {{/if}}
35
- });
36
-
37
- export const client: AppRouterClient = createORPCClient(link);
38
-
39
- export const orpc = createTanstackQueryUtils(client);
@@ -1,34 +0,0 @@
1
- # dependencies (bun install)
2
- node_modules
3
-
4
- # output
5
- out
6
- dist
7
- *.tgz
8
-
9
- # code coverage
10
- coverage
11
- *.lcov
12
-
13
- # logs
14
- logs
15
- _.log
16
- report.[0-9]_.[0-9]_.[0-9]_.[0-9]_.json
17
-
18
- # dotenv environment variable files
19
- .env
20
- .env.development.local
21
- .env.test.local
22
- .env.production.local
23
- .env.local
24
-
25
- # caches
26
- .eslintcache
27
- .cache
28
- *.tsbuildinfo
29
-
30
- # IntelliJ based IDEs
31
- .idea
32
-
33
- # Finder (MacOS) folder config
34
- .DS_Store
@@ -1,15 +0,0 @@
1
- {
2
- "name": "@{{projectName}}/api",
3
- "exports": {
4
- ".": {
5
- "default": "./src/index.ts"
6
- },
7
- "./*": {
8
- "default": "./src/*.ts"
9
- }
10
- },
11
- "type": "module",
12
- "scripts": {},
13
- "devDependencies": {},
14
- "dependencies": {}
15
- }