vibedoc 1.2.1 → 1.4.0

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 (575) hide show
  1. package/.next/BUILD_ID +1 -1
  2. package/.next/app-path-routes-manifest.json +2 -0
  3. package/.next/build-manifest.json +5 -5
  4. package/.next/prerender-manifest.json +3 -3
  5. package/.next/routes-manifest.json +12 -0
  6. package/.next/server/app/(app)/activity/page/build-manifest.json +3 -3
  7. package/.next/server/app/(app)/activity/page.js +7 -6
  8. package/.next/server/app/(app)/activity/page.js.nft.json +1 -1
  9. package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -1
  10. package/.next/server/app/(app)/board/page/build-manifest.json +3 -3
  11. package/.next/server/app/(app)/board/page.js +7 -6
  12. package/.next/server/app/(app)/board/page.js.nft.json +1 -1
  13. package/.next/server/app/(app)/board/page_client-reference-manifest.js +1 -1
  14. package/.next/server/app/(app)/docs/page/build-manifest.json +3 -3
  15. package/.next/server/app/(app)/docs/page.js +7 -6
  16. package/.next/server/app/(app)/docs/page.js.nft.json +1 -1
  17. package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -1
  18. package/.next/server/app/(app)/explorer/page/build-manifest.json +3 -3
  19. package/.next/server/app/(app)/explorer/page.js +7 -6
  20. package/.next/server/app/(app)/explorer/page.js.nft.json +1 -1
  21. package/.next/server/app/(app)/explorer/page_client-reference-manifest.js +1 -1
  22. package/.next/server/app/(app)/memory/page/build-manifest.json +3 -3
  23. package/.next/server/app/(app)/memory/page.js +7 -6
  24. package/.next/server/app/(app)/memory/page.js.nft.json +1 -1
  25. package/.next/server/app/(app)/memory/page_client-reference-manifest.js +1 -1
  26. package/.next/server/app/(app)/settings/page/build-manifest.json +3 -3
  27. package/.next/server/app/(app)/settings/page.js +7 -6
  28. package/.next/server/app/(app)/settings/page.js.nft.json +1 -1
  29. package/.next/server/app/(app)/settings/page_client-reference-manifest.js +1 -1
  30. package/.next/server/app/(app)/setup/page/build-manifest.json +3 -3
  31. package/.next/server/app/(app)/setup/page.js +7 -6
  32. package/.next/server/app/(app)/setup/page.js.nft.json +1 -1
  33. package/.next/server/app/(app)/setup/page_client-reference-manifest.js +1 -1
  34. package/.next/server/app/_global-error/page/build-manifest.json +3 -3
  35. package/.next/server/app/_global-error/page.js +3 -3
  36. package/.next/server/app/_global-error/page.js.nft.json +1 -1
  37. package/.next/server/app/_global-error.html +2 -2
  38. package/.next/server/app/_global-error.rsc +1 -1
  39. package/.next/server/app/_global-error.segments/__PAGE__.segment.rsc +1 -1
  40. package/.next/server/app/_global-error.segments/_full.segment.rsc +1 -1
  41. package/.next/server/app/_global-error.segments/_head.segment.rsc +1 -1
  42. package/.next/server/app/_global-error.segments/_index.segment.rsc +1 -1
  43. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -1
  44. package/.next/server/app/_not-found/page/build-manifest.json +3 -3
  45. package/.next/server/app/_not-found/page.js +6 -5
  46. package/.next/server/app/_not-found/page.js.nft.json +1 -1
  47. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -1
  48. package/.next/server/app/_not-found.html +1 -1
  49. package/.next/server/app/_not-found.rsc +8 -8
  50. package/.next/server/app/_not-found.segments/_full.segment.rsc +8 -8
  51. package/.next/server/app/_not-found.segments/_head.segment.rsc +3 -3
  52. package/.next/server/app/_not-found.segments/_index.segment.rsc +4 -4
  53. package/.next/server/app/_not-found.segments/_not-found/__PAGE__.segment.rsc +2 -2
  54. package/.next/server/app/_not-found.segments/_not-found.segment.rsc +3 -3
  55. package/.next/server/app/_not-found.segments/_tree.segment.rsc +2 -2
  56. package/.next/server/app/activity.html +1 -1
  57. package/.next/server/app/activity.rsc +20 -19
  58. package/.next/server/app/activity.segments/!KGFwcCk/activity/__PAGE__.segment.rsc +4 -4
  59. package/.next/server/app/activity.segments/!KGFwcCk/activity.segment.rsc +3 -3
  60. package/.next/server/app/activity.segments/!KGFwcCk.segment.rsc +7 -6
  61. package/.next/server/app/activity.segments/_full.segment.rsc +20 -19
  62. package/.next/server/app/activity.segments/_head.segment.rsc +3 -3
  63. package/.next/server/app/activity.segments/_index.segment.rsc +4 -4
  64. package/.next/server/app/activity.segments/_tree.segment.rsc +2 -2
  65. package/.next/server/app/api/activity/route.js.nft.json +1 -1
  66. package/.next/server/app/api/backlinks/route.js.nft.json +1 -1
  67. package/.next/server/app/api/context/route.js.nft.json +1 -1
  68. package/.next/server/app/api/decisions/route.js +1 -1
  69. package/.next/server/app/api/decisions/route.js.nft.json +1 -1
  70. package/.next/server/app/api/docs/route.js +1 -1
  71. package/.next/server/app/api/docs/route.js.nft.json +1 -1
  72. package/.next/server/app/api/explorer/route.js +1 -1
  73. package/.next/server/app/api/explorer/route.js.nft.json +1 -1
  74. package/.next/server/app/api/mcp/route.js +1 -1
  75. package/.next/server/app/api/mcp/route.js.nft.json +1 -1
  76. package/.next/server/app/api/memory/route.js +1 -1
  77. package/.next/server/app/api/memory/route.js.nft.json +1 -1
  78. package/.next/server/app/api/projects/route.js.nft.json +1 -1
  79. package/.next/server/app/api/registry/route/app-paths-manifest.json +3 -0
  80. package/.next/server/app/api/registry/route/build-manifest.json +11 -0
  81. package/.next/server/app/api/registry/route/server-reference-manifest.json +4 -0
  82. package/.next/server/app/api/registry/route.js +7 -0
  83. package/.next/server/app/api/registry/route.js.map +5 -0
  84. package/.next/server/app/api/registry/route.js.nft.json +1 -0
  85. package/.next/server/app/api/registry/route_client-reference-manifest.js +2 -0
  86. package/.next/server/app/api/settings/route.js.nft.json +1 -1
  87. package/.next/server/app/api/setup/generate/route.js.nft.json +1 -1
  88. package/.next/server/app/api/setup/write/route.js +1 -1
  89. package/.next/server/app/api/setup/write/route.js.nft.json +1 -1
  90. package/.next/server/app/api/summary/route.js.nft.json +1 -1
  91. package/.next/server/app/api/tasks/create/route/app-paths-manifest.json +3 -0
  92. package/.next/server/app/api/tasks/create/route/build-manifest.json +11 -0
  93. package/.next/server/app/api/tasks/create/route/server-reference-manifest.json +4 -0
  94. package/.next/server/app/api/tasks/create/route.js +7 -0
  95. package/.next/server/app/api/tasks/create/route.js.map +5 -0
  96. package/.next/server/app/api/tasks/create/route.js.nft.json +1 -0
  97. package/.next/server/app/api/tasks/create/route_client-reference-manifest.js +2 -0
  98. package/.next/server/app/api/tasks/route.js +1 -1
  99. package/.next/server/app/api/tasks/route.js.nft.json +1 -1
  100. package/.next/server/app/board.html +1 -1
  101. package/.next/server/app/board.rsc +20 -19
  102. package/.next/server/app/board.segments/!KGFwcCk/board/__PAGE__.segment.rsc +4 -4
  103. package/.next/server/app/board.segments/!KGFwcCk/board.segment.rsc +3 -3
  104. package/.next/server/app/board.segments/!KGFwcCk.segment.rsc +7 -6
  105. package/.next/server/app/board.segments/_full.segment.rsc +20 -19
  106. package/.next/server/app/board.segments/_head.segment.rsc +3 -3
  107. package/.next/server/app/board.segments/_index.segment.rsc +4 -4
  108. package/.next/server/app/board.segments/_tree.segment.rsc +2 -2
  109. package/.next/server/app/docs.html +1 -1
  110. package/.next/server/app/docs.rsc +20 -19
  111. package/.next/server/app/docs.segments/!KGFwcCk/docs/__PAGE__.segment.rsc +4 -4
  112. package/.next/server/app/docs.segments/!KGFwcCk/docs.segment.rsc +3 -3
  113. package/.next/server/app/docs.segments/!KGFwcCk.segment.rsc +7 -6
  114. package/.next/server/app/docs.segments/_full.segment.rsc +20 -19
  115. package/.next/server/app/docs.segments/_head.segment.rsc +3 -3
  116. package/.next/server/app/docs.segments/_index.segment.rsc +4 -4
  117. package/.next/server/app/docs.segments/_tree.segment.rsc +2 -2
  118. package/.next/server/app/explorer.html +1 -1
  119. package/.next/server/app/explorer.rsc +20 -19
  120. package/.next/server/app/explorer.segments/!KGFwcCk/explorer/__PAGE__.segment.rsc +4 -4
  121. package/.next/server/app/explorer.segments/!KGFwcCk/explorer.segment.rsc +3 -3
  122. package/.next/server/app/explorer.segments/!KGFwcCk.segment.rsc +7 -6
  123. package/.next/server/app/explorer.segments/_full.segment.rsc +20 -19
  124. package/.next/server/app/explorer.segments/_head.segment.rsc +3 -3
  125. package/.next/server/app/explorer.segments/_index.segment.rsc +4 -4
  126. package/.next/server/app/explorer.segments/_tree.segment.rsc +2 -2
  127. package/.next/server/app/index.html +1 -1
  128. package/.next/server/app/index.rsc +8 -8
  129. package/.next/server/app/index.segments/__PAGE__.segment.rsc +2 -2
  130. package/.next/server/app/index.segments/_full.segment.rsc +8 -8
  131. package/.next/server/app/index.segments/_head.segment.rsc +3 -3
  132. package/.next/server/app/index.segments/_index.segment.rsc +4 -4
  133. package/.next/server/app/index.segments/_tree.segment.rsc +2 -2
  134. package/.next/server/app/memory.html +1 -1
  135. package/.next/server/app/memory.rsc +20 -19
  136. package/.next/server/app/memory.segments/!KGFwcCk/memory/__PAGE__.segment.rsc +4 -4
  137. package/.next/server/app/memory.segments/!KGFwcCk/memory.segment.rsc +3 -3
  138. package/.next/server/app/memory.segments/!KGFwcCk.segment.rsc +7 -6
  139. package/.next/server/app/memory.segments/_full.segment.rsc +20 -19
  140. package/.next/server/app/memory.segments/_head.segment.rsc +3 -3
  141. package/.next/server/app/memory.segments/_index.segment.rsc +4 -4
  142. package/.next/server/app/memory.segments/_tree.segment.rsc +2 -2
  143. package/.next/server/app/page/build-manifest.json +3 -3
  144. package/.next/server/app/page.js +7 -7
  145. package/.next/server/app/page.js.nft.json +1 -1
  146. package/.next/server/app/page_client-reference-manifest.js +1 -1
  147. package/.next/server/app/settings.html +1 -1
  148. package/.next/server/app/settings.rsc +20 -19
  149. package/.next/server/app/settings.segments/!KGFwcCk/settings/__PAGE__.segment.rsc +4 -4
  150. package/.next/server/app/settings.segments/!KGFwcCk/settings.segment.rsc +3 -3
  151. package/.next/server/app/settings.segments/!KGFwcCk.segment.rsc +7 -6
  152. package/.next/server/app/settings.segments/_full.segment.rsc +20 -19
  153. package/.next/server/app/settings.segments/_head.segment.rsc +3 -3
  154. package/.next/server/app/settings.segments/_index.segment.rsc +4 -4
  155. package/.next/server/app/settings.segments/_tree.segment.rsc +2 -2
  156. package/.next/server/app/setup.html +1 -1
  157. package/.next/server/app/setup.rsc +20 -19
  158. package/.next/server/app/setup.segments/!KGFwcCk/setup/__PAGE__.segment.rsc +4 -4
  159. package/.next/server/app/setup.segments/!KGFwcCk/setup.segment.rsc +3 -3
  160. package/.next/server/app/setup.segments/!KGFwcCk.segment.rsc +7 -6
  161. package/.next/server/app/setup.segments/_full.segment.rsc +20 -19
  162. package/.next/server/app/setup.segments/_head.segment.rsc +3 -3
  163. package/.next/server/app/setup.segments/_index.segment.rsc +4 -4
  164. package/.next/server/app/setup.segments/_tree.segment.rsc +2 -2
  165. package/.next/server/app-paths-manifest.json +2 -0
  166. package/.next/server/chunks/{[root-of-the-server]__54666fd5._.js → [root-of-the-server]__03edd537._.js} +2 -2
  167. package/.next/server/chunks/{[root-of-the-server]__e27393ea._.js → [root-of-the-server]__1329130b._.js} +2 -2
  168. package/.next/server/chunks/[root-of-the-server]__222d0fad._.js +3 -0
  169. package/.next/server/chunks/[root-of-the-server]__50974822._.js +3 -0
  170. package/.next/server/chunks/[root-of-the-server]__50974822._.js.map +1 -0
  171. package/.next/server/chunks/[root-of-the-server]__67fc5766._.js +3 -0
  172. package/.next/server/chunks/[root-of-the-server]__67fc5766._.js.map +1 -0
  173. package/.next/server/chunks/[root-of-the-server]__73d016a0._.js +27 -10
  174. package/.next/server/chunks/[root-of-the-server]__73d016a0._.js.map +1 -1
  175. package/.next/server/chunks/{[root-of-the-server]__a0a8fb65._.js → [root-of-the-server]__7da508f8._.js} +2 -2
  176. package/.next/server/chunks/{[root-of-the-server]__2d66d57b._.js → [root-of-the-server]__9057030f._.js} +2 -2
  177. package/.next/server/chunks/{[root-of-the-server]__aa7a40ec._.js → [root-of-the-server]__943256c8._.js} +2 -2
  178. package/.next/server/chunks/{[root-of-the-server]__bacbf09e._.js → [root-of-the-server]__c4a478c1._.js} +2 -2
  179. package/.next/server/chunks/_75927d0c._.js +11 -10
  180. package/.next/server/chunks/_75927d0c._.js.map +1 -1
  181. package/.next/server/chunks/_next-internal_server_app_api_registry_route_actions_9502c56c.js +3 -0
  182. package/.next/server/chunks/_next-internal_server_app_api_tasks_create_route_actions_8f1c32d2.js +3 -0
  183. package/.next/server/chunks/ssr/{[root-of-the-server]__85b679c6._.js → [root-of-the-server]__1940775f._.js} +2 -2
  184. package/.next/server/chunks/ssr/[root-of-the-server]__194bb43b._.js +3 -0
  185. package/.next/server/chunks/ssr/[root-of-the-server]__194bb43b._.js.map +1 -0
  186. package/.next/server/chunks/ssr/[root-of-the-server]__22325e4c._.js +3 -0
  187. package/.next/server/chunks/ssr/{[root-of-the-server]__599128b8._.js.map → [root-of-the-server]__22325e4c._.js.map} +1 -1
  188. package/.next/server/chunks/ssr/{[root-of-the-server]__346c6c2b._.js → [root-of-the-server]__2ea2afb2._.js} +2 -2
  189. package/.next/server/chunks/ssr/{[root-of-the-server]__346c6c2b._.js.map → [root-of-the-server]__2ea2afb2._.js.map} +1 -1
  190. package/.next/server/chunks/ssr/{[root-of-the-server]__0310d64d._.js → [root-of-the-server]__718d62a3._.js} +2 -2
  191. package/.next/server/chunks/ssr/{[root-of-the-server]__8bc686d2._.js → [root-of-the-server]__83981bf9._.js} +2 -2
  192. package/.next/server/chunks/ssr/[root-of-the-server]__8f3ac062._.js +3 -0
  193. package/.next/server/chunks/ssr/{[root-of-the-server]__4cd0cfe5._.js.map → [root-of-the-server]__8f3ac062._.js.map} +1 -1
  194. package/.next/server/chunks/ssr/[root-of-the-server]__a34f1253._.js +3 -0
  195. package/.next/server/chunks/ssr/[root-of-the-server]__a34f1253._.js.map +1 -0
  196. package/.next/server/chunks/ssr/{[root-of-the-server]__e44bed76._.js → [root-of-the-server]__a3f52a6e._.js} +2 -2
  197. package/.next/server/chunks/ssr/[root-of-the-server]__add7ce25._.js +3 -0
  198. package/.next/server/chunks/ssr/{[root-of-the-server]__7ccd69b2._.js.map → [root-of-the-server]__add7ce25._.js.map} +1 -1
  199. package/.next/server/chunks/ssr/{[root-of-the-server]__cf263b75._.js → [root-of-the-server]__c7aaf19e._.js} +2 -2
  200. package/.next/server/chunks/ssr/[root-of-the-server]__c9c67a6a._.js +3 -0
  201. package/.next/server/chunks/ssr/{[root-of-the-server]__38711845._.js.map → [root-of-the-server]__c9c67a6a._.js.map} +1 -1
  202. package/.next/server/chunks/ssr/[root-of-the-server]__ccbe4f15._.js +3 -0
  203. package/.next/server/chunks/ssr/{[root-of-the-server]__bdae2a0a._.js.map → [root-of-the-server]__ccbe4f15._.js.map} +1 -1
  204. package/.next/server/chunks/ssr/[root-of-the-server]__d9936fe0._.js +3 -0
  205. package/.next/server/chunks/ssr/{[root-of-the-server]__d23d6dd8._.js.map → [root-of-the-server]__d9936fe0._.js.map} +1 -1
  206. package/.next/server/chunks/ssr/[root-of-the-server]__ddf636f0._.js +3 -0
  207. package/.next/server/chunks/ssr/{[root-of-the-server]__c754fc94._.js.map → [root-of-the-server]__ddf636f0._.js.map} +1 -1
  208. package/.next/server/chunks/ssr/[root-of-the-server]__dfd81d0e._.js +3 -0
  209. package/.next/server/chunks/ssr/{[root-of-the-server]__ad4ab234._.js.map → [root-of-the-server]__dfd81d0e._.js.map} +1 -1
  210. package/.next/server/chunks/ssr/[root-of-the-server]__e1cd2abc._.js +3 -0
  211. package/.next/server/chunks/ssr/{[root-of-the-server]__7de63c62._.js.map → [root-of-the-server]__e1cd2abc._.js.map} +1 -1
  212. package/.next/server/chunks/ssr/[root-of-the-server]__f322b1c8._.js +3 -0
  213. package/.next/server/chunks/ssr/{_04bd0614._.js → _02804d59._.js} +3 -3
  214. package/.next/server/chunks/ssr/_02804d59._.js.map +1 -0
  215. package/.next/server/chunks/ssr/_0ee1f47f._.js +1 -1
  216. package/.next/server/chunks/ssr/_0ee1f47f._.js.map +1 -1
  217. package/.next/server/chunks/ssr/{_07ff42fd._.js → _10c46cea._.js} +3 -3
  218. package/.next/server/chunks/ssr/_10c46cea._.js.map +1 -0
  219. package/.next/server/chunks/ssr/_15efe9a8._.js +3 -0
  220. package/.next/server/chunks/ssr/_15efe9a8._.js.map +1 -0
  221. package/.next/server/chunks/ssr/_46c690bf._.js +3 -0
  222. package/.next/server/chunks/ssr/_46c690bf._.js.map +1 -0
  223. package/.next/server/chunks/ssr/_50579c31._.js +3 -0
  224. package/.next/server/chunks/ssr/_50579c31._.js.map +1 -0
  225. package/.next/server/chunks/ssr/_5f998080._.js +4 -0
  226. package/.next/server/chunks/ssr/_5f998080._.js.map +1 -0
  227. package/.next/server/chunks/ssr/_692c5bbf._.js +1 -1
  228. package/.next/server/chunks/ssr/_692c5bbf._.js.map +1 -1
  229. package/.next/server/chunks/ssr/_acb63a7d._.js +1 -1
  230. package/.next/server/chunks/ssr/_acb63a7d._.js.map +1 -1
  231. package/.next/server/chunks/ssr/{_102fd465._.js → _af7c883c._.js} +2 -2
  232. package/.next/server/chunks/ssr/{_85e5ab03._.js → _afc4ce33._.js} +3 -3
  233. package/.next/server/chunks/ssr/_afc4ce33._.js.map +1 -0
  234. package/.next/server/chunks/ssr/{a5dda_next_dist_c6de1535._.js → _b1542c0f._.js} +3 -3
  235. package/.next/server/chunks/ssr/_b1542c0f._.js.map +1 -0
  236. package/.next/server/chunks/ssr/_b226a79a._.js +4 -0
  237. package/.next/server/chunks/ssr/_b226a79a._.js.map +1 -0
  238. package/.next/server/chunks/ssr/_c2cff164._.js +3 -0
  239. package/.next/server/chunks/ssr/_c2cff164._.js.map +1 -0
  240. package/.next/server/chunks/ssr/_d411515a._.js +1 -1
  241. package/.next/server/chunks/ssr/_d411515a._.js.map +1 -1
  242. package/.next/server/chunks/ssr/{_83c6a2ff._.js → _d7643298._.js} +3 -3
  243. package/.next/server/chunks/ssr/_d7643298._.js.map +1 -0
  244. package/.next/server/chunks/ssr/{_c4b742c5._.js → _f0a06393._.js} +3 -3
  245. package/.next/server/chunks/ssr/_f0a06393._.js.map +1 -0
  246. package/.next/server/chunks/ssr/a41dc_lucide-react_dist_esm_icons_2139b88a._.js +3 -0
  247. package/.next/server/chunks/ssr/a41dc_lucide-react_dist_esm_icons_2139b88a._.js.map +1 -0
  248. package/.next/server/chunks/ssr/a41dc_lucide-react_dist_esm_icons_fd324e06._.js +3 -0
  249. package/.next/server/chunks/ssr/a41dc_lucide-react_dist_esm_icons_fd324e06._.js.map +1 -0
  250. package/.next/server/chunks/ssr/a5dda_next_dist_63172c0f._.js +4 -0
  251. package/.next/server/chunks/ssr/{a5dda_next_dist_c6de1535._.js.map → a5dda_next_dist_63172c0f._.js.map} +1 -1
  252. package/.next/server/chunks/ssr/{a5dda_next_dist_esm_build_templates_app-page_d9140d2d.js → a5dda_next_dist_esm_build_templates_app-page_20fe1d07.js} +3 -3
  253. package/.next/server/chunks/ssr/a5dda_next_dist_esm_build_templates_app-page_20fe1d07.js.map +1 -0
  254. package/.next/server/chunks/ssr/{ec1cc_katex_dist_katex_mjs_e93914b8._.js → ec1cc_katex_dist_katex_mjs_1924e0db._.js} +1 -1
  255. package/.next/server/chunks/ssr/{ec1cc_katex_dist_katex_mjs_9f7bcf4a._.js → ec1cc_katex_dist_katex_mjs_1e92da96._.js} +1 -1
  256. package/.next/server/chunks/ssr/{ec1cc_katex_dist_katex_mjs_a9aca746._.js → ec1cc_katex_dist_katex_mjs_872ed7f8._.js} +1 -1
  257. package/.next/server/chunks/ssr/ec1cc_katex_dist_katex_mjs_872ed7f8._.js.map +1 -0
  258. package/.next/server/chunks/ssr/{ec1cc_katex_dist_katex_mjs_e7b66387._.js → ec1cc_katex_dist_katex_mjs_c6b5470c._.js} +1 -1
  259. package/.next/server/chunks/ssr/ec1cc_katex_dist_katex_mjs_c6b5470c._.js.map +1 -0
  260. package/.next/server/chunks/ssr/{node_modules__pnpm_9cdea683._.js → node_modules__pnpm_00fba959._.js} +1 -1
  261. package/.next/server/chunks/ssr/node_modules__pnpm_01f5d9da._.js +3 -0
  262. package/.next/server/chunks/ssr/{node_modules__pnpm_44b70609._.js.map → node_modules__pnpm_01f5d9da._.js.map} +1 -1
  263. package/.next/server/chunks/ssr/{node_modules__pnpm_8b3ed63a._.js → node_modules__pnpm_0ae7984c._.js} +2 -2
  264. package/.next/server/chunks/ssr/{node_modules__pnpm_60fef38e._.js → node_modules__pnpm_0b2a59a5._.js} +2 -2
  265. package/.next/server/chunks/ssr/{node_modules__pnpm_70a08cdf._.js → node_modules__pnpm_0b403dbf._.js} +1 -1
  266. package/.next/server/chunks/ssr/{node_modules__pnpm_8c13bdb7._.js → node_modules__pnpm_0dc85bd5._.js} +1 -1
  267. package/.next/server/chunks/ssr/{node_modules__pnpm_ba838a36._.js → node_modules__pnpm_0f315216._.js} +1 -1
  268. package/.next/server/chunks/ssr/{node_modules__pnpm_39f460e8._.js → node_modules__pnpm_0fcc2ade._.js} +1 -1
  269. package/.next/server/chunks/ssr/{node_modules__pnpm_df7dcb26._.js → node_modules__pnpm_11602273._.js} +1 -1
  270. package/.next/server/chunks/ssr/{node_modules__pnpm_5c59b1ad._.js → node_modules__pnpm_166528e5._.js} +1 -1
  271. package/.next/server/chunks/ssr/{node_modules__pnpm_b6b9de46._.js → node_modules__pnpm_1b6418c7._.js} +1 -1
  272. package/.next/server/chunks/ssr/node_modules__pnpm_20308a0b._.js +7 -0
  273. package/.next/server/chunks/ssr/node_modules__pnpm_20308a0b._.js.map +1 -0
  274. package/.next/server/chunks/ssr/{node_modules__pnpm_0322e068._.js → node_modules__pnpm_203e2ae6._.js} +1 -1
  275. package/.next/server/chunks/ssr/{node_modules__pnpm_d75e5d41._.js → node_modules__pnpm_20667837._.js} +2 -2
  276. package/.next/server/chunks/ssr/{node_modules__pnpm_3f2cce74._.js → node_modules__pnpm_22b45ca3._.js} +1 -1
  277. package/.next/server/chunks/ssr/{node_modules__pnpm_8ba721df._.js → node_modules__pnpm_233a9948._.js} +2 -2
  278. package/.next/server/chunks/ssr/{node_modules__pnpm_2871fff4._.js → node_modules__pnpm_26c302ad._.js} +1 -1
  279. package/.next/server/chunks/ssr/{node_modules__pnpm_08cf1858._.js → node_modules__pnpm_28f5917a._.js} +1 -1
  280. package/.next/server/chunks/ssr/{node_modules__pnpm_9ce450a4._.js → node_modules__pnpm_29ef1122._.js} +1 -1
  281. package/.next/server/chunks/ssr/{node_modules__pnpm_7e98d14b._.js → node_modules__pnpm_2b433d26._.js} +1 -1
  282. package/.next/server/chunks/ssr/{node_modules__pnpm_72235a6a._.js → node_modules__pnpm_32dea2df._.js} +1 -1
  283. package/.next/server/chunks/ssr/{node_modules__pnpm_928932b1._.js → node_modules__pnpm_36314152._.js} +1 -1
  284. package/.next/server/chunks/ssr/{node_modules__pnpm_790c3b2e._.js → node_modules__pnpm_383aee7b._.js} +1 -1
  285. package/.next/server/chunks/ssr/{node_modules__pnpm_8f8943af._.js → node_modules__pnpm_3f2da5a6._.js} +2 -2
  286. package/.next/server/chunks/ssr/{node_modules__pnpm_c402a901._.js → node_modules__pnpm_49f81544._.js} +1 -1
  287. package/.next/server/chunks/ssr/{node_modules__pnpm_b50ae8f6._.js → node_modules__pnpm_4d2bd21b._.js} +1 -1
  288. package/.next/server/chunks/ssr/{node_modules__pnpm_63a4a328._.js → node_modules__pnpm_4d5ddaac._.js} +1 -1
  289. package/.next/server/chunks/ssr/{node_modules__pnpm_42d2c2d2._.js → node_modules__pnpm_4f088d93._.js} +2 -2
  290. package/.next/server/chunks/ssr/{node_modules__pnpm_f77bb209._.js → node_modules__pnpm_5075b2c5._.js} +1 -1
  291. package/.next/server/chunks/ssr/{node_modules__pnpm_6a7ed592._.js → node_modules__pnpm_53135aed._.js} +1 -1
  292. package/.next/server/chunks/ssr/{node_modules__pnpm_1790069e._.js → node_modules__pnpm_55940107._.js} +1 -1
  293. package/.next/server/chunks/ssr/{node_modules__pnpm_423baddc._.js → node_modules__pnpm_5a66db81._.js} +1 -1
  294. package/.next/server/chunks/ssr/{node_modules__pnpm_3d378674._.js → node_modules__pnpm_660f6b48._.js} +2 -2
  295. package/.next/server/chunks/ssr/{node_modules__pnpm_67f40799._.js → node_modules__pnpm_678a023d._.js} +1 -1
  296. package/.next/server/chunks/ssr/{node_modules__pnpm_c39c9496._.js → node_modules__pnpm_69340952._.js} +1 -1
  297. package/.next/server/chunks/ssr/{node_modules__pnpm_1dce0d3b._.js → node_modules__pnpm_6a505c32._.js} +1 -1
  298. package/.next/server/chunks/ssr/node_modules__pnpm_6fee60be._.js +3 -0
  299. package/.next/server/chunks/ssr/node_modules__pnpm_6fee60be._.js.map +1 -0
  300. package/.next/server/chunks/ssr/{node_modules__pnpm_3dd8e608._.js → node_modules__pnpm_73f60ed3._.js} +1 -1
  301. package/.next/server/chunks/ssr/{node_modules__pnpm_87d282d9._.js → node_modules__pnpm_73fa56d9._.js} +2 -2
  302. package/.next/server/chunks/ssr/{node_modules__pnpm_45bf67c8._.js → node_modules__pnpm_7417f8a3._.js} +2 -2
  303. package/.next/server/chunks/ssr/{node_modules__pnpm_05da39c7._.js → node_modules__pnpm_74702239._.js} +2 -2
  304. package/.next/server/chunks/ssr/{node_modules__pnpm_fa1f464c._.js → node_modules__pnpm_76595790._.js} +1 -1
  305. package/.next/server/chunks/ssr/{node_modules__pnpm_8036c25f._.js → node_modules__pnpm_7688cd8b._.js} +1 -1
  306. package/.next/server/chunks/ssr/{node_modules__pnpm_2e011da0._.js → node_modules__pnpm_77bef6b3._.js} +1 -1
  307. package/.next/server/chunks/ssr/{node_modules__pnpm_08922392._.js → node_modules__pnpm_7b9f7ded._.js} +2 -2
  308. package/.next/server/chunks/ssr/{node_modules__pnpm_c7ca55c9._.js → node_modules__pnpm_7bc6fb3f._.js} +1 -1
  309. package/.next/server/chunks/ssr/{node_modules__pnpm_3601c997._.js → node_modules__pnpm_7bebd190._.js} +1 -1
  310. package/.next/server/chunks/ssr/{node_modules__pnpm_b2c6ca72._.js → node_modules__pnpm_7cacc1cc._.js} +1 -1
  311. package/.next/server/chunks/ssr/{node_modules__pnpm_76204895._.js → node_modules__pnpm_7d6096d0._.js} +1 -1
  312. package/.next/server/chunks/ssr/{node_modules__pnpm_75846ac9._.js → node_modules__pnpm_810c12a3._.js} +1 -1
  313. package/.next/server/chunks/ssr/{node_modules__pnpm_7de47ba7._.js → node_modules__pnpm_917236c4._.js} +1 -1
  314. package/.next/server/chunks/ssr/{node_modules__pnpm_135db8bc._.js → node_modules__pnpm_958d62cb._.js} +2 -2
  315. package/.next/server/chunks/ssr/{node_modules__pnpm_5768848c._.js → node_modules__pnpm_97367937._.js} +2 -2
  316. package/.next/server/chunks/ssr/{node_modules__pnpm_d1c050d4._.js → node_modules__pnpm_993eff2d._.js} +1 -1
  317. package/.next/server/chunks/ssr/{node_modules__pnpm_016e62a5._.js → node_modules__pnpm_9bab8aaa._.js} +2 -2
  318. package/.next/server/chunks/ssr/{node_modules__pnpm_b18e7d84._.js → node_modules__pnpm_9d36940a._.js} +1 -1
  319. package/.next/server/chunks/ssr/{node_modules__pnpm_0d80282c._.js → node_modules__pnpm_9ddf8ec8._.js} +2 -2
  320. package/.next/server/chunks/ssr/{node_modules__pnpm_a23a1417._.js → node_modules__pnpm_9de6944e._.js} +1 -1
  321. package/.next/server/chunks/ssr/{node_modules__pnpm_227802dc._.js → node_modules__pnpm_9ed86539._.js} +1 -1
  322. package/.next/server/chunks/ssr/{node_modules__pnpm_c278eaac._.js → node_modules__pnpm_a216f966._.js} +2 -2
  323. package/.next/server/chunks/ssr/{node_modules__pnpm_754137d0._.js → node_modules__pnpm_a23053e0._.js} +1 -1
  324. package/.next/server/chunks/ssr/{node_modules__pnpm_7ca85e0d._.js → node_modules__pnpm_a2c4f3d7._.js} +1 -1
  325. package/.next/server/chunks/ssr/{node_modules__pnpm_0c377643._.js → node_modules__pnpm_a3c866a4._.js} +1 -1
  326. package/.next/server/chunks/ssr/{node_modules__pnpm_3394b2c5._.js → node_modules__pnpm_aa25e76f._.js} +1 -1
  327. package/.next/server/chunks/ssr/{node_modules__pnpm_91a9fe44._.js → node_modules__pnpm_aa53a759._.js} +2 -2
  328. package/.next/server/chunks/ssr/{node_modules__pnpm_1c623592._.js → node_modules__pnpm_ae8e01c6._.js} +1 -1
  329. package/.next/server/chunks/ssr/{node_modules__pnpm_06db4ba2._.js → node_modules__pnpm_aebdd762._.js} +1 -1
  330. package/.next/server/chunks/ssr/{node_modules__pnpm_4d03e476._.js → node_modules__pnpm_af29ab68._.js} +2 -2
  331. package/.next/server/chunks/ssr/{node_modules__pnpm_d6cd0cb1._.js → node_modules__pnpm_b28ba463._.js} +2 -2
  332. package/.next/server/chunks/ssr/{node_modules__pnpm_f505d304._.js → node_modules__pnpm_b4adc2e7._.js} +1 -1
  333. package/.next/server/chunks/ssr/{node_modules__pnpm_75690281._.js → node_modules__pnpm_b4bf1729._.js} +2 -2
  334. package/.next/server/chunks/ssr/{node_modules__pnpm_a4a74805._.js → node_modules__pnpm_b75e6868._.js} +2 -2
  335. package/.next/server/chunks/ssr/{node_modules__pnpm_4cc41a2c._.js → node_modules__pnpm_bc76cc53._.js} +1 -1
  336. package/.next/server/chunks/ssr/{node_modules__pnpm_140ed2b5._.js → node_modules__pnpm_bcd2eb3a._.js} +1 -1
  337. package/.next/server/chunks/ssr/{node_modules__pnpm_85de6da6._.js → node_modules__pnpm_c1b02576._.js} +1 -1
  338. package/.next/server/chunks/ssr/{node_modules__pnpm_8a0f76d5._.js → node_modules__pnpm_c1b70c63._.js} +1 -1
  339. package/.next/server/chunks/ssr/{node_modules__pnpm_e70a06f1._.js → node_modules__pnpm_c320dcf5._.js} +1 -1
  340. package/.next/server/chunks/ssr/{node_modules__pnpm_36b5c2af._.js → node_modules__pnpm_c4d0e703._.js} +1 -1
  341. package/.next/server/chunks/ssr/{node_modules__pnpm_f6f51e7a._.js → node_modules__pnpm_c57f91df._.js} +1 -1
  342. package/.next/server/chunks/ssr/{node_modules__pnpm_55b7a1cf._.js → node_modules__pnpm_c598b48c._.js} +2 -2
  343. package/.next/server/chunks/ssr/{node_modules__pnpm_0631ec86._.js → node_modules__pnpm_c683995e._.js} +2 -2
  344. package/.next/server/chunks/ssr/{node_modules__pnpm_db2dceff._.js → node_modules__pnpm_c6a3a5ee._.js} +1 -1
  345. package/.next/server/chunks/ssr/{node_modules__pnpm_240c58bb._.js → node_modules__pnpm_c8929f6f._.js} +2 -2
  346. package/.next/server/chunks/ssr/{node_modules__pnpm_aec9b3d2._.js → node_modules__pnpm_c98f0170._.js} +2 -2
  347. package/.next/server/chunks/ssr/{node_modules__pnpm_96c7344a._.js → node_modules__pnpm_cf36446c._.js} +2 -2
  348. package/.next/server/chunks/ssr/{node_modules__pnpm_93144bce._.js → node_modules__pnpm_cf44f5d7._.js} +1 -1
  349. package/.next/server/chunks/ssr/{node_modules__pnpm_7a101d07._.js → node_modules__pnpm_d10d6e8f._.js} +1 -1
  350. package/.next/server/chunks/ssr/{node_modules__pnpm_076b3258._.js → node_modules__pnpm_d237d54b._.js} +2 -2
  351. package/.next/server/chunks/ssr/{node_modules__pnpm_688ab9b4._.js → node_modules__pnpm_d2ff1199._.js} +1 -1
  352. package/.next/server/chunks/ssr/{node_modules__pnpm_4edcc2cf._.js → node_modules__pnpm_d58c5c9c._.js} +1 -1
  353. package/.next/server/chunks/ssr/{node_modules__pnpm_6c9a5a96._.js → node_modules__pnpm_d65a8ec6._.js} +2 -2
  354. package/.next/server/chunks/ssr/{node_modules__pnpm_33344533._.js → node_modules__pnpm_db9521f3._.js} +2 -2
  355. package/.next/server/chunks/ssr/{node_modules__pnpm_ebfee6f4._.js → node_modules__pnpm_e07e25a1._.js} +1 -1
  356. package/.next/server/chunks/ssr/{node_modules__pnpm_07f377f7._.js → node_modules__pnpm_e084e8b5._.js} +2 -2
  357. package/.next/server/chunks/ssr/{node_modules__pnpm_6947736b._.js → node_modules__pnpm_e7e16c44._.js} +1 -1
  358. package/.next/server/chunks/ssr/{node_modules__pnpm_337eaf96._.js → node_modules__pnpm_e87f4c8f._.js} +1 -1
  359. package/.next/server/chunks/ssr/{node_modules__pnpm_cd59b8c6._.js → node_modules__pnpm_ee9378af._.js} +2 -2
  360. package/.next/server/chunks/ssr/{node_modules__pnpm_19e8c8a7._.js → node_modules__pnpm_ef18e708._.js} +1 -1
  361. package/.next/server/chunks/ssr/{node_modules__pnpm_a714825b._.js → node_modules__pnpm_ef613ec1._.js} +1 -1
  362. package/.next/server/chunks/ssr/{node_modules__pnpm_2b6ac74b._.js → node_modules__pnpm_f3d5816a._.js} +1 -1
  363. package/.next/server/chunks/ssr/{node_modules__pnpm_9927b752._.js → node_modules__pnpm_f75286f3._.js} +1 -1
  364. package/.next/server/chunks/ssr/{node_modules__pnpm_474a3a70._.js → node_modules__pnpm_f952589a._.js} +2 -2
  365. package/.next/server/chunks/ssr/{node_modules__pnpm_00962046._.js → node_modules__pnpm_fb5a6095._.js} +1 -1
  366. package/.next/server/chunks/ssr/src_app_(app)_error_tsx_8b5c3e3b._.js +3 -0
  367. package/.next/server/chunks/ssr/src_app_(app)_error_tsx_8b5c3e3b._.js.map +1 -0
  368. package/.next/server/chunks/ssr/src_app_(app)_settings_page_tsx_752c26e2._.js +1 -1
  369. package/.next/server/chunks/ssr/src_app_(app)_settings_page_tsx_752c26e2._.js.map +1 -1
  370. package/.next/server/chunks/ssr/src_app_(app)_setup_page_tsx_effb3116._.js +1 -1
  371. package/.next/server/chunks/ssr/src_app_(app)_setup_page_tsx_effb3116._.js.map +1 -1
  372. package/.next/server/chunks/ssr/src_app_global-error_tsx_aa661ba4._.js +3 -0
  373. package/.next/server/chunks/ssr/src_app_global-error_tsx_aa661ba4._.js.map +1 -0
  374. package/.next/server/chunks/ssr/src_components_ui_scroll-area_tsx_3edfbcee._.js +3 -0
  375. package/.next/server/chunks/ssr/src_components_ui_scroll-area_tsx_3edfbcee._.js.map +1 -0
  376. package/.next/server/middleware-build-manifest.js +3 -3
  377. package/.next/server/pages/404.html +1 -1
  378. package/.next/server/pages/500.html +2 -2
  379. package/.next/server/server-reference-manifest.js +1 -1
  380. package/.next/server/server-reference-manifest.json +1 -1
  381. package/.next/static/chunks/0a23222890789fc7.js +1 -0
  382. package/.next/static/chunks/260957bb921413ce.js +4 -0
  383. package/.next/static/chunks/26c0edacf913d566.js +1 -0
  384. package/.next/static/chunks/2899688335d3adb2.js +10 -0
  385. package/.next/static/chunks/37e7fffb0c3f808a.js +1 -0
  386. package/.next/static/chunks/{a8d5f5dc2688fe30.js → 4b85895b71381fe3.js} +1 -1
  387. package/.next/static/chunks/4c61fab7712ab14c.js +1 -0
  388. package/.next/static/chunks/{db20ec18c9fde107.js → 61aeba246e853119.js} +1 -1
  389. package/.next/static/chunks/622d4f9dd738a19e.js +5 -0
  390. package/.next/static/chunks/656421e1c8420066.js +1 -0
  391. package/.next/static/chunks/88a9c5878c58c4c7.js +1 -0
  392. package/.next/static/chunks/937e067c90728448.js +21 -0
  393. package/.next/static/chunks/9ec5cc6e82dc4c95.js +1 -0
  394. package/.next/static/chunks/9ef7e8256638a410.js +1 -0
  395. package/.next/static/chunks/{452e1bb12e7f0b85.js → a573ce301ebe6879.js} +1 -1
  396. package/.next/static/chunks/ab91a04173b72e7f.css +1 -0
  397. package/.next/static/chunks/{fcc2b1530d73e61e.js → c613844e13174012.js} +3 -3
  398. package/.next/static/chunks/e9233bff3572a5ae.js +1 -0
  399. package/.next/static/chunks/{turbopack-2835ad6e71df73d8.js → turbopack-d9f1831e5abe8b4e.js} +1 -1
  400. package/LICENSE +21 -0
  401. package/README.md +193 -167
  402. package/bin/vibedoc.js +7 -0
  403. package/package.json +4 -1
  404. package/.next/server/chunks/[root-of-the-server]__dfd36dc0._.js +0 -3
  405. package/.next/server/chunks/ssr/[root-of-the-server]__38711845._.js +0 -3
  406. package/.next/server/chunks/ssr/[root-of-the-server]__4cd0cfe5._.js +0 -3
  407. package/.next/server/chunks/ssr/[root-of-the-server]__599128b8._.js +0 -3
  408. package/.next/server/chunks/ssr/[root-of-the-server]__7ccd69b2._.js +0 -3
  409. package/.next/server/chunks/ssr/[root-of-the-server]__7de63c62._.js +0 -3
  410. package/.next/server/chunks/ssr/[root-of-the-server]__8edfd41f._.js +0 -3
  411. package/.next/server/chunks/ssr/[root-of-the-server]__93c50d95._.js +0 -3
  412. package/.next/server/chunks/ssr/[root-of-the-server]__93c50d95._.js.map +0 -1
  413. package/.next/server/chunks/ssr/[root-of-the-server]__ad4ab234._.js +0 -3
  414. package/.next/server/chunks/ssr/[root-of-the-server]__bdae2a0a._.js +0 -3
  415. package/.next/server/chunks/ssr/[root-of-the-server]__c754fc94._.js +0 -3
  416. package/.next/server/chunks/ssr/[root-of-the-server]__d23d6dd8._.js +0 -3
  417. package/.next/server/chunks/ssr/_0324be5b._.js +0 -4
  418. package/.next/server/chunks/ssr/_0324be5b._.js.map +0 -1
  419. package/.next/server/chunks/ssr/_04bd0614._.js.map +0 -1
  420. package/.next/server/chunks/ssr/_07ff42fd._.js.map +0 -1
  421. package/.next/server/chunks/ssr/_189227ea._.js +0 -3
  422. package/.next/server/chunks/ssr/_189227ea._.js.map +0 -1
  423. package/.next/server/chunks/ssr/_39d9968d._.js +0 -4
  424. package/.next/server/chunks/ssr/_39d9968d._.js.map +0 -1
  425. package/.next/server/chunks/ssr/_7b129868._.js +0 -4
  426. package/.next/server/chunks/ssr/_7b129868._.js.map +0 -1
  427. package/.next/server/chunks/ssr/_83c6a2ff._.js.map +0 -1
  428. package/.next/server/chunks/ssr/_85e5ab03._.js.map +0 -1
  429. package/.next/server/chunks/ssr/_9f1b4c51._.js +0 -3
  430. package/.next/server/chunks/ssr/_9f1b4c51._.js.map +0 -1
  431. package/.next/server/chunks/ssr/_b4c946f7._.js +0 -7
  432. package/.next/server/chunks/ssr/_b4c946f7._.js.map +0 -1
  433. package/.next/server/chunks/ssr/_c4b742c5._.js.map +0 -1
  434. package/.next/server/chunks/ssr/a41dc_lucide-react_dist_esm_icons_b0ef93f6._.js +0 -3
  435. package/.next/server/chunks/ssr/a41dc_lucide-react_dist_esm_icons_b0ef93f6._.js.map +0 -1
  436. package/.next/server/chunks/ssr/a41dc_lucide-react_dist_esm_icons_folder_de463b3c.js +0 -3
  437. package/.next/server/chunks/ssr/a41dc_lucide-react_dist_esm_icons_folder_de463b3c.js.map +0 -1
  438. package/.next/server/chunks/ssr/a5dda_next_dist_client_components_builtin_global-error_88955b9a.js +0 -3
  439. package/.next/server/chunks/ssr/a5dda_next_dist_client_components_builtin_global-error_88955b9a.js.map +0 -1
  440. package/.next/server/chunks/ssr/a5dda_next_dist_esm_build_templates_app-page_d9140d2d.js.map +0 -1
  441. package/.next/server/chunks/ssr/node_modules__pnpm_44b70609._.js +0 -3
  442. package/.next/server/chunks/ssr/node_modules__pnpm_9e807a6c._.js +0 -3
  443. package/.next/server/chunks/ssr/node_modules__pnpm_9e807a6c._.js.map +0 -1
  444. package/.next/static/chunks/13bdd4e22dd90816.js +0 -1
  445. package/.next/static/chunks/31fae4c58073753b.js +0 -1
  446. package/.next/static/chunks/429961c8e82cfbcb.css +0 -1
  447. package/.next/static/chunks/5066c1dec89e3cb6.js +0 -1
  448. package/.next/static/chunks/519aa8080f20453e.js +0 -10
  449. package/.next/static/chunks/6f01f5fee0eb2f66.js +0 -1
  450. package/.next/static/chunks/825ae09010d35407.js +0 -5
  451. package/.next/static/chunks/aad224af68aad5fb.js +0 -4
  452. package/.next/static/chunks/d0d8f8e7eb4550b4.js +0 -1
  453. package/.next/static/chunks/dc6d4ccd3cd8471c.js +0 -21
  454. package/.next/static/chunks/e6164bb2a2fa9b00.js +0 -1
  455. /package/.next/server/chunks/{[root-of-the-server]__54666fd5._.js.map → [root-of-the-server]__03edd537._.js.map} +0 -0
  456. /package/.next/server/chunks/{[root-of-the-server]__e27393ea._.js.map → [root-of-the-server]__1329130b._.js.map} +0 -0
  457. /package/.next/server/chunks/{[root-of-the-server]__dfd36dc0._.js.map → [root-of-the-server]__222d0fad._.js.map} +0 -0
  458. /package/.next/server/chunks/{[root-of-the-server]__a0a8fb65._.js.map → [root-of-the-server]__7da508f8._.js.map} +0 -0
  459. /package/.next/server/chunks/{[root-of-the-server]__2d66d57b._.js.map → [root-of-the-server]__9057030f._.js.map} +0 -0
  460. /package/.next/server/chunks/{[root-of-the-server]__aa7a40ec._.js.map → [root-of-the-server]__943256c8._.js.map} +0 -0
  461. /package/.next/server/chunks/{[root-of-the-server]__bacbf09e._.js.map → [root-of-the-server]__c4a478c1._.js.map} +0 -0
  462. /package/.next/server/chunks/{ssr/[root-of-the-server]__8edfd41f._.js.map → _next-internal_server_app_api_registry_route_actions_9502c56c.js.map} +0 -0
  463. /package/.next/server/chunks/{ssr/ec1cc_katex_dist_katex_mjs_9f7bcf4a._.js.map → _next-internal_server_app_api_tasks_create_route_actions_8f1c32d2.js.map} +0 -0
  464. /package/.next/server/chunks/ssr/{[root-of-the-server]__0310d64d._.js.map → [root-of-the-server]__1940775f._.js.map} +0 -0
  465. /package/.next/server/chunks/ssr/{[root-of-the-server]__85b679c6._.js.map → [root-of-the-server]__718d62a3._.js.map} +0 -0
  466. /package/.next/server/chunks/ssr/{[root-of-the-server]__8bc686d2._.js.map → [root-of-the-server]__83981bf9._.js.map} +0 -0
  467. /package/.next/server/chunks/ssr/{[root-of-the-server]__e44bed76._.js.map → [root-of-the-server]__a3f52a6e._.js.map} +0 -0
  468. /package/.next/server/chunks/ssr/{[root-of-the-server]__cf263b75._.js.map → [root-of-the-server]__c7aaf19e._.js.map} +0 -0
  469. /package/.next/server/chunks/ssr/{ec1cc_katex_dist_katex_mjs_a9aca746._.js.map → [root-of-the-server]__f322b1c8._.js.map} +0 -0
  470. /package/.next/server/chunks/ssr/{_102fd465._.js.map → _af7c883c._.js.map} +0 -0
  471. /package/.next/server/chunks/ssr/{ec1cc_katex_dist_katex_mjs_e7b66387._.js.map → ec1cc_katex_dist_katex_mjs_1924e0db._.js.map} +0 -0
  472. /package/.next/server/chunks/ssr/{ec1cc_katex_dist_katex_mjs_e93914b8._.js.map → ec1cc_katex_dist_katex_mjs_1e92da96._.js.map} +0 -0
  473. /package/.next/server/chunks/ssr/{node_modules__pnpm_0322e068._.js.map → node_modules__pnpm_00fba959._.js.map} +0 -0
  474. /package/.next/server/chunks/ssr/{node_modules__pnpm_55b7a1cf._.js.map → node_modules__pnpm_0ae7984c._.js.map} +0 -0
  475. /package/.next/server/chunks/ssr/{node_modules__pnpm_0631ec86._.js.map → node_modules__pnpm_0b2a59a5._.js.map} +0 -0
  476. /package/.next/server/chunks/ssr/{node_modules__pnpm_63a4a328._.js.map → node_modules__pnpm_0b403dbf._.js.map} +0 -0
  477. /package/.next/server/chunks/ssr/{node_modules__pnpm_2b6ac74b._.js.map → node_modules__pnpm_0dc85bd5._.js.map} +0 -0
  478. /package/.next/server/chunks/ssr/{node_modules__pnpm_19e8c8a7._.js.map → node_modules__pnpm_0f315216._.js.map} +0 -0
  479. /package/.next/server/chunks/ssr/{node_modules__pnpm_39f460e8._.js.map → node_modules__pnpm_0fcc2ade._.js.map} +0 -0
  480. /package/.next/server/chunks/ssr/{node_modules__pnpm_3601c997._.js.map → node_modules__pnpm_11602273._.js.map} +0 -0
  481. /package/.next/server/chunks/ssr/{node_modules__pnpm_1c623592._.js.map → node_modules__pnpm_166528e5._.js.map} +0 -0
  482. /package/.next/server/chunks/ssr/{node_modules__pnpm_8c13bdb7._.js.map → node_modules__pnpm_1b6418c7._.js.map} +0 -0
  483. /package/.next/server/chunks/ssr/{node_modules__pnpm_3dd8e608._.js.map → node_modules__pnpm_203e2ae6._.js.map} +0 -0
  484. /package/.next/server/chunks/ssr/{node_modules__pnpm_05da39c7._.js.map → node_modules__pnpm_20667837._.js.map} +0 -0
  485. /package/.next/server/chunks/ssr/{node_modules__pnpm_1dce0d3b._.js.map → node_modules__pnpm_22b45ca3._.js.map} +0 -0
  486. /package/.next/server/chunks/ssr/{node_modules__pnpm_42d2c2d2._.js.map → node_modules__pnpm_233a9948._.js.map} +0 -0
  487. /package/.next/server/chunks/ssr/{node_modules__pnpm_2871fff4._.js.map → node_modules__pnpm_26c302ad._.js.map} +0 -0
  488. /package/.next/server/chunks/ssr/{node_modules__pnpm_08cf1858._.js.map → node_modules__pnpm_28f5917a._.js.map} +0 -0
  489. /package/.next/server/chunks/ssr/{node_modules__pnpm_0c377643._.js.map → node_modules__pnpm_29ef1122._.js.map} +0 -0
  490. /package/.next/server/chunks/ssr/{node_modules__pnpm_227802dc._.js.map → node_modules__pnpm_2b433d26._.js.map} +0 -0
  491. /package/.next/server/chunks/ssr/{node_modules__pnpm_5c59b1ad._.js.map → node_modules__pnpm_32dea2df._.js.map} +0 -0
  492. /package/.next/server/chunks/ssr/{node_modules__pnpm_00962046._.js.map → node_modules__pnpm_36314152._.js.map} +0 -0
  493. /package/.next/server/chunks/ssr/{node_modules__pnpm_790c3b2e._.js.map → node_modules__pnpm_383aee7b._.js.map} +0 -0
  494. /package/.next/server/chunks/ssr/{node_modules__pnpm_87d282d9._.js.map → node_modules__pnpm_3f2da5a6._.js.map} +0 -0
  495. /package/.next/server/chunks/ssr/{node_modules__pnpm_3f2cce74._.js.map → node_modules__pnpm_49f81544._.js.map} +0 -0
  496. /package/.next/server/chunks/ssr/{node_modules__pnpm_7a101d07._.js.map → node_modules__pnpm_4d2bd21b._.js.map} +0 -0
  497. /package/.next/server/chunks/ssr/{node_modules__pnpm_6a7ed592._.js.map → node_modules__pnpm_4d5ddaac._.js.map} +0 -0
  498. /package/.next/server/chunks/ssr/{node_modules__pnpm_45bf67c8._.js.map → node_modules__pnpm_4f088d93._.js.map} +0 -0
  499. /package/.next/server/chunks/ssr/{node_modules__pnpm_b50ae8f6._.js.map → node_modules__pnpm_5075b2c5._.js.map} +0 -0
  500. /package/.next/server/chunks/ssr/{node_modules__pnpm_70a08cdf._.js.map → node_modules__pnpm_53135aed._.js.map} +0 -0
  501. /package/.next/server/chunks/ssr/{node_modules__pnpm_1790069e._.js.map → node_modules__pnpm_55940107._.js.map} +0 -0
  502. /package/.next/server/chunks/ssr/{node_modules__pnpm_423baddc._.js.map → node_modules__pnpm_5a66db81._.js.map} +0 -0
  503. /package/.next/server/chunks/ssr/{node_modules__pnpm_07f377f7._.js.map → node_modules__pnpm_660f6b48._.js.map} +0 -0
  504. /package/.next/server/chunks/ssr/{node_modules__pnpm_36b5c2af._.js.map → node_modules__pnpm_678a023d._.js.map} +0 -0
  505. /package/.next/server/chunks/ssr/{node_modules__pnpm_140ed2b5._.js.map → node_modules__pnpm_69340952._.js.map} +0 -0
  506. /package/.next/server/chunks/ssr/{node_modules__pnpm_c402a901._.js.map → node_modules__pnpm_6a505c32._.js.map} +0 -0
  507. /package/.next/server/chunks/ssr/{node_modules__pnpm_9cdea683._.js.map → node_modules__pnpm_73f60ed3._.js.map} +0 -0
  508. /package/.next/server/chunks/ssr/{node_modules__pnpm_8b3ed63a._.js.map → node_modules__pnpm_73fa56d9._.js.map} +0 -0
  509. /package/.next/server/chunks/ssr/{node_modules__pnpm_8ba721df._.js.map → node_modules__pnpm_7417f8a3._.js.map} +0 -0
  510. /package/.next/server/chunks/ssr/{node_modules__pnpm_240c58bb._.js.map → node_modules__pnpm_74702239._.js.map} +0 -0
  511. /package/.next/server/chunks/ssr/{node_modules__pnpm_337eaf96._.js.map → node_modules__pnpm_76595790._.js.map} +0 -0
  512. /package/.next/server/chunks/ssr/{node_modules__pnpm_8036c25f._.js.map → node_modules__pnpm_7688cd8b._.js.map} +0 -0
  513. /package/.next/server/chunks/ssr/{node_modules__pnpm_06db4ba2._.js.map → node_modules__pnpm_77bef6b3._.js.map} +0 -0
  514. /package/.next/server/chunks/ssr/{node_modules__pnpm_08922392._.js.map → node_modules__pnpm_7b9f7ded._.js.map} +0 -0
  515. /package/.next/server/chunks/ssr/{node_modules__pnpm_c7ca55c9._.js.map → node_modules__pnpm_7bc6fb3f._.js.map} +0 -0
  516. /package/.next/server/chunks/ssr/{node_modules__pnpm_7de47ba7._.js.map → node_modules__pnpm_7bebd190._.js.map} +0 -0
  517. /package/.next/server/chunks/ssr/{node_modules__pnpm_72235a6a._.js.map → node_modules__pnpm_7cacc1cc._.js.map} +0 -0
  518. /package/.next/server/chunks/ssr/{node_modules__pnpm_4edcc2cf._.js.map → node_modules__pnpm_7d6096d0._.js.map} +0 -0
  519. /package/.next/server/chunks/ssr/{node_modules__pnpm_75846ac9._.js.map → node_modules__pnpm_810c12a3._.js.map} +0 -0
  520. /package/.next/server/chunks/ssr/{node_modules__pnpm_df7dcb26._.js.map → node_modules__pnpm_917236c4._.js.map} +0 -0
  521. /package/.next/server/chunks/ssr/{node_modules__pnpm_135db8bc._.js.map → node_modules__pnpm_958d62cb._.js.map} +0 -0
  522. /package/.next/server/chunks/ssr/{node_modules__pnpm_5768848c._.js.map → node_modules__pnpm_97367937._.js.map} +0 -0
  523. /package/.next/server/chunks/ssr/{node_modules__pnpm_b6b9de46._.js.map → node_modules__pnpm_993eff2d._.js.map} +0 -0
  524. /package/.next/server/chunks/ssr/{node_modules__pnpm_016e62a5._.js.map → node_modules__pnpm_9bab8aaa._.js.map} +0 -0
  525. /package/.next/server/chunks/ssr/{node_modules__pnpm_9ce450a4._.js.map → node_modules__pnpm_9d36940a._.js.map} +0 -0
  526. /package/.next/server/chunks/ssr/{node_modules__pnpm_076b3258._.js.map → node_modules__pnpm_9ddf8ec8._.js.map} +0 -0
  527. /package/.next/server/chunks/ssr/{node_modules__pnpm_a23a1417._.js.map → node_modules__pnpm_9de6944e._.js.map} +0 -0
  528. /package/.next/server/chunks/ssr/{node_modules__pnpm_7e98d14b._.js.map → node_modules__pnpm_9ed86539._.js.map} +0 -0
  529. /package/.next/server/chunks/ssr/{node_modules__pnpm_474a3a70._.js.map → node_modules__pnpm_a216f966._.js.map} +0 -0
  530. /package/.next/server/chunks/ssr/{node_modules__pnpm_754137d0._.js.map → node_modules__pnpm_a23053e0._.js.map} +0 -0
  531. /package/.next/server/chunks/ssr/{node_modules__pnpm_7ca85e0d._.js.map → node_modules__pnpm_a2c4f3d7._.js.map} +0 -0
  532. /package/.next/server/chunks/ssr/{node_modules__pnpm_b18e7d84._.js.map → node_modules__pnpm_a3c866a4._.js.map} +0 -0
  533. /package/.next/server/chunks/ssr/{node_modules__pnpm_2e011da0._.js.map → node_modules__pnpm_aa25e76f._.js.map} +0 -0
  534. /package/.next/server/chunks/ssr/{node_modules__pnpm_91a9fe44._.js.map → node_modules__pnpm_aa53a759._.js.map} +0 -0
  535. /package/.next/server/chunks/ssr/{node_modules__pnpm_b2c6ca72._.js.map → node_modules__pnpm_ae8e01c6._.js.map} +0 -0
  536. /package/.next/server/chunks/ssr/{node_modules__pnpm_3394b2c5._.js.map → node_modules__pnpm_aebdd762._.js.map} +0 -0
  537. /package/.next/server/chunks/ssr/{node_modules__pnpm_0d80282c._.js.map → node_modules__pnpm_af29ab68._.js.map} +0 -0
  538. /package/.next/server/chunks/ssr/{node_modules__pnpm_c278eaac._.js.map → node_modules__pnpm_b28ba463._.js.map} +0 -0
  539. /package/.next/server/chunks/ssr/{node_modules__pnpm_f505d304._.js.map → node_modules__pnpm_b4adc2e7._.js.map} +0 -0
  540. /package/.next/server/chunks/ssr/{node_modules__pnpm_4d03e476._.js.map → node_modules__pnpm_b4bf1729._.js.map} +0 -0
  541. /package/.next/server/chunks/ssr/{node_modules__pnpm_a4a74805._.js.map → node_modules__pnpm_b75e6868._.js.map} +0 -0
  542. /package/.next/server/chunks/ssr/{node_modules__pnpm_4cc41a2c._.js.map → node_modules__pnpm_bc76cc53._.js.map} +0 -0
  543. /package/.next/server/chunks/ssr/{node_modules__pnpm_c39c9496._.js.map → node_modules__pnpm_bcd2eb3a._.js.map} +0 -0
  544. /package/.next/server/chunks/ssr/{node_modules__pnpm_76204895._.js.map → node_modules__pnpm_c1b02576._.js.map} +0 -0
  545. /package/.next/server/chunks/ssr/{node_modules__pnpm_8a0f76d5._.js.map → node_modules__pnpm_c1b70c63._.js.map} +0 -0
  546. /package/.next/server/chunks/ssr/{node_modules__pnpm_e70a06f1._.js.map → node_modules__pnpm_c320dcf5._.js.map} +0 -0
  547. /package/.next/server/chunks/ssr/{node_modules__pnpm_67f40799._.js.map → node_modules__pnpm_c4d0e703._.js.map} +0 -0
  548. /package/.next/server/chunks/ssr/{node_modules__pnpm_f6f51e7a._.js.map → node_modules__pnpm_c57f91df._.js.map} +0 -0
  549. /package/.next/server/chunks/ssr/{node_modules__pnpm_8f8943af._.js.map → node_modules__pnpm_c598b48c._.js.map} +0 -0
  550. /package/.next/server/chunks/ssr/{node_modules__pnpm_60fef38e._.js.map → node_modules__pnpm_c683995e._.js.map} +0 -0
  551. /package/.next/server/chunks/ssr/{node_modules__pnpm_db2dceff._.js.map → node_modules__pnpm_c6a3a5ee._.js.map} +0 -0
  552. /package/.next/server/chunks/ssr/{node_modules__pnpm_33344533._.js.map → node_modules__pnpm_c8929f6f._.js.map} +0 -0
  553. /package/.next/server/chunks/ssr/{node_modules__pnpm_aec9b3d2._.js.map → node_modules__pnpm_c98f0170._.js.map} +0 -0
  554. /package/.next/server/chunks/ssr/{node_modules__pnpm_96c7344a._.js.map → node_modules__pnpm_cf36446c._.js.map} +0 -0
  555. /package/.next/server/chunks/ssr/{node_modules__pnpm_93144bce._.js.map → node_modules__pnpm_cf44f5d7._.js.map} +0 -0
  556. /package/.next/server/chunks/ssr/{node_modules__pnpm_f77bb209._.js.map → node_modules__pnpm_d10d6e8f._.js.map} +0 -0
  557. /package/.next/server/chunks/ssr/{node_modules__pnpm_75690281._.js.map → node_modules__pnpm_d237d54b._.js.map} +0 -0
  558. /package/.next/server/chunks/ssr/{node_modules__pnpm_688ab9b4._.js.map → node_modules__pnpm_d2ff1199._.js.map} +0 -0
  559. /package/.next/server/chunks/ssr/{node_modules__pnpm_85de6da6._.js.map → node_modules__pnpm_d58c5c9c._.js.map} +0 -0
  560. /package/.next/server/chunks/ssr/{node_modules__pnpm_3d378674._.js.map → node_modules__pnpm_d65a8ec6._.js.map} +0 -0
  561. /package/.next/server/chunks/ssr/{node_modules__pnpm_d75e5d41._.js.map → node_modules__pnpm_db9521f3._.js.map} +0 -0
  562. /package/.next/server/chunks/ssr/{node_modules__pnpm_ebfee6f4._.js.map → node_modules__pnpm_e07e25a1._.js.map} +0 -0
  563. /package/.next/server/chunks/ssr/{node_modules__pnpm_6c9a5a96._.js.map → node_modules__pnpm_e084e8b5._.js.map} +0 -0
  564. /package/.next/server/chunks/ssr/{node_modules__pnpm_6947736b._.js.map → node_modules__pnpm_e7e16c44._.js.map} +0 -0
  565. /package/.next/server/chunks/ssr/{node_modules__pnpm_928932b1._.js.map → node_modules__pnpm_e87f4c8f._.js.map} +0 -0
  566. /package/.next/server/chunks/ssr/{node_modules__pnpm_cd59b8c6._.js.map → node_modules__pnpm_ee9378af._.js.map} +0 -0
  567. /package/.next/server/chunks/ssr/{node_modules__pnpm_ba838a36._.js.map → node_modules__pnpm_ef18e708._.js.map} +0 -0
  568. /package/.next/server/chunks/ssr/{node_modules__pnpm_a714825b._.js.map → node_modules__pnpm_ef613ec1._.js.map} +0 -0
  569. /package/.next/server/chunks/ssr/{node_modules__pnpm_d1c050d4._.js.map → node_modules__pnpm_f3d5816a._.js.map} +0 -0
  570. /package/.next/server/chunks/ssr/{node_modules__pnpm_9927b752._.js.map → node_modules__pnpm_f75286f3._.js.map} +0 -0
  571. /package/.next/server/chunks/ssr/{node_modules__pnpm_d6cd0cb1._.js.map → node_modules__pnpm_f952589a._.js.map} +0 -0
  572. /package/.next/server/chunks/ssr/{node_modules__pnpm_fa1f464c._.js.map → node_modules__pnpm_fb5a6095._.js.map} +0 -0
  573. /package/.next/static/{Cel8IZo91rJRjbRQC_DUd → 3qaTeSReklR4iA-D6kF9C}/_buildManifest.js +0 -0
  574. /package/.next/static/{Cel8IZo91rJRjbRQC_DUd → 3qaTeSReklR4iA-D6kF9C}/_clientMiddlewareManifest.json +0 -0
  575. /package/.next/static/{Cel8IZo91rJRjbRQC_DUd → 3qaTeSReklR4iA-D6kF9C}/_ssgManifest.js +0 -0
