@undp/create-app 0.2.1 → 0.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (279) hide show
  1. package/README.md +20 -21
  2. package/bin/generateFiles/generateEnv.js +21 -0
  3. package/bin/generateFiles/generateLayoutForNext.js +40 -0
  4. package/bin/generateFiles/generateNextEnvTypes.js +9 -0
  5. package/bin/generateFiles/generatePackageJson.js +10 -11
  6. package/bin/generateFiles/generatePageForNext.js +102 -0
  7. package/bin/generateFiles/generateStylesCss.js +8 -0
  8. package/bin/generateFiles/index.js +5 -0
  9. package/bin/index.js +25 -9
  10. package/bin/promptUser.js +22 -26
  11. package/bin/templates/next/auth/app/about/page.tsx +51 -0
  12. package/bin/templates/next/{withDataViz/auth → auth}/app/layout.tsx +2 -1
  13. package/bin/templates/next/{withDataViz/auth → auth}/app/login/page.tsx +20 -2
  14. package/bin/templates/next/auth/app/page.tsx +75 -0
  15. package/bin/templates/next/auth/app/user/page.tsx +84 -0
  16. package/bin/templates/next/auth/public/imgs/Zustand-logo.svg +266 -0
  17. package/bin/templates/next/auth/stores/counter.ts +23 -0
  18. package/bin/templates/next/basic/app/about/page.tsx +51 -0
  19. package/bin/templates/next/{withDataViz/basic → basic}/app/layout.tsx +2 -1
  20. package/bin/templates/next/basic/app/page.tsx +75 -0
  21. package/bin/templates/next/basic/public/imgs/Zustand-logo.svg +266 -0
  22. package/bin/templates/next/basic/stores/counter.ts +23 -0
  23. package/bin/templates/queryIntegrationForNext/integration/tanstack-query.tsx +27 -0
  24. package/bin/templates/vite/basic/public/imgs/Zustand-logo.svg +266 -0
  25. package/bin/templates/vite/{withDataViz/query → basic}/src/App.tsx +30 -31
  26. package/bin/templates/vite/{withDataViz/basic → basic}/src/main.tsx +1 -1
  27. package/bin/templates/vite/basic/src/stores/counter.ts +23 -0
  28. package/bin/templates/vite/query/public/imgs/Zustand-logo.svg +266 -0
  29. package/bin/templates/vite/{withoutDataViz/query → query}/src/App.tsx +39 -10
  30. package/bin/templates/vite/{withDataViz/query → query}/src/integration/tanstack-query.tsx +2 -1
  31. package/bin/templates/vite/query/src/stores/counter.ts +23 -0
  32. package/bin/templates/vite/query+router/public/imgs/Zustand-logo.svg +266 -0
  33. package/bin/templates/vite/query+router/src/App.tsx +73 -0
  34. package/bin/templates/vite/{withDataViz/query+router → query+router}/src/integration/tanstack-query.tsx +2 -1
  35. package/bin/templates/vite/{withDataViz/query+router → query+router}/src/routes/queryDemo.tsx +12 -8
  36. package/bin/templates/vite/query+router/src/stores/counter.ts +23 -0
  37. package/bin/templates/vite/router/public/imgs/Zustand-logo.svg +266 -0
  38. package/bin/templates/vite/router/src/App.tsx +73 -0
  39. package/bin/templates/vite/{withDataViz/router → router}/src/main.tsx +2 -2
  40. package/bin/templates/vite/{withoutDataViz/router/src/App.tsx → router/src/routes/about.tsx} +14 -7
  41. package/bin/templates/vite/router/src/stores/counter.ts +23 -0
  42. package/bin/templates/vite/{withoutDataViz/router → router}/src/styles/style.css +0 -1
  43. package/package.json +1 -1
  44. package/bin/templates/next/withDataViz/auth/README.md +0 -108
  45. package/bin/templates/next/withDataViz/auth/app/about/page.tsx +0 -33
  46. package/bin/templates/next/withDataViz/auth/app/page.tsx +0 -33
  47. package/bin/templates/next/withDataViz/auth/app/user/page.tsx +0 -86
  48. package/bin/templates/next/withDataViz/basic/README.md +0 -56
  49. package/bin/templates/next/withDataViz/basic/app/about/page.tsx +0 -33
  50. package/bin/templates/next/withDataViz/basic/app/page.tsx +0 -33
  51. package/bin/templates/next/withoutDataViz/auth/app/about/page.tsx +0 -33
  52. package/bin/templates/next/withoutDataViz/auth/app/api/auth/[...all]/route.ts +0 -5
  53. package/bin/templates/next/withoutDataViz/auth/app/globals.css +0 -3
  54. package/bin/templates/next/withoutDataViz/auth/app/layout.tsx +0 -30
  55. package/bin/templates/next/withoutDataViz/auth/app/login/page.tsx +0 -45
  56. package/bin/templates/next/withoutDataViz/auth/app/page.tsx +0 -33
  57. package/bin/templates/next/withoutDataViz/auth/app/user/page.tsx +0 -86
  58. package/bin/templates/next/withoutDataViz/auth/components/Footer.tsx +0 -16
  59. package/bin/templates/next/withoutDataViz/auth/components/Header.tsx +0 -56
  60. package/bin/templates/next/withoutDataViz/auth/eslint.config.mjs +0 -103
  61. package/bin/templates/next/withoutDataViz/auth/lib/auth-client.ts +0 -7
  62. package/bin/templates/next/withoutDataViz/auth/lib/auth.ts +0 -30
  63. package/bin/templates/next/withoutDataViz/auth/next.config.ts +0 -10
  64. package/bin/templates/next/withoutDataViz/auth/postcss.config.mjs +0 -7
  65. package/bin/templates/next/withoutDataViz/auth/public/next.svg +0 -1
  66. package/bin/templates/next/withoutDataViz/auth/tsconfig.json +0 -34
  67. package/bin/templates/next/withoutDataViz/basic/app/about/page.tsx +0 -33
  68. package/bin/templates/next/withoutDataViz/basic/app/globals.css +0 -3
  69. package/bin/templates/next/withoutDataViz/basic/app/layout.tsx +0 -31
  70. package/bin/templates/next/withoutDataViz/basic/app/page.tsx +0 -33
  71. package/bin/templates/next/withoutDataViz/basic/components/Footer.tsx +0 -16
  72. package/bin/templates/next/withoutDataViz/basic/components/Header.tsx +0 -27
  73. package/bin/templates/next/withoutDataViz/basic/eslint.config.mjs +0 -103
  74. package/bin/templates/next/withoutDataViz/basic/next.config.ts +0 -7
  75. package/bin/templates/next/withoutDataViz/basic/postcss.config.mjs +0 -7
  76. package/bin/templates/next/withoutDataViz/basic/public/next.svg +0 -1
  77. package/bin/templates/next/withoutDataViz/basic/tsconfig.json +0 -34
  78. package/bin/templates/vite/withDataViz/basic/README.md +0 -76
  79. package/bin/templates/vite/withDataViz/basic/src/App.tsx +0 -38
  80. package/bin/templates/vite/withDataViz/basic/src/styles/style.css +0 -4
  81. package/bin/templates/vite/withDataViz/basic/vite.config.ts +0 -74
  82. package/bin/templates/vite/withDataViz/query/.prettierrc +0 -10
  83. package/bin/templates/vite/withDataViz/query/README.md +0 -80
  84. package/bin/templates/vite/withDataViz/query/public/favicon.ico +0 -0
  85. package/bin/templates/vite/withDataViz/query/src/styles/style.css +0 -4
  86. package/bin/templates/vite/withDataViz/query/tailwind.config.js +0 -7
  87. package/bin/templates/vite/withDataViz/query+router/README.md +0 -112
  88. package/bin/templates/vite/withDataViz/query+router/src/App.tsx +0 -42
  89. package/bin/templates/vite/withDataViz/query+router/src/styles/style.css +0 -4
  90. package/bin/templates/vite/withDataViz/router/.prettierrc +0 -10
  91. package/bin/templates/vite/withDataViz/router/README.md +0 -107
  92. package/bin/templates/vite/withDataViz/router/public/favicon.ico +0 -0
  93. package/bin/templates/vite/withDataViz/router/public/imgs/undp-logo-blue.svg +0 -1
  94. package/bin/templates/vite/withDataViz/router/src/App.tsx +0 -51
  95. package/bin/templates/vite/withDataViz/router/src/assets/undp-logo-blue.svg +0 -1
  96. package/bin/templates/vite/withDataViz/router/src/routes/about.tsx +0 -73
  97. package/bin/templates/vite/withDataViz/router/src/styles/style.css +0 -4
  98. package/bin/templates/vite/withDataViz/router/tailwind.config.js +0 -7
  99. package/bin/templates/vite/withoutDataViz/basic/.prettierrc +0 -10
  100. package/bin/templates/vite/withoutDataViz/basic/eslint.config.mjs +0 -97
  101. package/bin/templates/vite/withoutDataViz/basic/index.html +0 -13
  102. package/bin/templates/vite/withoutDataViz/basic/public/favicon.ico +0 -0
  103. package/bin/templates/vite/withoutDataViz/basic/public/imgs/Vitejs-logo.svg +0 -15
  104. package/bin/templates/vite/withoutDataViz/basic/public/imgs/undp-logo-blue.svg +0 -1
  105. package/bin/templates/vite/withoutDataViz/basic/src/App.tsx +0 -38
  106. package/bin/templates/vite/withoutDataViz/basic/src/assets/undp-logo-blue.svg +0 -1
  107. package/bin/templates/vite/withoutDataViz/basic/src/components/Footer.tsx +0 -14
  108. package/bin/templates/vite/withoutDataViz/basic/src/components/Header.tsx +0 -25
  109. package/bin/templates/vite/withoutDataViz/basic/src/main.tsx +0 -10
  110. package/bin/templates/vite/withoutDataViz/basic/src/styles/fonts.css +0 -213
  111. package/bin/templates/vite/withoutDataViz/basic/src/vite-env.d.ts +0 -1
  112. package/bin/templates/vite/withoutDataViz/basic/tailwind.config.js +0 -7
  113. package/bin/templates/vite/withoutDataViz/basic/tsconfig.json +0 -29
  114. package/bin/templates/vite/withoutDataViz/basic/tsconfig.node.json +0 -9
  115. package/bin/templates/vite/withoutDataViz/query/.prettierrc +0 -10
  116. package/bin/templates/vite/withoutDataViz/query/eslint.config.mjs +0 -97
  117. package/bin/templates/vite/withoutDataViz/query/index.html +0 -13
  118. package/bin/templates/vite/withoutDataViz/query/public/favicon.ico +0 -0
  119. package/bin/templates/vite/withoutDataViz/query/public/imgs/Tailwind_CSS_Logo.svg +0 -1
  120. package/bin/templates/vite/withoutDataViz/query/public/imgs/Vitejs-logo.svg +0 -15
  121. package/bin/templates/vite/withoutDataViz/query/public/imgs/logo-color-600.png +0 -0
  122. package/bin/templates/vite/withoutDataViz/query/public/imgs/undp-logo-blue.svg +0 -1
  123. package/bin/templates/vite/withoutDataViz/query/src/assets/undp-logo-blue.svg +0 -1
  124. package/bin/templates/vite/withoutDataViz/query/src/components/Footer.tsx +0 -14
  125. package/bin/templates/vite/withoutDataViz/query/src/components/Header.tsx +0 -25
  126. package/bin/templates/vite/withoutDataViz/query/src/integration/tanstack-query.tsx +0 -27
  127. package/bin/templates/vite/withoutDataViz/query/src/main.tsx +0 -21
  128. package/bin/templates/vite/withoutDataViz/query/src/styles/fonts.css +0 -213
  129. package/bin/templates/vite/withoutDataViz/query/src/vite-env.d.ts +0 -1
  130. package/bin/templates/vite/withoutDataViz/query/tailwind.config.js +0 -7
  131. package/bin/templates/vite/withoutDataViz/query/tsconfig.json +0 -29
  132. package/bin/templates/vite/withoutDataViz/query/tsconfig.node.json +0 -9
  133. package/bin/templates/vite/withoutDataViz/query/vite.config.ts +0 -75
  134. package/bin/templates/vite/withoutDataViz/query+router/.prettierrc +0 -10
  135. package/bin/templates/vite/withoutDataViz/query+router/eslint.config.mjs +0 -97
  136. package/bin/templates/vite/withoutDataViz/query+router/index.html +0 -13
  137. package/bin/templates/vite/withoutDataViz/query+router/public/favicon.ico +0 -0
  138. package/bin/templates/vite/withoutDataViz/query+router/public/imgs/Vitejs-logo.svg +0 -15
  139. package/bin/templates/vite/withoutDataViz/query+router/public/imgs/logo-color-600.png +0 -0
  140. package/bin/templates/vite/withoutDataViz/query+router/public/imgs/undp-logo-blue.svg +0 -1
  141. package/bin/templates/vite/withoutDataViz/query+router/src/App.tsx +0 -42
  142. package/bin/templates/vite/withoutDataViz/query+router/src/assets/undp-logo-blue.svg +0 -1
  143. package/bin/templates/vite/withoutDataViz/query+router/src/components/Footer.tsx +0 -14
  144. package/bin/templates/vite/withoutDataViz/query+router/src/components/Header.tsx +0 -25
  145. package/bin/templates/vite/withoutDataViz/query+router/src/integration/tanstack-query.tsx +0 -27
  146. package/bin/templates/vite/withoutDataViz/query+router/src/main.tsx +0 -73
  147. package/bin/templates/vite/withoutDataViz/query+router/src/routes/queryDemo.tsx +0 -73
  148. package/bin/templates/vite/withoutDataViz/query+router/src/styles/fonts.css +0 -213
  149. package/bin/templates/vite/withoutDataViz/query+router/src/vite-env.d.ts +0 -1
  150. package/bin/templates/vite/withoutDataViz/query+router/tailwind.config.js +0 -7
  151. package/bin/templates/vite/withoutDataViz/query+router/tsconfig.json +0 -29
  152. package/bin/templates/vite/withoutDataViz/query+router/tsconfig.node.json +0 -9
  153. package/bin/templates/vite/withoutDataViz/query+router/vite.config.ts +0 -75
  154. package/bin/templates/vite/withoutDataViz/router/.prettierrc +0 -10
  155. package/bin/templates/vite/withoutDataViz/router/eslint.config.mjs +0 -97
  156. package/bin/templates/vite/withoutDataViz/router/index.html +0 -13
  157. package/bin/templates/vite/withoutDataViz/router/public/favicon.ico +0 -0
  158. package/bin/templates/vite/withoutDataViz/router/public/imgs/Tailwind_CSS_Logo.svg +0 -1
  159. package/bin/templates/vite/withoutDataViz/router/public/imgs/Vitejs-logo.svg +0 -15
  160. package/bin/templates/vite/withoutDataViz/router/public/imgs/logo-color-600.png +0 -0
  161. package/bin/templates/vite/withoutDataViz/router/public/imgs/undp-logo-blue.svg +0 -1
  162. package/bin/templates/vite/withoutDataViz/router/src/assets/undp-logo-blue.svg +0 -1
  163. package/bin/templates/vite/withoutDataViz/router/src/components/Footer.tsx +0 -14
  164. package/bin/templates/vite/withoutDataViz/router/src/components/Header.tsx +0 -25
  165. package/bin/templates/vite/withoutDataViz/router/src/main.tsx +0 -66
  166. package/bin/templates/vite/withoutDataViz/router/src/routes/about.tsx +0 -73
  167. package/bin/templates/vite/withoutDataViz/router/src/styles/fonts.css +0 -213
  168. package/bin/templates/vite/withoutDataViz/router/src/vite-env.d.ts +0 -1
  169. package/bin/templates/vite/withoutDataViz/router/tailwind.config.js +0 -7
  170. package/bin/templates/vite/withoutDataViz/router/tsconfig.json +0 -29
  171. package/bin/templates/vite/withoutDataViz/router/tsconfig.node.json +0 -9
  172. package/bin/templates/vite/withoutDataViz/router/vite.config.ts +0 -75
  173. /package/bin/templates/next/{withDataViz/auth → auth}/.prettierrc +0 -0
  174. /package/bin/templates/next/{withoutDataViz/auth → auth}/README.md +0 -0
  175. /package/bin/templates/next/{withDataViz/auth → auth}/app/api/auth/[...all]/route.ts +0 -0
  176. /package/bin/templates/next/{withDataViz/auth → auth}/app/favicon.ico +0 -0
  177. /package/bin/templates/next/{withDataViz/auth → auth}/app/globals.css +0 -0
  178. /package/bin/templates/next/{withDataViz/auth → auth}/components/Footer.tsx +0 -0
  179. /package/bin/templates/next/{withDataViz/auth → auth}/components/Header.tsx +0 -0
  180. /package/bin/templates/next/{withDataViz/auth → auth}/eslint.config.mjs +0 -0
  181. /package/bin/templates/next/{withDataViz/auth → auth}/lib/auth-client.ts +0 -0
  182. /package/bin/templates/next/{withDataViz/auth → auth}/lib/auth.ts +0 -0
  183. /package/bin/templates/next/{withDataViz/auth → auth}/next.config.ts +0 -0
  184. /package/bin/templates/next/{withDataViz/auth → auth}/postcss.config.mjs +0 -0
  185. /package/bin/templates/{vite/withDataViz/basic → next/auth}/public/imgs/Tailwind_CSS_Logo.svg +0 -0
  186. /package/bin/templates/next/{withDataViz/auth/public → auth/public/imgs}/next.svg +0 -0
  187. /package/bin/templates/next/{withDataViz/auth/public → auth/public/imgs}/undp-logo-blue.svg +0 -0
  188. /package/bin/templates/next/{withDataViz/auth → auth}/tailwind.config.js +0 -0
  189. /package/bin/templates/next/{withDataViz/auth → auth}/tsconfig.json +0 -0
  190. /package/bin/templates/next/{withDataViz/basic → basic}/.prettierrc +0 -0
  191. /package/bin/templates/next/{withoutDataViz/basic → basic}/README.md +0 -0
  192. /package/bin/templates/next/{withDataViz/basic → basic}/app/favicon.ico +0 -0
  193. /package/bin/templates/next/{withDataViz/basic → basic}/app/globals.css +0 -0
  194. /package/bin/templates/next/{withDataViz/basic → basic}/components/Footer.tsx +0 -0
  195. /package/bin/templates/next/{withDataViz/basic → basic}/components/Header.tsx +0 -0
  196. /package/bin/templates/next/{withDataViz/basic → basic}/eslint.config.mjs +0 -0
  197. /package/bin/templates/next/{withDataViz/basic → basic}/next.config.ts +0 -0
  198. /package/bin/templates/next/{withDataViz/basic → basic}/postcss.config.mjs +0 -0
  199. /package/bin/templates/{vite/withDataViz/query+router → next/basic}/public/imgs/Tailwind_CSS_Logo.svg +0 -0
  200. /package/bin/templates/next/{withDataViz/basic/public → basic/public/imgs}/next.svg +0 -0
  201. /package/bin/templates/next/{withDataViz/basic/public → basic/public/imgs}/undp-logo-blue.svg +0 -0
  202. /package/bin/templates/next/{withDataViz/basic → basic}/tailwind.config.js +0 -0
  203. /package/bin/templates/next/{withDataViz/basic → basic}/tsconfig.json +0 -0
  204. /package/bin/templates/{next/withoutDataViz/auth → vite/basic}/.prettierrc +0 -0
  205. /package/bin/templates/vite/{withoutDataViz/basic → basic}/README.md +0 -0
  206. /package/bin/templates/vite/{withDataViz/basic → basic}/eslint.config.mjs +0 -0
  207. /package/bin/templates/vite/{withDataViz/basic → basic}/index.html +0 -0
  208. /package/bin/templates/{next/withoutDataViz/auth/app → vite/basic/public}/favicon.ico +0 -0
  209. /package/bin/templates/vite/{withDataViz/query → basic}/public/imgs/Tailwind_CSS_Logo.svg +0 -0
  210. /package/bin/templates/vite/{withDataViz/basic → basic}/public/imgs/Vitejs-logo.svg +0 -0
  211. /package/bin/templates/{next/withoutDataViz/auth/public → vite/basic/public/imgs}/undp-logo-blue.svg +0 -0
  212. /package/bin/templates/{next/withoutDataViz/basic/public → vite/basic/src/assets}/undp-logo-blue.svg +0 -0
  213. /package/bin/templates/vite/{withDataViz/basic → basic}/src/components/Footer.tsx +0 -0
  214. /package/bin/templates/vite/{withDataViz/basic → basic}/src/components/Header.tsx +0 -0
  215. /package/bin/templates/vite/{withDataViz/basic → basic}/src/styles/fonts.css +0 -0
  216. /package/bin/templates/vite/{withoutDataViz/basic → basic}/src/styles/style.css +0 -0
  217. /package/bin/templates/vite/{withDataViz/basic → basic}/src/vite-env.d.ts +0 -0
  218. /package/bin/templates/{next/withoutDataViz/auth → vite/basic}/tailwind.config.js +0 -0
  219. /package/bin/templates/vite/{withDataViz/basic → basic}/tsconfig.json +0 -0
  220. /package/bin/templates/vite/{withDataViz/basic → basic}/tsconfig.node.json +0 -0
  221. /package/bin/templates/vite/{withDataViz/query+router → basic}/vite.config.ts +0 -0
  222. /package/bin/templates/vite/{withDataViz/basic → query}/.prettierrc +0 -0
  223. /package/bin/templates/vite/{withoutDataViz/query → query}/README.md +0 -0
  224. /package/bin/templates/vite/{withDataViz/query → query}/eslint.config.mjs +0 -0
  225. /package/bin/templates/vite/{withDataViz/query → query}/index.html +0 -0
  226. /package/bin/templates/vite/{withDataViz/basic → query}/public/favicon.ico +0 -0
  227. /package/bin/templates/vite/{withoutDataViz/basic → query}/public/imgs/Tailwind_CSS_Logo.svg +0 -0
  228. /package/bin/templates/vite/{withDataViz/query/public/imgs/logo-color-600.png → query/public/imgs/Tanstack-logo.png} +0 -0
  229. /package/bin/templates/vite/{withDataViz/query → query}/public/imgs/Vitejs-logo.svg +0 -0
  230. /package/bin/templates/vite/{withDataViz/query+router → query}/public/imgs/undp-logo-blue.svg +0 -0
  231. /package/bin/templates/vite/{withDataViz/query+router → query}/src/assets/undp-logo-blue.svg +0 -0
  232. /package/bin/templates/vite/{withDataViz/query → query}/src/components/Footer.tsx +0 -0
  233. /package/bin/templates/vite/{withDataViz/query → query}/src/components/Header.tsx +0 -0
  234. /package/bin/templates/vite/{withDataViz/query → query}/src/main.tsx +0 -0
  235. /package/bin/templates/vite/{withDataViz/query → query}/src/styles/fonts.css +0 -0
  236. /package/bin/templates/vite/{withoutDataViz/query → query}/src/styles/style.css +0 -0
  237. /package/bin/templates/vite/{withDataViz/query → query}/src/vite-env.d.ts +0 -0
  238. /package/bin/templates/vite/{withDataViz/basic → query}/tailwind.config.js +0 -0
  239. /package/bin/templates/vite/{withDataViz/query → query}/tsconfig.json +0 -0
  240. /package/bin/templates/vite/{withDataViz/query → query}/tsconfig.node.json +0 -0
  241. /package/bin/templates/vite/{withDataViz/router → query}/vite.config.ts +0 -0
  242. /package/bin/templates/{next/withoutDataViz/basic → vite/query+router}/.prettierrc +0 -0
  243. /package/bin/templates/vite/{withoutDataViz/query+router → query+router}/README.md +0 -0
  244. /package/bin/templates/vite/{withDataViz/query+router → query+router}/eslint.config.mjs +0 -0
  245. /package/bin/templates/vite/{withDataViz/query+router → query+router}/index.html +0 -0
  246. /package/bin/templates/{next/withoutDataViz/basic/app → vite/query+router/public}/favicon.ico +0 -0
  247. /package/bin/templates/vite/{withDataViz/router → query+router}/public/imgs/Tailwind_CSS_Logo.svg +0 -0
  248. /package/bin/templates/vite/{withDataViz/query+router/public/imgs/logo-color-600.png → query+router/public/imgs/Tanstack-logo.png} +0 -0
  249. /package/bin/templates/vite/{withDataViz/query+router → query+router}/public/imgs/Vitejs-logo.svg +0 -0
  250. /package/bin/templates/vite/{withDataViz/basic → query+router}/public/imgs/undp-logo-blue.svg +0 -0
  251. /package/bin/templates/vite/{withDataViz/basic → query+router}/src/assets/undp-logo-blue.svg +0 -0
  252. /package/bin/templates/vite/{withDataViz/query+router → query+router}/src/components/Footer.tsx +0 -0
  253. /package/bin/templates/vite/{withDataViz/query+router → query+router}/src/components/Header.tsx +0 -0
  254. /package/bin/templates/vite/{withDataViz/query+router → query+router}/src/main.tsx +0 -0
  255. /package/bin/templates/vite/{withDataViz/query+router → query+router}/src/styles/fonts.css +0 -0
  256. /package/bin/templates/vite/{withoutDataViz/query+router → query+router}/src/styles/style.css +0 -0
  257. /package/bin/templates/vite/{withDataViz/query+router → query+router}/src/vite-env.d.ts +0 -0
  258. /package/bin/templates/{next/withoutDataViz/basic → vite/query+router}/tailwind.config.js +0 -0
  259. /package/bin/templates/vite/{withDataViz/query+router → query+router}/tsconfig.json +0 -0
  260. /package/bin/templates/vite/{withDataViz/query+router → query+router}/tsconfig.node.json +0 -0
  261. /package/bin/templates/vite/{withDataViz/query → query+router}/vite.config.ts +0 -0
  262. /package/bin/templates/vite/{withDataViz/query+router → router}/.prettierrc +0 -0
  263. /package/bin/templates/vite/{withoutDataViz/router → router}/README.md +0 -0
  264. /package/bin/templates/vite/{withDataViz/router → router}/eslint.config.mjs +0 -0
  265. /package/bin/templates/vite/{withDataViz/router → router}/index.html +0 -0
  266. /package/bin/templates/vite/{withDataViz/query+router → router}/public/favicon.ico +0 -0
  267. /package/bin/templates/vite/{withoutDataViz/query+router → router}/public/imgs/Tailwind_CSS_Logo.svg +0 -0
  268. /package/bin/templates/vite/{withDataViz/router/public/imgs/logo-color-600.png → router/public/imgs/Tanstack-logo.png} +0 -0
  269. /package/bin/templates/vite/{withDataViz/router → router}/public/imgs/Vitejs-logo.svg +0 -0
  270. /package/bin/templates/vite/{withDataViz/query → router}/public/imgs/undp-logo-blue.svg +0 -0
  271. /package/bin/templates/vite/{withDataViz/query → router}/src/assets/undp-logo-blue.svg +0 -0
  272. /package/bin/templates/vite/{withDataViz/router → router}/src/components/Footer.tsx +0 -0
  273. /package/bin/templates/vite/{withDataViz/router → router}/src/components/Header.tsx +0 -0
  274. /package/bin/templates/vite/{withDataViz/router → router}/src/styles/fonts.css +0 -0
  275. /package/bin/templates/vite/{withDataViz/router → router}/src/vite-env.d.ts +0 -0
  276. /package/bin/templates/vite/{withDataViz/query+router → router}/tailwind.config.js +0 -0
  277. /package/bin/templates/vite/{withDataViz/router → router}/tsconfig.json +0 -0
  278. /package/bin/templates/vite/{withDataViz/router → router}/tsconfig.node.json +0 -0
  279. /package/bin/templates/vite/{withoutDataViz/basic → router}/vite.config.ts +0 -0