@@ -1,4 +1,4 @@
1
- (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,{otherChunks:["static/chunks/e6164bb2a2fa9b00.js","static/chunks/aad224af68aad5fb.js","static/chunks/e7aa622fd3384345.js","static/chunks/94ff0ac5b99275b3.js"],runtimeModuleIds:[53337]}]),(()=>{let e;if(!Array.isArray(globalThis.TURBOPACK))return;let t="/_next/",r=(self.TURBOPACK_CHUNK_SUFFIX??document?.currentScript?.getAttribute?.("src")?.replace(/^(.*(?=\?)|^.*$)/,""))||"",n=new WeakMap;function o(e,t){this.m=e,this.e=t}let l=o.prototype,i=Object.prototype.hasOwnProperty,s="u">typeof Symbol&&Symbol.toStringTag;function u(e,t,r){i.call(e,t)||Object.defineProperty(e,t,r)}function a(e,t){let r=e[t];return r||(r=c(t),e[t]=r),r}function c(e){return{exports:{},error:void 0,id:e,namespaceObject:void 0}}function f(e,t){u(e,"__esModule",{value:!0}),s&&u(e,s,{value:"Module"});let r=0;for(;r<t.length;){let n=t[r++],o=t[r++];if("number"==typeof o)if(0===o)u(e,n,{value:t[r++],enumerable:!0,writable:!1});else throw Error(`unexpected tag: ${o}`);else"function"==typeof t[r]?u(e,n,{get:o,set:t[r++],enumerable:!0}):u(e,n,{get:o,enumerable:!0})}Object.seal(e)}l.s=function(e,t){let r,n;null!=t?n=(r=a(this.c,t)).exports:(r=this.m,n=this.e),r.namespaceObject=n,f(n,e)},l.j=function(e,t){var r,o;let l,s,u;null!=t?s=(l=a(this.c,t)).exports:(l=this.m,s=this.e);let c=(r=l,o=s,(u=n.get(r))||(n.set(r,u=[]),r.exports=r.namespaceObject=new Proxy(o,{get(e,t){if(i.call(e,t)||"default"===t||"__esModule"===t)return Reflect.get(e,t);for(let e of u){let r=Reflect.get(e,t);if(void 0!==r)return r}},ownKeys(e){let t=Reflect.ownKeys(e);for(let e of u)for(let r of Reflect.ownKeys(e))"default"===r||t.includes(r)||t.push(r);return t}})),u);"object"==typeof e&&null!==e&&c.push(e)},l.v=function(e,t){(null!=t?a(this.c,t):this.m).exports=e},l.n=function(e,t){let r;(r=null!=t?a(this.c,t):this.m).exports=r.namespaceObject=e};let p=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,h=[null,p({}),p([]),p(p)];function d(e,t,r){let n=[],o=-1;for(let t=e;("object"==typeof t||"function"==typeof t)&&!h.includes(t);t=p(t))for(let r of Object.getOwnPropertyNames(t))n.push(r,function(e,t){return()=>e[t]}(e,r)),-1===o&&"default"===r&&(o=n.length-1);return r&&o>=0||(o>=0?n.splice(o,1,0,e):n.push("default",0,e)),f(t,n),t}function m(e){let t=B(e,this.m);if(t.namespaceObject)return t.namespaceObject;let r=t.exports;return t.namespaceObject=d(r,"function"==typeof r?function(...e){return r.apply(this,e)}:Object.create(null),r&&r.__esModule)}function b(e){let t=e.indexOf("#");-1!==t&&(e=e.substring(0,t));let r=e.indexOf("?");return -1!==r&&(e=e.substring(0,r)),e}function y(){let e,t;return{promise:new Promise((r,n)=>{t=n,e=r}),resolve:e,reject:t}}l.i=m,l.A=function(e){return this.r(e)(m.bind(this))},l.t="function"==typeof require?require:function(){throw Error("Unexpected use of runtime require")},l.r=function(e){return B(e,this.m).exports},l.f=function(e){function t(t){if(t=b(t),i.call(e,t))return e[t].module();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r}return t.keys=()=>Object.keys(e),t.resolve=t=>{if(t=b(t),i.call(e,t))return e[t].id();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r},t.import=async e=>await t(e),t};let O=Symbol("turbopack queues"),g=Symbol("turbopack exports"),w=Symbol("turbopack error");function C(e){e&&1!==e.status&&(e.status=1,e.forEach(e=>e.queueCount--),e.forEach(e=>e.queueCount--?e.queueCount++:e()))}l.a=function(e,t){let r=this.m,n=t?Object.assign([],{status:-1}):void 0,o=new Set,{resolve:l,reject:i,promise:s}=y(),u=Object.assign(s,{[g]:r.exports,[O]:e=>{n&&e(n),o.forEach(e),u.catch(()=>{})}}),a={get:()=>u,set(e){e!==u&&(u[g]=e)}};Object.defineProperty(r,"exports",a),Object.defineProperty(r,"namespaceObject",a),e(function(e){let t=e.map(e=>{if(null!==e&&"object"==typeof e){if(O in e)return e;if(null!=e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then){let t=Object.assign([],{status:0}),r={[g]:{},[O]:e=>e(t)};return e.then(e=>{r[g]=e,C(t)},e=>{r[w]=e,C(t)}),r}}return{[g]:e,[O]:()=>{}}}),r=()=>t.map(e=>{if(e[w])throw e[w];return e[g]}),{promise:l,resolve:i}=y(),s=Object.assign(()=>i(r),{queueCount:0});function u(e){e!==n&&!o.has(e)&&(o.add(e),e&&0===e.status&&(s.queueCount++,e.push(s)))}return t.map(e=>e[O](u)),s.queueCount?l:r()},function(e){e?i(u[w]=e):l(u[g]),C(n)}),n&&-1===n.status&&(n.status=0)};let U=function(e){let t=new URL(e,"x:/"),r={};for(let e in t)r[e]=t[e];for(let t in r.href=e,r.pathname=e.replace(/[?#].*/,""),r.origin=r.protocol="",r.toString=r.toJSON=(...t)=>e,r)Object.defineProperty(this,t,{enumerable:!0,configurable:!0,value:r[t]})};function R(e,t){throw Error(`Invariant: ${t(e)}`)}U.prototype=URL.prototype,l.U=U,l.z=function(e){throw Error("dynamic usage of require is not supported")},l.g=globalThis;let j=o.prototype;var k,_=((k=_||{})[k.Runtime=0]="Runtime",k[k.Parent=1]="Parent",k[k.Update=2]="Update",k);let v=new Map;l.M=v;let $=new Map,P=new Map;async function S(e,t,r){let n;if("string"==typeof r)return E(e,t,K(r));let o=r.included||[],l=o.map(e=>!!v.has(e)||$.get(e));if(l.length>0&&l.every(e=>e))return void await Promise.all(l);let i=r.moduleChunks||[],s=i.map(e=>P.get(e)).filter(e=>e);if(s.length>0){if(s.length===i.length)return void await Promise.all(s);let r=new Set;for(let e of i)P.has(e)||r.add(e);for(let n of r){let r=E(e,t,K(n));P.set(n,r),s.push(r)}n=Promise.all(s)}else{for(let o of(n=E(e,t,K(r.path)),i))P.has(o)||P.set(o,n)}for(let e of o)$.has(e)||$.set(e,n);await n}j.l=function(e){return S(1,this.m.id,e)};let T=Promise.resolve(void 0),A=new WeakMap;function E(t,r,n){let o=e.loadChunkCached(t,n),l=A.get(o);if(void 0===l){let e=A.set.bind(A,o,T);l=o.then(e).catch(e=>{let o;switch(t){case 0:o=`as a runtime dependency of chunk ${r}`;break;case 1:o=`from module ${r}`;break;case 2:o="from an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}let l=Error(`Failed to load chunk ${n} ${o}${e?`: ${e}`:""}`,e?{cause:e}:void 0);throw l.name="ChunkLoadError",l}),A.set(o,l)}return l}function K(e){return`${t}${e.split("/").map(e=>encodeURIComponent(e)).join("/")}${r}`}j.L=function(e){return E(1,this.m.id,e)},j.R=function(e){let t=this.r(e);return t?.default??t},j.P=function(e){return`/ROOT/${e??""}`},j.b=function(e){let t=new Blob([`self.TURBOPACK_WORKER_LOCATION = ${JSON.stringify(location.origin)};
1
+ (globalThis.TURBOPACK||(globalThis.TURBOPACK=[])).push(["object"==typeof document?document.currentScript:void 0,{otherChunks:["static/chunks/656421e1c8420066.js","static/chunks/260957bb921413ce.js","static/chunks/e7aa622fd3384345.js","static/chunks/94ff0ac5b99275b3.js"],runtimeModuleIds:[53337]}]),(()=>{let e;if(!Array.isArray(globalThis.TURBOPACK))return;let t="/_next/",r=(self.TURBOPACK_CHUNK_SUFFIX??document?.currentScript?.getAttribute?.("src")?.replace(/^(.*(?=\?)|^.*$)/,""))||"",n=new WeakMap;function o(e,t){this.m=e,this.e=t}let l=o.prototype,i=Object.prototype.hasOwnProperty,s="u">typeof Symbol&&Symbol.toStringTag;function u(e,t,r){i.call(e,t)||Object.defineProperty(e,t,r)}function a(e,t){let r=e[t];return r||(r=c(t),e[t]=r),r}function c(e){return{exports:{},error:void 0,id:e,namespaceObject:void 0}}function f(e,t){u(e,"__esModule",{value:!0}),s&&u(e,s,{value:"Module"});let r=0;for(;r<t.length;){let n=t[r++],o=t[r++];if("number"==typeof o)if(0===o)u(e,n,{value:t[r++],enumerable:!0,writable:!1});else throw Error(`unexpected tag: ${o}`);else"function"==typeof t[r]?u(e,n,{get:o,set:t[r++],enumerable:!0}):u(e,n,{get:o,enumerable:!0})}Object.seal(e)}l.s=function(e,t){let r,n;null!=t?n=(r=a(this.c,t)).exports:(r=this.m,n=this.e),r.namespaceObject=n,f(n,e)},l.j=function(e,t){var r,o;let l,s,u;null!=t?s=(l=a(this.c,t)).exports:(l=this.m,s=this.e);let c=(r=l,o=s,(u=n.get(r))||(n.set(r,u=[]),r.exports=r.namespaceObject=new Proxy(o,{get(e,t){if(i.call(e,t)||"default"===t||"__esModule"===t)return Reflect.get(e,t);for(let e of u){let r=Reflect.get(e,t);if(void 0!==r)return r}},ownKeys(e){let t=Reflect.ownKeys(e);for(let e of u)for(let r of Reflect.ownKeys(e))"default"===r||t.includes(r)||t.push(r);return t}})),u);"object"==typeof e&&null!==e&&c.push(e)},l.v=function(e,t){(null!=t?a(this.c,t):this.m).exports=e},l.n=function(e,t){let r;(r=null!=t?a(this.c,t):this.m).exports=r.namespaceObject=e};let p=Object.getPrototypeOf?e=>Object.getPrototypeOf(e):e=>e.__proto__,h=[null,p({}),p([]),p(p)];function d(e,t,r){let n=[],o=-1;for(let t=e;("object"==typeof t||"function"==typeof t)&&!h.includes(t);t=p(t))for(let r of Object.getOwnPropertyNames(t))n.push(r,function(e,t){return()=>e[t]}(e,r)),-1===o&&"default"===r&&(o=n.length-1);return r&&o>=0||(o>=0?n.splice(o,1,0,e):n.push("default",0,e)),f(t,n),t}function m(e){let t=B(e,this.m);if(t.namespaceObject)return t.namespaceObject;let r=t.exports;return t.namespaceObject=d(r,"function"==typeof r?function(...e){return r.apply(this,e)}:Object.create(null),r&&r.__esModule)}function b(e){let t=e.indexOf("#");-1!==t&&(e=e.substring(0,t));let r=e.indexOf("?");return -1!==r&&(e=e.substring(0,r)),e}function y(){let e,t;return{promise:new Promise((r,n)=>{t=n,e=r}),resolve:e,reject:t}}l.i=m,l.A=function(e){return this.r(e)(m.bind(this))},l.t="function"==typeof require?require:function(){throw Error("Unexpected use of runtime require")},l.r=function(e){return B(e,this.m).exports},l.f=function(e){function t(t){if(t=b(t),i.call(e,t))return e[t].module();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r}return t.keys=()=>Object.keys(e),t.resolve=t=>{if(t=b(t),i.call(e,t))return e[t].id();let r=Error(`Cannot find module '${t}'`);throw r.code="MODULE_NOT_FOUND",r},t.import=async e=>await t(e),t};let O=Symbol("turbopack queues"),g=Symbol("turbopack exports"),w=Symbol("turbopack error");function C(e){e&&1!==e.status&&(e.status=1,e.forEach(e=>e.queueCount--),e.forEach(e=>e.queueCount--?e.queueCount++:e()))}l.a=function(e,t){let r=this.m,n=t?Object.assign([],{status:-1}):void 0,o=new Set,{resolve:l,reject:i,promise:s}=y(),u=Object.assign(s,{[g]:r.exports,[O]:e=>{n&&e(n),o.forEach(e),u.catch(()=>{})}}),a={get:()=>u,set(e){e!==u&&(u[g]=e)}};Object.defineProperty(r,"exports",a),Object.defineProperty(r,"namespaceObject",a),e(function(e){let t=e.map(e=>{if(null!==e&&"object"==typeof e){if(O in e)return e;if(null!=e&&"object"==typeof e&&"then"in e&&"function"==typeof e.then){let t=Object.assign([],{status:0}),r={[g]:{},[O]:e=>e(t)};return e.then(e=>{r[g]=e,C(t)},e=>{r[w]=e,C(t)}),r}}return{[g]:e,[O]:()=>{}}}),r=()=>t.map(e=>{if(e[w])throw e[w];return e[g]}),{promise:l,resolve:i}=y(),s=Object.assign(()=>i(r),{queueCount:0});function u(e){e!==n&&!o.has(e)&&(o.add(e),e&&0===e.status&&(s.queueCount++,e.push(s)))}return t.map(e=>e[O](u)),s.queueCount?l:r()},function(e){e?i(u[w]=e):l(u[g]),C(n)}),n&&-1===n.status&&(n.status=0)};let U=function(e){let t=new URL(e,"x:/"),r={};for(let e in t)r[e]=t[e];for(let t in r.href=e,r.pathname=e.replace(/[?#].*/,""),r.origin=r.protocol="",r.toString=r.toJSON=(...t)=>e,r)Object.defineProperty(this,t,{enumerable:!0,configurable:!0,value:r[t]})};function R(e,t){throw Error(`Invariant: ${t(e)}`)}U.prototype=URL.prototype,l.U=U,l.z=function(e){throw Error("dynamic usage of require is not supported")},l.g=globalThis;let j=o.prototype;var k,_=((k=_||{})[k.Runtime=0]="Runtime",k[k.Parent=1]="Parent",k[k.Update=2]="Update",k);let v=new Map;l.M=v;let $=new Map,P=new Map;async function S(e,t,r){let n;if("string"==typeof r)return E(e,t,K(r));let o=r.included||[],l=o.map(e=>!!v.has(e)||$.get(e));if(l.length>0&&l.every(e=>e))return void await Promise.all(l);let i=r.moduleChunks||[],s=i.map(e=>P.get(e)).filter(e=>e);if(s.length>0){if(s.length===i.length)return void await Promise.all(s);let r=new Set;for(let e of i)P.has(e)||r.add(e);for(let n of r){let r=E(e,t,K(n));P.set(n,r),s.push(r)}n=Promise.all(s)}else{for(let o of(n=E(e,t,K(r.path)),i))P.has(o)||P.set(o,n)}for(let e of o)$.has(e)||$.set(e,n);await n}j.l=function(e){return S(1,this.m.id,e)};let T=Promise.resolve(void 0),A=new WeakMap;function E(t,r,n){let o=e.loadChunkCached(t,n),l=A.get(o);if(void 0===l){let e=A.set.bind(A,o,T);l=o.then(e).catch(e=>{let o;switch(t){case 0:o=`as a runtime dependency of chunk ${r}`;break;case 1:o=`from module ${r}`;break;case 2:o="from an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}let l=Error(`Failed to load chunk ${n} ${o}${e?`: ${e}`:""}`,e?{cause:e}:void 0);throw l.name="ChunkLoadError",l}),A.set(o,l)}return l}function K(e){return`${t}${e.split("/").map(e=>encodeURIComponent(e)).join("/")}${r}`}j.L=function(e){return E(1,this.m.id,e)},j.R=function(e){let t=this.r(e);return t?.default??t},j.P=function(e){return`/ROOT/${e??""}`},j.b=function(e){let t=new Blob([`self.TURBOPACK_WORKER_LOCATION = ${JSON.stringify(location.origin)};
2
2
  self.TURBOPACK_CHUNK_SUFFIX = ${JSON.stringify(r)};
3
3
  self.TURBOPACK_NEXT_CHUNK_URLS = ${JSON.stringify(e.reverse().map(K),null,2)};
4
4
  importScripts(...self.TURBOPACK_NEXT_CHUNK_URLS.map(c => self.TURBOPACK_WORKER_LOCATION + c).reverse());`],{type:"text/javascript"});return URL.createObjectURL(t)};let x=/\.js(?:\?[^#]*)?(?:#.*)?$/,N=/\.css(?:\?[^#]*)?(?:#.*)?$/;function M(e){return N.test(e)}l.w=function(t,r,n){return e.loadWebAssembly(1,this.m.id,t,r,n)},l.u=function(t,r){return e.loadWebAssemblyModule(1,this.m.id,t,r)};let L={};l.c=L;let B=(e,t)=>{let r=L[e];if(r){if(r.error)throw r.error;return r}return q(e,_.Parent,t.id)};function q(e,t,r){let n=v.get(e);if("function"!=typeof n)throw Error(function(e,t,r){let n;switch(t){case 0:n=`as a runtime entry of chunk ${r}`;break;case 1:n=`because it was required from module ${r}`;break;case 2:n="because of an HMR update";break;default:R(t,e=>`Unknown source type: ${e}`)}return`Module ${e} was instantiated ${n}, but the module factory is not available.`}(e,t,r));let l=c(e),i=l.exports;L[e]=l;let s=new o(l,i);try{n(s,l,i)}catch(e){throw l.error=e,e}return l.namespaceObject&&l.exports!==l.namespaceObject&&d(l.exports,l.namespaceObject),l}function I(r){let n,o=function(e){if("string"==typeof e)return e;let r=decodeURIComponent(("u">typeof TURBOPACK_NEXT_CHUNK_URLS?TURBOPACK_NEXT_CHUNK_URLS.pop():e.getAttribute("src")).replace(/[?#].*$/,""));return r.startsWith(t)?r.slice(t.length):r}(r[0]);return 2===r.length?n=r[1]:(n=void 0,!function(e,t,r,n){let o=1;for(;o<e.length;){let t=e[o],n=o+1;for(;n<e.length&&"function"!=typeof e[n];)n++;if(n===e.length)throw Error("malformed chunk format, expected a factory function");if(!r.has(t)){let l=e[n];for(Object.defineProperty(l,"name",{value:"module evaluation"});o<n;o++)t=e[o],r.set(t,l)}o=n+1}}(r,0,v)),e.registerChunk(o,n)}let W=new Map;function H(e){let t=W.get(e);if(!t){let r,n;t={resolved:!1,loadingStarted:!1,promise:new Promise((e,t)=>{r=e,n=t}),resolve:()=>{t.resolved=!0,r()},reject:n},W.set(e,t)}return t}e={async registerChunk(e,t){if(H(K(e)).resolve(),null!=t){for(let e of t.otherChunks)H(K("string"==typeof e?e:e.path));if(await Promise.all(t.otherChunks.map(t=>S(0,e,t))),t.runtimeModuleIds.length>0)for(let r of t.runtimeModuleIds)!function(e,t){let r=L[t];if(r){if(r.error)throw r.error;return}q(t,_.Runtime,e)}(e,r)}},loadChunkCached:(e,t)=>(function(e,t){let r=H(t);if(r.loadingStarted)return r.promise;if(e===_.Runtime)return r.loadingStarted=!0,M(t)&&r.resolve(),r.promise;if("function"==typeof importScripts)if(M(t));else if(x.test(t))self.TURBOPACK_NEXT_CHUNK_URLS.push(t),importScripts(TURBOPACK_WORKER_LOCATION+t);else throw Error(`can't infer type of chunk from URL ${t} in worker`);else{let e=decodeURI(t);if(M(t))if(document.querySelectorAll(`link[rel=stylesheet][href="${t}"],link[rel=stylesheet][href^="${t}?"],link[rel=stylesheet][href="${e}"],link[rel=stylesheet][href^="${e}?"]`).length>0)r.resolve();else{let e=document.createElement("link");e.rel="stylesheet",e.href=t,e.onerror=()=>{r.reject()},e.onload=()=>{r.resolve()},document.head.appendChild(e)}else if(x.test(t)){let n=document.querySelectorAll(`script[src="${t}"],script[src^="${t}?"],script[src="${e}"],script[src^="${e}?"]`);if(n.length>0)for(let e of Array.from(n))e.addEventListener("error",()=>{r.reject()});else{let e=document.createElement("script");e.src=t,e.onerror=()=>{r.reject()},document.head.appendChild(e)}}else throw Error(`can't infer type of chunk from URL ${t}`)}return r.loadingStarted=!0,r.promise})(e,t),async loadWebAssembly(e,t,r,n,o){let l=fetch(K(r)),{instance:i}=await WebAssembly.instantiateStreaming(l,o);return i.exports},async loadWebAssemblyModule(e,t,r,n){let o=fetch(K(r));return await WebAssembly.compileStreaming(o)}};let F=globalThis.TURBOPACK;globalThis.TURBOPACK={push:I},F.forEach(I)})();
package/LICENSE ADDED
@@ -0,0 +1,21 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2025 quanghoangf
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy
6
+ of this software and associated documentation files (the "Software"), to deal
7
+ in the Software without restriction, including without limitation the rights
8
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
+ copies of the Software, and to permit persons to whom the Software is
10
+ furnished to do so, subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
+ SOFTWARE.
package/README.md CHANGED
@@ -1,167 +1,193 @@
1
- # VibeDoc
2
-
3
- **Local-first project intelligence for AI-assisted development.**
4
-
5
- A kanban board + docs viewer + MCP server — all in one process.
6
- When your AI moves a task, you see it in the browser — live.
7
-
8
- ```
9
- http://localhost:3000 ← your browser (kanban, docs, activity, memory)
10
- http://localhost:3000/api/mcp AI agent connects here via MCP
11
- ```
12
-
13
- ---
14
-
15
- ## Quick start
16
-
17
- ```bash
18
- # Run from inside your project directory
19
- cd your-project
20
- npx vibedoc
21
- ```
22
-
23
- That's it. VibeDoc uses the current directory as the project root and opens at `http://localhost:3000`.
24
-
25
- VibeDoc automatically finds a free port starting from 3000, so it won't conflict with other running services.
26
-
27
- ### Options
28
-
29
- ```bash
30
- # Point at a different project
31
- VIBEDOC_ROOT=/path/to/project npx vibedoc
32
-
33
- # Pin to a specific port
34
- PORT=4000 npx vibedoc
35
- ```
36
-
37
- ---
38
-
39
- ## Connect your AI agent
40
-
41
- ### Claude Code (`~/.claude/claude_desktop_config.json`)
42
- ```json
43
- {
44
- "mcpServers": {
45
- "vibedoc": {
46
- "url": "http://localhost:3000/api/mcp"
47
- }
48
- }
49
- }
50
- ```
51
-
52
- ### Cursor (`.cursor/mcp.json` in project root)
53
- ```json
54
- {
55
- "mcpServers": {
56
- "vibedoc": {
57
- "url": "http://localhost:3000/api/mcp"
58
- }
59
- }
60
- }
61
- ```
62
-
63
- ### Windsurf (`~/.codeium/windsurf/mcp_config.json`)
64
- ```json
65
- {
66
- "mcpServers": {
67
- "vibedoc": {
68
- "url": "http://localhost:3000/api/mcp"
69
- }
70
- }
71
- }
72
- ```
73
-
74
- ---
75
-
76
- ## What the AI can do
77
-
78
- | Tool | Effect |
79
- |------|--------|
80
- | `vibedoc_read_memory` | Reads MEMORY.md. Also triggers "session start" in activity feed. |
81
- | `vibedoc_get_status` | Board snapshot — active tasks, blockers, doc count |
82
- | `vibedoc_list_tasks` | Full kanban board |
83
- | `vibedoc_get_task` | Read a specific task with scope + criteria |
84
- | `vibedoc_update_task` | Move task status → **you see it live in browser** |
85
- | `vibedoc_read_doc` | Load any doc: `"CLAUDE"`, `"HLD"`, `"user-service/API"` |
86
- | `vibedoc_list_docs` | Discover all docs by section |
87
- | `vibedoc_search_docs` | Full-text search across all docs |
88
- | `vibedoc_log_decision` | Write a new ADR → appears in docs immediately |
89
- | `vibedoc_update_memory` | Write end-of-session summary → updates Memory tab |
90
-
91
- ---
92
-
93
- ## Recommended CLAUDE.md snippet
94
-
95
- Add this to your project's `CLAUDE.md` to guide your AI agent:
96
-
97
- ```markdown
98
- ## Session protocol
99
-
100
- **Start of session:**
101
- 1. Call `vibedoc_read_memory` read handoff from last session
102
- 2. Call `vibedoc_get_status` check what's active and blocked
103
-
104
- **Before working on a task:**
105
- - Call `vibedoc_get_task <id>` — read full spec and acceptance criteria
106
- - Call `vibedoc_update_task <id> in-progress`
107
-
108
- **When making architectural decisions:**
109
- - Call `vibedoc_log_decision` record it as an ADR
110
-
111
- **End of session:**
112
- - Call `vibedoc_update_task` for each task touched
113
- - Call `vibedoc_update_memory` with full summary and handoff note
114
- ```
115
-
116
- ---
117
-
118
- ## Project structure
119
-
120
- VibeDoc reads from your project. Create these files to get the most out of it:
121
-
122
- ```
123
- your-project/
124
- ├── CLAUDE.md ← agent instructions
125
- ├── docs/architecture/
126
- │ ├── 01-overview/
127
- │ ├── 02-high-level-design/
128
- │ │ └── HLD.md
129
- │ ├── 03-services/
130
- │ │ └── user-service/
131
- │ │ ├── OVERVIEW.md
132
- │ │ ├── API.md
133
- │ │ └── EVENTS.md
134
- │ └── decisions/
135
- │ └── ADR-001-*.md
136
- ├── plans/tasks/
137
- │ ├── T001-scaffold.md ← **Status:** 📋 Ready
138
- │ └── T002-auth.md
139
- └── memory/
140
- └── MEMORY.md
141
- ```
142
-
143
- None of these are required — VibeDoc will show what it finds.
144
-
145
- ---
146
-
147
- ## Multi-project
148
-
149
- VibeDoc auto-discovers sibling directories that contain `CLAUDE.md` or `docs/architecture/`.
150
- Switch between projects using the dropdown in the top bar.
151
-
152
- ---
153
-
154
- ## Activity log
155
-
156
- All AI and human actions are appended to `.vibedoc-activity.json` in your project root.
157
- The Activity tab shows the last 30 events in real time via SSE.
158
-
159
- ---
160
-
161
- ## Tech stack
162
-
163
- - **Next.js 14** (App Router)
164
- - **Tailwind CSS** — dark theme, no component library
165
- - **SSE** (`/api/events`) — real-time browser updates
166
- - **MCP over HTTP** (`/api/mcp`) — JSON-RPC 2.0
167
- - **File system** — reads your actual repo, no database
1
+ # VibeDoc
2
+
3
+ **Local-first project intelligence for AI-assisted development.**
4
+
5
+ [![npm](https://img.shields.io/npm/v/vibedoc)](https://www.npmjs.com/package/vibedoc)
6
+ [![node](https://img.shields.io/node/v/vibedoc)](https://nodejs.org)
7
+ [![license](https://img.shields.io/npm/l/vibedoc)](./LICENSE)
8
+
9
+ A kanban board + docs viewer + MCP server — all in one process, zero config.
10
+ Point your AI agent at it. Watch tasks move in real time.
11
+
12
+ ```
13
+ http://localhost:<port> ← your browser (kanban, docs, activity, memory)
14
+ http://localhost:<port>/api/mcp ← AI agent connects here via MCP
15
+ ```
16
+
17
+ ---
18
+
19
+ ## Quick start
20
+
21
+ ```bash
22
+ cd your-project
23
+ npx vibedoc
24
+ ```
25
+
26
+ VibeDoc picks a free port automatically and opens the setup page in your browser.
27
+
28
+ ### Options
29
+
30
+ ```bash
31
+ # Pin to a specific port
32
+ npx vibedoc --port 3333
33
+
34
+ # Point at a different project
35
+ VIBEDOC_ROOT=/path/to/project npx vibedoc
36
+ ```
37
+
38
+ ---
39
+
40
+ ## What you get
41
+
42
+ - **Kanban board** — tasks live in `plans/tasks/*.md`, rendered as draggable cards
43
+ - **Docs viewer** — browse and edit every markdown file in `docs/`
44
+ - **Live activity feed** — every AI action appears instantly via SSE, no polling
45
+ - **Memory tab** — persistent `MEMORY.md` for session handoffs
46
+ - **File explorer** — treemap/tree/heatmap views of your docs with AI-generated descriptions
47
+ - **MCP server** — 10 tools your AI agent can call to read docs, move tasks, write ADRs
48
+
49
+ ---
50
+
51
+ ## Connect your AI agent
52
+
53
+ ### Claude Code (`~/.claude/claude_desktop_config.json`)
54
+ ```json
55
+ {
56
+ "mcpServers": {
57
+ "vibedoc": {
58
+ "url": "http://localhost:<port>/api/mcp"
59
+ }
60
+ }
61
+ }
62
+ ```
63
+
64
+ ### Cursor (`.cursor/mcp.json` in project root)
65
+ ```json
66
+ {
67
+ "mcpServers": {
68
+ "vibedoc": {
69
+ "url": "http://localhost:<port>/api/mcp"
70
+ }
71
+ }
72
+ }
73
+ ```
74
+
75
+ ### Windsurf (`~/.codeium/windsurf/mcp_config.json`)
76
+ ```json
77
+ {
78
+ "mcpServers": {
79
+ "vibedoc": {
80
+ "url": "http://localhost:<port>/api/mcp"
81
+ }
82
+ }
83
+ }
84
+ ```
85
+
86
+ > The port is shown in the terminal when VibeDoc starts. Use `--port` to pin it.
87
+
88
+ ---
89
+
90
+ ## What the AI can do
91
+
92
+ | Tool | Effect |
93
+ |------|--------|
94
+ | `vibedoc_read_memory` | Reads MEMORY.md — also triggers "session start" in the activity feed |
95
+ | `vibedoc_get_status` | Board snapshot active tasks, blockers, doc count |
96
+ | `vibedoc_list_tasks` | Full kanban board |
97
+ | `vibedoc_get_task` | Read a specific task with scope and acceptance criteria |
98
+ | `vibedoc_update_task` | Move task status → **you see it live in the browser** |
99
+ | `vibedoc_read_doc` | Load any doc: `"CLAUDE"`, `"HLD"`, `"user-service/API"` |
100
+ | `vibedoc_list_docs` | Discover all docs by section |
101
+ | `vibedoc_search_docs` | Full-text search across all docs |
102
+ | `vibedoc_log_decision` | Write a new ADR → appears in docs immediately |
103
+ | `vibedoc_update_memory` | Write end-of-session summary → updates Memory tab |
104
+
105
+ ---
106
+
107
+ ## Recommended CLAUDE.md snippet
108
+
109
+ Add this to your project's `CLAUDE.md` to guide your AI agent:
110
+
111
+ ```markdown
112
+ ## Session protocol
113
+
114
+ **Start of session:**
115
+ 1. Call `vibedoc_read_memory` — read handoff from last session
116
+ 2. Call `vibedoc_get_status` — check what's active and blocked
117
+
118
+ **Before working on a task:**
119
+ - Call `vibedoc_get_task <id>` — read full spec and acceptance criteria
120
+ - Call `vibedoc_update_task <id> in-progress`
121
+
122
+ **When making architectural decisions:**
123
+ - Call `vibedoc_log_decision` — record it as an ADR
124
+
125
+ **End of session:**
126
+ - Call `vibedoc_update_task` for each task touched
127
+ - Call `vibedoc_update_memory` with full summary and handoff note
128
+ ```
129
+
130
+ ---
131
+
132
+ ## Project structure
133
+
134
+ VibeDoc reads from your project directory. None of these files are required — VibeDoc shows what it finds.
135
+
136
+ ```
137
+ your-project/
138
+ ├── CLAUDE.md ← agent instructions
139
+ ├── docs/
140
+ │ ├── architecture/
141
+ │ │ ├── 01-overview/
142
+ │ │ ├── 02-high-level-design/
143
+ │ │ │ └── HLD.md
144
+ │ │ ├── 03-services/
145
+ │ │ │ └── user-service/
146
+ │ │ │ ├── OVERVIEW.md
147
+ │ │ │ ├── API.md
148
+ │ │ │ └── EVENTS.md
149
+ │ │ └── decisions/
150
+ │ │ └── ADR-001-*.md
151
+ ├── plans/tasks/
152
+ │ ├── T001-scaffold.md ← **Status:** 📋 Ready
153
+ │ └── T002-auth.md
154
+ └── memory/
155
+ └── MEMORY.md
156
+ ```
157
+
158
+ ---
159
+
160
+ ## Multi-project
161
+
162
+ VibeDoc auto-discovers sibling directories that contain `CLAUDE.md` or `docs/architecture/`.
163
+ Switch between projects using the dropdown in the top bar.
164
+
165
+ ---
166
+
167
+ ## Activity log
168
+
169
+ Every AI and human action is appended to `.vibedoc-activity.json` in your project root.
170
+ The Activity tab shows the last 30 events in real time via SSE.
171
+
172
+ ---
173
+
174
+ ## Requirements
175
+
176
+ - **Node.js 18+**
177
+ - No database, no cloud, no accounts — reads your local file system
178
+
179
+ ---
180
+
181
+ ## Tech stack
182
+
183
+ - **Next.js** (App Router)
184
+ - **Tailwind CSS** — dark theme
185
+ - **SSE** (`/api/events`) — real-time browser updates
186
+ - **MCP over HTTP** (`/api/mcp`) — JSON-RPC 2.0
187
+ - **File system** — reads your actual repo, no database
188
+
189
+ ---
190
+
191
+ ## License
192
+
193
+ MIT
package/bin/vibedoc.js CHANGED
@@ -4,6 +4,7 @@
4
4
  const { spawn, spawnSync } = require('child_process');
5
5
  const path = require('path');
6
6
  const net = require('net');
7
+ const fs = require('fs');
7
8
 
8
9
  const PKG_DIR = path.resolve(__dirname, '..');
9
10
  const VIBEDOC_ROOT = process.env.VIBEDOC_ROOT || process.cwd();
@@ -35,6 +36,12 @@ async function main() {
35
36
  console.log(`[vibedoc] App: http://localhost:${port}`);
36
37
  console.log(`[vibedoc] WS: ws://localhost:${wsPort}`);
37
38
 
39
+ // Write .env.local so Next.js production server reliably picks up VIBEDOC_ROOT
40
+ // (spawn env alone can be dropped by Next.js's internal env loading in some setups)
41
+ const envLocalPath = path.join(PKG_DIR, '.env.local');
42
+ fs.writeFileSync(envLocalPath, `VIBEDOC_ROOT=${VIBEDOC_ROOT}\nPORT=${port}\nWS_PORT=${wsPort}\n`);
43
+ process.on('exit', () => { try { fs.unlinkSync(envLocalPath); } catch {} });
44
+
38
45
  const env = { ...process.env, VIBEDOC_ROOT, PORT: String(port), WS_PORT: String(wsPort) };
39
46
 
40
47
  const next = spawn(
package/package.json CHANGED
@@ -1,7 +1,8 @@
1
1
  {
2
2
  "name": "vibedoc",
3
- "version": "1.2.1",
3
+ "version": "1.4.0",
4
4
  "description": "Local-first project intelligence for AI-assisted development. Web UI + MCP server in one.",
5
+ "license": "MIT",
5
6
  "bin": {
6
7
  "vibedoc": "./bin/vibedoc.mjs"
7
8
  },
@@ -11,6 +12,8 @@
11
12
  },
12
13
  "files": [
13
14
  "bin/",
15
+ "LICENSE",
16
+ "README.md",
14
17
  ".next/BUILD_ID",
15
18
  ".next/build-manifest.json",
16
19
  ".next/app-build-manifest.json",
@@ -1,3 +0,0 @@
1
- module.exports=[70406,(e,r,t)=>{r.exports=e.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},93695,(e,r,t)=>{r.exports=e.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},14747,(e,r,t)=>{r.exports=e.x("path",()=>require("path"))},18622,(e,r,t)=>{r.exports=e.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(e,r,t)=>{r.exports=e.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},98768,e=>{"use strict";class r{listeners=new Set;subscribe(e){return this.listeners.add(e),()=>this.listeners.delete(e)}emit(e){this.listeners.forEach(r=>{try{r(e)}catch{}})}}let t=globalThis,s=t.vibedocBus??(t.vibedocBus=new r);function n(e,r){s.emit({type:e,payload:r,ts:new Date().toISOString()})}e.s(["bus",0,s,"emitUpdate",()=>n])},60830,e=>{e.v(r=>Promise.all(["server/chunks/39977_@anthropic-ai_sdk_index_mjs_b0ee562f._.js"].map(r=>e.l(r))).then(()=>r(48394)))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__dfd36dc0._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},50645,a=>{a.n(a.i(27572))},1126,a=>{a.n(a.i(84668))},41429,a=>{a.n(a.i(32012))},33828,a=>{a.n(a.i(80868))},41254,a=>{a.n(a.i(30328))},93240,a=>{a.n(a.i(85784))},45353,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(15098).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/src/app/(app)/settings/page.tsx <module evaluation> from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(app)/settings/page.tsx <module evaluation>","default")},55272,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(15098).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/src/app/(app)/settings/page.tsx from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(app)/settings/page.tsx","default")},97261,a=>{"use strict";a.i(45353);var b=a.i(55272);a.n(b)}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__38711845._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},50645,a=>{a.n(a.i(27572))},1126,a=>{a.n(a.i(84668))},41429,a=>{a.n(a.i(32012))},33828,a=>{a.n(a.i(80868))},41254,a=>{a.n(a.i(30328))},93240,a=>{a.n(a.i(85784))},83196,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(15098).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/src/app/(app)/board/page.tsx <module evaluation> from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(app)/board/page.tsx <module evaluation>","default")},28791,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(15098).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/src/app/(app)/board/page.tsx from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(app)/board/page.tsx","default")},30276,a=>{"use strict";a.i(83196);var b=a.i(28791);a.n(b)}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__4cd0cfe5._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[70406,(a,b,c)=>{b.exports=a.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},14747,(a,b,c)=>{b.exports=a.x("path",()=>require("path"))},24361,(a,b,c)=>{b.exports=a.x("util",()=>require("util"))},20635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},43285,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/dynamic-access-async-storage.external.js",()=>require("next/dist/server/app-render/dynamic-access-async-storage.external.js"))},66515,(a,b,c)=>{"use strict";b.exports=a.r(18622)},15098,(a,b,c)=>{"use strict";b.exports=a.r(66515).vendored["react-rsc"].ReactServerDOMTurbopackServer},89138,(a,b,c)=>{"use strict";b.exports=a.r(66515).vendored["react-rsc"].ReactJsxRuntime},12649,(a,b,c)=>{"use strict";b.exports=a.r(66515).vendored["react-rsc"].React},38341,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(15098);a.n(d("[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/global-error.js <module evaluation>"))},57677,(a,b,c)=>{let{createClientModuleProxy:d}=a.r(15098);a.n(d("[project]/node_modules/.pnpm/next@16.1.6_@babel+core@7.29.0_react-dom@19.2.4_react@19.2.4__react@19.2.4/node_modules/next/dist/client/components/builtin/global-error.js"))},30328,a=>{"use strict";a.i(38341);var b=a.i(57677);a.n(b)}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__599128b8._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},50645,a=>{a.n(a.i(27572))},1126,a=>{a.n(a.i(84668))},41429,a=>{a.n(a.i(32012))},33828,a=>{a.n(a.i(80868))},41254,a=>{a.n(a.i(30328))},93240,a=>{a.n(a.i(85784))},8102,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(15098).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/src/app/(app)/explorer/page.tsx <module evaluation> from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(app)/explorer/page.tsx <module evaluation>","default")},17313,a=>{"use strict";a.s(["default",()=>b]);let b=(0,a.i(15098).registerClientReference)(function(){throw Error("Attempted to call the default export of [project]/src/app/(app)/explorer/page.tsx from the server, but it's on the client. It's not possible to invoke a client function from the server, it can only be rendered as a Component or passed to props of a Client Component.")},"[project]/src/app/(app)/explorer/page.tsx","default")},57765,a=>{"use strict";a.i(8102);var b=a.i(17313);a.n(b)}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__7ccd69b2._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[70406,(a,b,c)=>{b.exports=a.x("next/dist/compiled/@opentelemetry/api",()=>require("next/dist/compiled/@opentelemetry/api"))},18622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},24725,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/after-task-async-storage.external.js",()=>require("next/dist/server/app-render/after-task-async-storage.external.js"))},14747,(a,b,c)=>{b.exports=a.x("path",()=>require("path"))},24361,(a,b,c)=>{b.exports=a.x("util",()=>require("util"))},20635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},43285,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/dynamic-access-async-storage.external.js",()=>require("next/dist/server/app-render/dynamic-access-async-storage.external.js"))},66515,(a,b,c)=>{"use strict";b.exports=a.r(18622)},15098,(a,b,c)=>{"use strict";b.exports=a.r(66515).vendored["react-rsc"].ReactServerDOMTurbopackServer},89138,(a,b,c)=>{"use strict";b.exports=a.r(66515).vendored["react-rsc"].ReactJsxRuntime},12649,(a,b,c)=>{"use strict";b.exports=a.r(66515).vendored["react-rsc"].React}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__7de63c62._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[93695,(a,b,c)=>{b.exports=a.x("next/dist/shared/lib/no-fallback-error.external.js",()=>require("next/dist/shared/lib/no-fallback-error.external.js"))},50645,a=>{a.n(a.i(27572))},1126,a=>{a.n(a.i(84668))},41429,a=>{a.n(a.i(32012))},33828,a=>{a.n(a.i(80868))},41254,a=>{a.n(a.i(30328))}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__8edfd41f._.js.map
@@ -1,3 +0,0 @@
1
- module.exports=[60940,(a,b,c)=>{"use strict";b.exports=a.r(80146).vendored["react-ssr"].React},91145,(a,b,c)=>{"use strict";b.exports=a.r(80146).vendored.contexts.AppRouterContext},50635,(a,b,c)=>{"use strict";b.exports=a.r(80146).vendored.contexts.HooksClientContext},96090,(a,b,c)=>{"use strict";b.exports=a.r(80146).vendored.contexts.ServerInsertedHtml},18622,(a,b,c)=>{b.exports=a.x("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js",()=>require("next/dist/compiled/next-server/app-page-turbo.runtime.prod.js"))},56704,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-async-storage.external.js",()=>require("next/dist/server/app-render/work-async-storage.external.js"))},32319,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/work-unit-async-storage.external.js",()=>require("next/dist/server/app-render/work-unit-async-storage.external.js"))},20635,(a,b,c)=>{b.exports=a.x("next/dist/server/app-render/action-async-storage.external.js",()=>require("next/dist/server/app-render/action-async-storage.external.js"))},80146,(a,b,c)=>{"use strict";b.exports=a.r(18622)},9637,(a,b,c)=>{"use strict";b.exports=a.r(80146).vendored["react-ssr"].ReactJsxRuntime},36439,(a,b,c)=>{"use strict";b.exports=a.r(80146).vendored["react-ssr"].ReactDOM},30618,(a,b,c)=>{"use strict";b.exports=a.r(80146).vendored["react-ssr"].ReactServerDOMTurbopackClient},80303,a=>{"use strict";var b=a.i(60940);function c(a,b){if("function"==typeof a)return a(b);null!=a&&(a.current=b)}function d(...a){return b=>{let d=!1,e=a.map(a=>{let e=c(a,b);return d||"function"!=typeof e||(d=!0),e});if(d)return()=>{for(let b=0;b<e.length;b++){let d=e[b];"function"==typeof d?d():c(a[b],null)}}}}function e(...a){return b.useCallback(d(...a),a)}a.s(["composeRefs",()=>d,"useComposedRefs",()=>e])},42261,a=>{"use strict";var b=a.i(39337);let c=a=>"boolean"==typeof a?`${a}`:0===a?"0":a,d=b.clsx;a.s(["cva",0,(a,b)=>e=>{var f;if((null==b?void 0:b.variants)==null)return d(a,null==e?void 0:e.class,null==e?void 0:e.className);let{variants:g,defaultVariants:h}=b,i=Object.keys(g).map(a=>{let b=null==e?void 0:e[a],d=null==h?void 0:h[a];if(null===b)return null;let f=c(b)||c(d);return g[a][f]}),j=e&&Object.entries(e).reduce((a,b)=>{let[c,d]=b;return void 0===d||(a[c]=d),a},{});return d(a,i,null==b||null==(f=b.compoundVariants)?void 0:f.reduce((a,b)=>{let{class:c,className:d,...e}=b;return Object.entries(e).every(a=>{let[b,c]=a;return Array.isArray(c)?c.includes({...h,...j}[b]):({...h,...j})[b]===c})?[...a,c,d]:a},[]),null==e?void 0:e.class,null==e?void 0:e.className)}])},86304,a=>{"use strict";var b=a.i(9637),c=a.i(42261),d=a.i(68114);let e=(0,c.cva)("inline-flex items-center rounded-full border border-slate-200 px-2.5 py-0.5 text-xs font-semibold transition-colors focus:outline-none focus:ring-2 focus:ring-slate-950 focus:ring-offset-2 dark:border-slate-800 dark:focus:ring-slate-300",{variants:{variant:{default:"border-transparent bg-slate-900 text-slate-50 hover:bg-slate-900/80 dark:bg-slate-50 dark:text-slate-900 dark:hover:bg-slate-50/80",secondary:"border-transparent bg-slate-100 text-slate-900 hover:bg-slate-100/80 dark:bg-slate-800 dark:text-slate-50 dark:hover:bg-slate-800/80",destructive:"border-transparent bg-red-500 text-slate-50 hover:bg-red-500/80 dark:bg-red-900 dark:text-slate-50 dark:hover:bg-red-900/80",outline:"text-slate-950 dark:text-slate-50"}},defaultVariants:{variant:"default"}});function f({className:a,variant:c,...f}){return(0,b.jsx)("div",{className:(0,d.cn)(e({variant:c}),a),...f})}a.s(["Badge",()=>f])},35194,a=>{"use strict";var b=a.i(60940),c=a.i(80303),d=a.i(9637),e=Symbol.for("react.lazy"),f=b[" use ".trim().toString()];function g(a){var b;return null!=a&&"object"==typeof a&&"$$typeof"in a&&a.$$typeof===e&&"_payload"in a&&"object"==typeof(b=a._payload)&&null!==b&&"then"in b}function h(a){var e;let h,i=(e=a,(h=b.forwardRef((a,d)=>{let{children:e,...h}=a;if(g(e)&&"function"==typeof f&&(e=f(e._payload)),b.isValidElement(e)){var i;let a,f,g=(i=e,(f=(a=Object.getOwnPropertyDescriptor(i.props,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?i.ref:(f=(a=Object.getOwnPropertyDescriptor(i,"ref")?.get)&&"isReactWarning"in a&&a.isReactWarning)?i.props.ref:i.props.ref||i.ref),j=function(a,b){let c={...b};for(let d in b){let e=a[d],f=b[d];/^on[A-Z]/.test(d)?e&&f?c[d]=(...a)=>{let b=f(...a);return e(...a),b}:e&&(c[d]=e):"style"===d?c[d]={...e,...f}:"className"===d&&(c[d]=[e,f].filter(Boolean).join(" "))}return{...a,...c}}(h,e.props);return e.type!==b.Fragment&&(j.ref=d?(0,c.composeRefs)(d,g):g),b.cloneElement(e,j)}return b.Children.count(e)>1?b.Children.only(null):null})).displayName=`${e}.SlotClone`,h),j=b.forwardRef((a,c)=>{let{children:e,...h}=a;g(e)&&"function"==typeof f&&(e=f(e._payload));let j=b.Children.toArray(e),l=j.find(k);if(l){let a=l.props.children,e=j.map(c=>c!==l?c:b.Children.count(a)>1?b.Children.only(null):b.isValidElement(a)?a.props.children:null);return(0,d.jsx)(i,{...h,ref:c,children:b.isValidElement(a)?b.cloneElement(a,void 0,e):null})}return(0,d.jsx)(i,{...h,ref:c,children:e})});return j.displayName=`${a}.Slot`,j}var i=h("Slot"),j=Symbol("radix.slottable");function k(a){return b.isValidElement(a)&&"function"==typeof a.type&&"__radixId"in a.type&&a.type.__radixId===j}a.s(["Slot",()=>i,"createSlot",()=>h])},99570,a=>{"use strict";var b=a.i(9637),c=a.i(60940),d=a.i(35194),e=a.i(42261),f=a.i(68114);let g=(0,e.cva)("inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-md text-sm font-medium ring-offset-white transition-colors focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-950 focus-visible:ring-offset-2 disabled:pointer-events-none disabled:opacity-50 [&_svg]:pointer-events-none [&_svg]:size-4 [&_svg]:shrink-0 dark:ring-offset-slate-950 dark:focus-visible:ring-slate-300",{variants:{variant:{default:"bg-slate-900 text-slate-50 hover:bg-slate-900/90 dark:bg-slate-50 dark:text-slate-900 dark:hover:bg-slate-50/90",destructive:"bg-red-500 text-slate-50 hover:bg-red-500/90 dark:bg-red-900 dark:text-slate-50 dark:hover:bg-red-900/90",outline:"border border-slate-200 bg-white hover:bg-slate-100 hover:text-slate-900 dark:border-slate-800 dark:bg-slate-950 dark:hover:bg-slate-800 dark:hover:text-slate-50",secondary:"bg-slate-100 text-slate-900 hover:bg-slate-100/80 dark:bg-slate-800 dark:text-slate-50 dark:hover:bg-slate-800/80",ghost:"hover:bg-slate-100 hover:text-slate-900 dark:hover:bg-slate-800 dark:hover:text-slate-50",link:"text-slate-900 underline-offset-4 hover:underline dark:text-slate-50"},size:{default:"h-10 px-4 py-2",sm:"h-9 rounded-md px-3",lg:"h-11 rounded-md px-8",icon:"h-10 w-10"}},defaultVariants:{variant:"default",size:"default"}}),h=c.forwardRef(({className:a,variant:c,size:e,asChild:h=!1,...i},j)=>{let k=h?d.Slot:"button";return(0,b.jsx)(k,{className:(0,f.cn)(g({variant:c,size:e,className:a})),ref:j,...i})});h.displayName="Button",a.s(["Button",()=>h])},15479,(a,b,c)=>{"use strict";Object.defineProperty(c,"__esModule",{value:!0});var d={getDeploymentId:function(){return f},getDeploymentIdQueryOrEmptyString:function(){return g}};for(var e in d)Object.defineProperty(c,e,{enumerable:!0,get:d[e]});function f(){return!1}function g(){return""}},39935,63076,a=>{"use strict";var b=a.i(33214);let c=(0,b.default)("zap",[["path",{d:"M4 14a1 1 0 0 1-.78-1.63l9.9-10.2a.5.5 0 0 1 .86.46l-1.92 6.02A1 1 0 0 0 13 10h7a1 1 0 0 1 .78 1.63l-9.9 10.2a.5.5 0 0 1-.86-.46l1.92-6.02A1 1 0 0 0 11 14z",key:"1xq2db"}]]);a.s(["Zap",()=>c],39935);let d=(0,b.default)("settings",[["path",{d:"M9.671 4.136a2.34 2.34 0 0 1 4.659 0 2.34 2.34 0 0 0 3.319 1.915 2.34 2.34 0 0 1 2.33 4.033 2.34 2.34 0 0 0 0 3.831 2.34 2.34 0 0 1-2.33 4.033 2.34 2.34 0 0 0-3.319 1.915 2.34 2.34 0 0 1-4.659 0 2.34 2.34 0 0 0-3.32-1.915 2.34 2.34 0 0 1-2.33-4.033 2.34 2.34 0 0 0 0-3.831A2.34 2.34 0 0 1 6.35 6.051a2.34 2.34 0 0 0 3.319-1.915",key:"1i5ecw"}],["circle",{cx:"12",cy:"12",r:"3",key:"1v7zrd"}]]);a.s(["Settings",()=>d],63076)},22820,a=>{"use strict";let b=(0,a.i(33214).default)("chevron-right",[["path",{d:"m9 18 6-6-6-6",key:"mthhwq"}]]);a.s(["ChevronRight",()=>b],22820)},14879,a=>{"use strict";let b=(0,a.i(33214).default)("file-text",[["path",{d:"M6 22a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h8a2.4 2.4 0 0 1 1.704.706l3.588 3.588A2.4 2.4 0 0 1 20 8v12a2 2 0 0 1-2 2z",key:"1oefj6"}],["path",{d:"M14 2v5a1 1 0 0 0 1 1h5",key:"wfsgrz"}],["path",{d:"M10 9H8",key:"b1mrlr"}],["path",{d:"M16 13H8",key:"t4e002"}],["path",{d:"M16 17H8",key:"z1uh3a"}]]);a.s(["FileText",()=>b],14879)},33214,66718,a=>{"use strict";var b=a.i(60940);let c=(...a)=>a.filter((a,b,c)=>!!a&&""!==a.trim()&&c.indexOf(a)===b).join(" ").trim(),d=a=>{let b=a.replace(/^([A-Z])|[\s-_]+(\w)/g,(a,b,c)=>c?c.toUpperCase():b.toLowerCase());return b.charAt(0).toUpperCase()+b.slice(1)};var e={xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"};let f=(0,b.forwardRef)(({color:a="currentColor",size:d=24,strokeWidth:f=2,absoluteStrokeWidth:g,className:h="",children:i,iconNode:j,...k},l)=>(0,b.createElement)("svg",{ref:l,...e,width:d,height:d,stroke:a,strokeWidth:g?24*Number(f)/Number(d):f,className:c("lucide",h),...!i&&!(a=>{for(let b in a)if(b.startsWith("aria-")||"role"===b||"title"===b)return!0;return!1})(k)&&{"aria-hidden":"true"},...k},[...j.map(([a,c])=>(0,b.createElement)(a,c)),...Array.isArray(i)?i:[i]])),g=(a,e)=>{let g=(0,b.forwardRef)(({className:g,...h},i)=>(0,b.createElement)(f,{ref:i,iconNode:e,className:c(`lucide-${d(a).replace(/([a-z0-9])([A-Z])/g,"$1-$2").toLowerCase()}`,`lucide-${a}`,g),...h}));return g.displayName=d(a),g};a.s(["default",()=>g],33214);var h=a.i(9637),i=a.i(68114);let j=b.forwardRef(({className:a,type:b,...c},d)=>(0,h.jsx)("input",{type:b,className:(0,i.cn)("flex h-10 w-full rounded-md border border-slate-200 bg-white px-3 py-2 text-base ring-offset-white file:border-0 file:bg-transparent file:text-sm file:font-medium file:text-slate-950 placeholder:text-slate-500 focus-visible:outline-none focus-visible:ring-2 focus-visible:ring-slate-950 focus-visible:ring-offset-2 disabled:cursor-not-allowed disabled:opacity-50 md:text-sm dark:border-slate-800 dark:bg-slate-950 dark:ring-offset-slate-950 dark:file:text-slate-50 dark:placeholder:text-slate-400 dark:focus-visible:ring-slate-300",a),ref:d,...c}));j.displayName="Input",a.s(["Input",()=>j],66718)},39863,16502,a=>{"use strict";var b=a.i(33214);let c=(0,b.default)("check",[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]]);a.s(["Check",()=>c],39863);let d=(0,b.default)("x",[["path",{d:"M18 6 6 18",key:"1bl5f8"}],["path",{d:"m6 6 12 12",key:"d8bk6v"}]]);a.s(["X",()=>d],16502)},13812,a=>{"use strict";let b=(0,a.i(33214).default)("book-open",[["path",{d:"M12 7v14",key:"1akyts"}],["path",{d:"M3 18a1 1 0 0 1-1-1V4a1 1 0 0 1 1-1h5a4 4 0 0 1 4 4 4 4 0 0 1 4-4h5a1 1 0 0 1 1 1v13a1 1 0 0 1-1 1h-6a3 3 0 0 0-3 3 3 3 0 0 0-3-3z",key:"ruj8y"}]]);a.s(["BookOpen",()=>b],13812)}];
2
-
3
- //# sourceMappingURL=%5Broot-of-the-server%5D__93c50d95._.js.map