@@ -1,45 +0,0 @@
1
- 'use client';
2
-
3
- import Image from 'next/image';
4
- import { P } from '@undp/design-system-react/Typography';
5
- import { Button } from '@undp/design-system-react/Button';
6
-
7
- import { signIn } from '@/lib/auth-client';
8
-
9
- export default function LoginPage() {
10
- const handleSignIn = async () => {
11
- await signIn.social({
12
- provider: 'microsoft',
13
- callbackURL: '/user',
14
- });
15
- };
16
-
17
- return (
18
- <>
19
- <div className='flex gap-4 items-center justify-center my-8 mx-auto'>
20
- <Image
21
- className='dark:invert'
22
- src='/next.svg'
23
- alt='Next.js logo'
24
- width={100}
25
- height={20}
26
- priority
27
- />
28
- <P marginBottom='none'>&</P>
29
- <Image
30
- className='dark:invert'
31
- src='/undp-logo-blue.svg'
32
- alt='UNDP logo'
33
- width={40}
34
- height={20}
35
- priority
36
- />
37
- </div>
38
- <div className='flex justify-center'>
39
- <Button onClick={handleSignIn} variant='tertiary'>
40
- Sign in with Microsoft
41
- </Button>
42
- </div>
43
- </>
44
- );
45
- }
@@ -1,33 +0,0 @@
1
- 'use client';
2
-
3
- import { H6, P } from '@undp/design-system-react/Typography';
4
- import Image from 'next/image';
5
-
6
- export default function Home() {
7
- return (
8
- <>
9
- <div className='flex gap-4 items-center justify-center my-8 mx-auto'>
10
- <Image
11
- className='dark:invert'
12
- src='/next.svg'
13
- alt='Next.js logo'
14
- width={100}
15
- height={20}
16
- priority
17
- />
18
- <P marginBottom='none'>&</P>
19
- <Image
20
- className='dark:invert'
21
- src='/undp-logo-blue.svg'
22
- alt='UNDP logo'
23
- width={40}
24
- height={20}
25
- priority
26
- />
27
- </div>
28
- <H6 marginBottom='xl' className='text-center'>
29
- To get started, edit the page.tsx file.
30
- </H6>
31
- </>
32
- );
33
- }
@@ -1,86 +0,0 @@
1
- 'use client';
2
-
3
- import Image from 'next/image';
4
- import { Spinner } from '@undp/design-system-react/Spinner';
5
- import { H6, P } from '@undp/design-system-react/Typography';
6
- import { Button } from '@undp/design-system-react/Button';
7
-
8
- import { useSession, signIn } from '@/lib/auth-client';
9
-
10
- export default function UserPage() {
11
- const { data: session, isPending } = useSession();
12
-
13
- if (isPending) {
14
- return (
15
- <div className='my-8 mx-aut'>
16
- <Spinner />
17
- </div>
18
- );
19
- }
20
- const handleSignIn = async () => {
21
- await signIn.social({
22
- provider: 'microsoft',
23
- callbackURL: '/user',
24
- });
25
- };
26
-
27
- if (!session)
28
- return (
29
- <>
30
- <div className='flex gap-4 items-center justify-center my-8 mx-auto'>
31
- <Image
32
- className='dark:invert'
33
- src='/next.svg'
34
- alt='Next.js logo'
35
- width={100}
36
- height={20}
37
- priority
38
- />
39
- <P marginBottom='none'>&</P>
40
- <Image
41
- className='dark:invert'
42
- src='/undp-logo-blue.svg'
43
- alt='UNDP logo'
44
- width={40}
45
- height={20}
46
- priority
47
- />
48
- </div>
49
- <H6 marginBottom='xl' className='text-center'>
50
- Please sign in to view this page
51
- </H6>
52
- <div className='flex justify-center'>
53
- <Button variant='tertiary' onClick={handleSignIn}>
54
- Sign In
55
- </Button>
56
- </div>
57
- </>
58
- );
59
-
60
- return (
61
- <>
62
- <div className='flex gap-4 items-center justify-center my-8 mx-auto'>
63
- <Image
64
- className='dark:invert'
65
- src='/next.svg'
66
- alt='Next.js logo'
67
- width={100}
68
- height={20}
69
- priority
70
- />
71
- <P marginBottom='none'>&</P>
72
- <Image
73
- className='dark:invert'
74
- src='/undp-logo-blue.svg'
75
- alt='UNDP logo'
76
- width={40}
77
- height={20}
78
- priority
79
- />
80
- </div>
81
- <H6 marginBottom='xl' className='text-center'>
82
- Welcome, {session.user.name || session.user.email}!
83
- </H6>
84
- </>
85
- );
86
- }
@@ -1,16 +0,0 @@
1
- 'use client';
2
-
3
- import {
4
- Footer,
5
- FooterLogoUnit,
6
- FooterCopyrightUnit,
7
- } from '@undp/design-system-react/Footer';
8
-
9
- export default function FooterEl() {
10
- return (
11
- <Footer>
12
- <FooterLogoUnit>subscribe to email</FooterLogoUnit>
13
- <FooterCopyrightUnit>Footnote can be added here</FooterCopyrightUnit>
14
- </Footer>
15
- );
16
- }
@@ -1,56 +0,0 @@
1
- 'use client';
2
-
3
- import {
4
- Header,
5
- HeaderActions,
6
- HeaderLogoUnit,
7
- HeaderMainNavUnit,
8
- HeaderMenuUnit,
9
- } from '@undp/design-system-react/Header';
10
- import Link from 'next/link';
11
- import { Spinner } from '@undp/design-system-react';
12
- import { Button } from '@undp/design-system-react/Button';
13
-
14
- import { signIn, useSession, signOut } from '@/lib/auth-client';
15
-
16
- export default function HeaderEl() {
17
- const { data: session, isPending } = useSession();
18
- const handleSignIn = async () => {
19
- await signIn.social({
20
- provider: 'microsoft',
21
- callbackURL: window.location.href,
22
- });
23
- };
24
- const handleSignOut = async () => {
25
- await signOut();
26
- };
27
- return (
28
- <Header>
29
- <HeaderLogoUnit
30
- hyperlink='./'
31
- siteName='Site name'
32
- siteSubName='Sub-site name'
33
- />
34
- <HeaderMainNavUnit>
35
- <HeaderMenuUnit>
36
- <Link href='/'>Home</Link>
37
- <Link href='/about'>About</Link>
38
- <Link href='/user'>User</Link>
39
- </HeaderMenuUnit>
40
- <HeaderActions>
41
- {isPending ? (
42
- <Spinner />
43
- ) : session ? (
44
- <Button variant='tertiary' onClick={handleSignOut}>
45
- Sign Out
46
- </Button>
47
- ) : (
48
- <Button variant='tertiary' onClick={handleSignIn}>
49
- Sign In
50
- </Button>
51
- )}
52
- </HeaderActions>
53
- </HeaderMainNavUnit>
54
- </Header>
55
- );
56
- }
@@ -1,103 +0,0 @@
1
- import nextVitals from 'eslint-config-next/core-web-vitals';
2
- import nextTs from 'eslint-config-next/typescript';
3
- import js from '@eslint/js';
4
- import tseslint from 'typescript-eslint';
5
- import pluginReact from 'eslint-plugin-react';
6
- import reactHooks from 'eslint-plugin-react-hooks';
7
- import importPlugin from 'eslint-plugin-import';
8
- import { defineConfig } from 'eslint/config';
9
- import prettierConfig from 'eslint-config-prettier';
10
- import prettierPlugin from 'eslint-plugin-prettier';
11
-
12
- export default defineConfig([
13
- {
14
- ignores: [
15
- 'node_modules/**',
16
- 'build/**',
17
- 'public/**',
18
- 'dist/**',
19
- 'storybook-static/**',
20
- 'dist-ssr/**',
21
- 'coverage/**',
22
- '**/*.test.js',
23
- '**/__snapshots__/**',
24
- '.next/**',
25
- 'out/**',
26
- 'next-env.d.ts',
27
- ],
28
- },
29
- ...nextVitals,
30
- ...nextTs,
31
- js.configs.recommended,
32
- reactHooks.configs.flat.recommended,
33
- ...tseslint.configs.recommended,
34
- {
35
- files: ['**/*.{js,mjs,cjs,ts,jsx,tsx,ts}'],
36
- plugins: {
37
- react: pluginReact,
38
- 'react-hooks': reactHooks,
39
- import: importPlugin,
40
- prettier: prettierPlugin,
41
- },
42
- settings: {
43
- react: {
44
- version: 'detect',
45
- },
46
- },
47
- rules: {
48
- // React rules
49
- 'react/self-closing-comp': ['error', { component: true, html: true }],
50
- 'react/react-in-jsx-scope': 'off',
51
- 'react/jsx-uses-react': 'off',
52
- 'react/jsx-uses-vars': 'warn',
53
- 'react/jsx-no-undef': 'error',
54
- 'react/jsx-curly-brace-presence': 'error',
55
- 'react/prop-types': 'off',
56
- 'react/require-default-props': 0,
57
- 'react/jsx-filename-extension': 0,
58
- 'react/no-array-index-key': 0,
59
- 'react/jsx-props-no-spreading': 0,
60
-
61
- // TypeScript rules
62
- 'no-unused-vars': 'off',
63
- '@typescript-eslint/no-unused-vars': [
64
- 'error',
65
- { argsIgnorePattern: '^_' },
66
- ],
67
- '@typescript-eslint/no-explicit-any': 'warn',
68
-
69
- // Import rules
70
- 'import/order': [
71
- 'warn',
72
- {
73
- groups: [
74
- 'builtin',
75
- 'external',
76
- 'internal',
77
- 'parent',
78
- 'sibling',
79
- 'index',
80
- ],
81
- 'newlines-between': 'always',
82
- },
83
- ],
84
- 'import/no-unresolved': 0,
85
- 'import/no-extraneous-dependencies': ['warn', { devDependencies: true }],
86
- 'import/extensions': 0,
87
- 'import/prefer-default-export': 0,
88
- 'import/no-anonymous-default-export': 0,
89
-
90
- // A11y rules
91
- 'jsx-a11y/alt-text': 'warn',
92
- 'jsx-a11y/anchor-is-valid': 'warn',
93
-
94
- // General rules
95
- 'prefer-const': 'error',
96
- 'no-console': ['warn', { allow: ['warn', 'error'] }],
97
- 'no-debugger': 'warn',
98
- 'no-nested-ternary': 0,
99
- 'prettier/prettier': 'error',
100
- },
101
- },
102
- prettierConfig,
103
- ]);
@@ -1,7 +0,0 @@
1
- import { createAuthClient } from 'better-auth/react';
2
-
3
- export const authClient = createAuthClient({
4
- baseURL: process.env.NEXT_PUBLIC_BETTER_AUTH_URL || 'http://localhost:3000',
5
- });
6
-
7
- export const { signIn, signOut, useSession } = authClient;
@@ -1,30 +0,0 @@
1
- import { betterAuth } from 'better-auth';
2
- import { nextCookies } from 'better-auth/next-js';
3
-
4
- export const auth = betterAuth({
5
- plugins: [nextCookies()],
6
- secret: process.env.BETTER_AUTH_SECRET,
7
- baseURL: process.env.BETTER_AUTH_URL,
8
- session: {
9
- strategy: 'jwt',
10
- expiresIn: 60 * 60 * 24 * 7,
11
- cookieCache: {
12
- enabled: true,
13
- maxAge: 60 * 60 * 24 * 7,
14
- },
15
- },
16
- emailAndPassword: {
17
- enabled: false,
18
- },
19
- socialProviders: {
20
- github: {
21
- clientId: process.env.GITHUB_CLIENT_ID as string,
22
- clientSecret: process.env.GITHUB_CLIENT_SECRET as string,
23
- },
24
- microsoft: {
25
- clientId: process.env.AZURE_CLIENT_ID as string,
26
- clientSecret: process.env.AZURE_CLIENT_SECRET as string,
27
- tenantId: process.env.AZURE_TENANT_ID as string,
28
- },
29
- },
30
- });
@@ -1,10 +0,0 @@
1
- import type { NextConfig } from 'next';
2
-
3
- const nextConfig: NextConfig = {
4
- /* config options here */
5
- env: {
6
- NEXT_PUBLIC_BETTER_AUTH_URL: process.env.BETTER_AUTH_URL,
7
- },
8
- };
9
-
10
- export default nextConfig;
@@ -1,7 +0,0 @@
1
- const config = {
2
- plugins: {
3
- '@tailwindcss/postcss': {},
4
- },
5
- };
6
-
7
- export default config;
@@ -1 +0,0 @@
1
- <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 394 80"><path fill="#000" d="M262 0h68.5v12.7h-27.2v66.6h-13.6V12.7H262V0ZM149 0v12.7H94v20.4h44.3v12.6H94v21h55v12.6H80.5V0h68.7zm34.3 0h-17.8l63.8 79.4h17.9l-32-39.7 32-39.6h-17.9l-23 28.6-23-28.6zm18.3 56.7-9-11-27.1 33.7h17.8l18.3-22.7z"/><path fill="#000" d="M81 79.3 17 0H0v79.3h13.6V17l50.2 62.3H81Zm252.6-.4c-1 0-1.8-.4-2.5-1s-1.1-1.6-1.1-2.6.3-1.8 1-2.5 1.6-1 2.6-1 1.8.3 2.5 1a3.4 3.4 0 0 1 .6 4.3 3.7 3.7 0 0 1-3 1.8zm23.2-33.5h6v23.3c0 2.1-.4 4-1.3 5.5a9.1 9.1 0 0 1-3.8 3.5c-1.6.8-3.5 1.3-5.7 1.3-2 0-3.7-.4-5.3-1s-2.8-1.8-3.7-3.2c-.9-1.3-1.4-3-1.4-5h6c.1.8.3 1.6.7 2.2s1 1.2 1.6 1.5c.7.4 1.5.5 2.4.5 1 0 1.8-.2 2.4-.6a4 4 0 0 0 1.6-1.8c.3-.8.5-1.8.5-3V45.5zm30.9 9.1a4.4 4.4 0 0 0-2-3.3 7.5 7.5 0 0 0-4.3-1.1c-1.3 0-2.4.2-3.3.5-.9.4-1.6 1-2 1.6a3.5 3.5 0 0 0-.3 4c.3.5.7.9 1.3 1.2l1.8 1 2 .5 3.2.8c1.3.3 2.5.7 3.7 1.2a13 13 0 0 1 3.2 1.8 8.1 8.1 0 0 1 3 6.5c0 2-.5 3.7-1.5 5.1a10 10 0 0 1-4.4 3.5c-1.8.8-4.1 1.2-6.8 1.2-2.6 0-4.9-.4-6.8-1.2-2-.8-3.4-2-4.5-3.5a10 10 0 0 1-1.7-5.6h6a5 5 0 0 0 3.5 4.6c1 .4 2.2.6 3.4.6 1.3 0 2.5-.2 3.5-.6 1-.4 1.8-1 2.4-1.7a4 4 0 0 0 .8-2.4c0-.9-.2-1.6-.7-2.2a11 11 0 0 0-2.1-1.4l-3.2-1-3.8-1c-2.8-.7-5-1.7-6.6-3.2a7.2 7.2 0 0 1-2.4-5.7 8 8 0 0 1 1.7-5 10 10 0 0 1 4.3-3.5c2-.8 4-1.2 6.4-1.2 2.3 0 4.4.4 6.2 1.2 1.8.8 3.2 2 4.3 3.4 1 1.4 1.5 3 1.5 5h-5.8z"/></svg>
@@ -1,34 +0,0 @@
1
- {
2
- "compilerOptions": {
3
- "target": "ES2017",
4
- "lib": ["dom", "dom.iterable", "esnext"],
5
- "allowJs": true,
6
- "skipLibCheck": true,
7
- "strict": true,
8
- "noEmit": true,
9
- "esModuleInterop": true,
10
- "module": "esnext",
11
- "moduleResolution": "bundler",
12
- "resolveJsonModule": true,
13
- "isolatedModules": true,
14
- "jsx": "react-jsx",
15
- "incremental": true,
16
- "plugins": [
17
- {
18
- "name": "next"
19
- }
20
- ],
21
- "paths": {
22
- "@/*": ["./*"]
23
- }
24
- },
25
- "include": [
26
- "next-env.d.ts",
27
- "**/*.ts",
28
- "**/*.tsx",
29
- ".next/types/**/*.ts",
30
- ".next/dev/types/**/*.ts",
31
- "**/*.mts"
32
- ],
33
- "exclude": ["node_modules"]
34
- }
@@ -1,33 +0,0 @@
1
- 'use client';
2
-
3
- import { H6, P } from '@undp/design-system-react/Typography';
4
- import Image from 'next/image';
5
-
6
- export default function Home() {
7
- return (
8
- <>
9
- <div className='flex gap-4 items-center justify-center my-8 mx-auto'>
10
- <Image
11
- className='dark:invert'
12
- src='/next.svg'
13
- alt='Next.js logo'
14
- width={100}
15
- height={20}
16
- priority
17
- />
18
- <P marginBottom='none'>&</P>
19
- <Image
20
- className='dark:invert'
21
- src='/undp-logo-blue.svg'
22
- alt='UNDP logo'
23
- width={40}
24
- height={20}
25
- priority
26
- />
27
- </div>
28
- <H6 marginBottom='xl' className='text-center'>
29
- This is the about page.
30
- </H6>
31
- </>
32
- );
33
- }
@@ -1,3 +0,0 @@
1
- @import "tailwindcss";
2
-
3
- @config "../tailwind.config.js";
@@ -1,31 +0,0 @@
1
- import type { Metadata } from 'next';
2
-
3
- import HeaderEl from '@/components/Header';
4
- import FooterEl from '@/components/Footer';
5
-
6
- import './globals.css';
7
- import '@undp/design-system-react/style.css';
8
- import '@undp/data-viz/style.css';
9
-
10
- export const metadata: Metadata = {
11
- title: 'My Next + UNDP app',
12
- description: 'Generated by create undp app',
13
- };
14
-
15
- export default function RootLayout({
16
- children,
17
- }: Readonly<{
18
- children: React.ReactNode;
19
- }>) {
20
- return (
21
- <html lang='en'>
22
- <body className='flex flex-col gap-0 min-h-screen'>
23
- <HeaderEl />
24
- <main className='grow-1 flex flex-col justify-center'>
25
- <div className='flex flex-col justify-center'>{children}</div>
26
- </main>
27
- <FooterEl />
28
- </body>
29
- </html>
30
- );
31
- }
@@ -1,33 +0,0 @@
1
- 'use client';
2
-
3
- import { H6, P } from '@undp/design-system-react/Typography';
4
- import Image from 'next/image';
5
-
6
- export default function Home() {
7
- return (
8
- <>
9
- <div className='flex gap-4 items-center justify-center my-8 mx-auto'>
10
- <Image
11
- className='dark:invert'
12
- src='/next.svg'
13
- alt='Next.js logo'
14
- width={100}
15
- height={20}
16
- priority
17
- />
18
- <P marginBottom='none'>&</P>
19
- <Image
20
- className='dark:invert'
21
- src='/undp-logo-blue.svg'
22
- alt='UNDP logo'
23
- width={40}
24
- height={20}
25
- priority
26
- />
27
- </div>
28
- <H6 marginBottom='xl' className='text-center'>
29
- To get started, edit the page.tsx file.
30
- </H6>
31
- </>
32
- );
33
- }
@@ -1,16 +0,0 @@
1
- 'use client';
2
-
3
- import {
4
- Footer,
5
- FooterLogoUnit,
6
- FooterCopyrightUnit,
7
- } from '@undp/design-system-react/Footer';
8
-
9
- export default function FooterEl() {
10
- return (
11
- <Footer>
12
- <FooterLogoUnit>subscribe to email</FooterLogoUnit>
13
- <FooterCopyrightUnit>Footnote can be added here</FooterCopyrightUnit>
14
- </Footer>
15
- );
16
- }
@@ -1,27 +0,0 @@
1
- 'use client';
2
-
3
- import {
4
- Header,
5
- HeaderLogoUnit,
6
- HeaderMainNavUnit,
7
- HeaderMenuUnit,
8
- } from '@undp/design-system-react/Header';
9
- import Link from 'next/link';
10
-
11
- export default function HeaderEl() {
12
- return (
13
- <Header>
14
- <HeaderLogoUnit
15
- hyperlink='./'
16
- siteName='Site name'
17
- siteSubName='Sub-site name'
18
- />
19
- <HeaderMainNavUnit>
20
- <HeaderMenuUnit>
21
- <Link href='/'>Home</Link>
22
- <Link href='/about'>About</Link>
23
- </HeaderMenuUnit>
24
- </HeaderMainNavUnit>
25
- </Header>
26
- );
27
- }