constella 0.1.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 (747) hide show
  1. package/.next/BUILD_ID +1 -0
  2. package/.next/app-path-routes-manifest.json +53 -0
  3. package/.next/build-manifest.json +20 -0
  4. package/.next/diagnostics/build-diagnostics.json +6 -0
  5. package/.next/diagnostics/framework.json +1 -0
  6. package/.next/export-marker.json +6 -0
  7. package/.next/images-manifest.json +68 -0
  8. package/.next/next-minimal-server.js.nft.json +1 -0
  9. package/.next/next-server.js.nft.json +1 -0
  10. package/.next/package.json +1 -0
  11. package/.next/prerender-manifest.json +36 -0
  12. package/.next/react-loadable-manifest.json +14 -0
  13. package/.next/required-server-files.js +343 -0
  14. package/.next/required-server-files.json +343 -0
  15. package/.next/routes-manifest.json +362 -0
  16. package/.next/server/app/(app)/activity/page.js +2 -0
  17. package/.next/server/app/(app)/activity/page.js.nft.json +1 -0
  18. package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -0
  19. package/.next/server/app/(app)/agents/[handle]/page.js +18 -0
  20. package/.next/server/app/(app)/agents/[handle]/page.js.nft.json +1 -0
  21. package/.next/server/app/(app)/agents/[handle]/page_client-reference-manifest.js +1 -0
  22. package/.next/server/app/(app)/code/page.js +2 -0
  23. package/.next/server/app/(app)/code/page.js.nft.json +1 -0
  24. package/.next/server/app/(app)/code/page_client-reference-manifest.js +1 -0
  25. package/.next/server/app/(app)/config/page.js +2 -0
  26. package/.next/server/app/(app)/config/page.js.nft.json +1 -0
  27. package/.next/server/app/(app)/config/page_client-reference-manifest.js +1 -0
  28. package/.next/server/app/(app)/costs/page.js +2 -0
  29. package/.next/server/app/(app)/costs/page.js.nft.json +1 -0
  30. package/.next/server/app/(app)/costs/page_client-reference-manifest.js +1 -0
  31. package/.next/server/app/(app)/cron/page.js +2 -0
  32. package/.next/server/app/(app)/cron/page.js.nft.json +1 -0
  33. package/.next/server/app/(app)/cron/page_client-reference-manifest.js +1 -0
  34. package/.next/server/app/(app)/dashboard/page.js +2 -0
  35. package/.next/server/app/(app)/dashboard/page.js.nft.json +1 -0
  36. package/.next/server/app/(app)/dashboard/page_client-reference-manifest.js +1 -0
  37. package/.next/server/app/(app)/docs/[id]/page.js +2 -0
  38. package/.next/server/app/(app)/docs/[id]/page.js.nft.json +1 -0
  39. package/.next/server/app/(app)/docs/[id]/page_client-reference-manifest.js +1 -0
  40. package/.next/server/app/(app)/docs/page.js +2 -0
  41. package/.next/server/app/(app)/docs/page.js.nft.json +1 -0
  42. package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -0
  43. package/.next/server/app/(app)/github/page.js +2 -0
  44. package/.next/server/app/(app)/github/page.js.nft.json +1 -0
  45. package/.next/server/app/(app)/github/page_client-reference-manifest.js +1 -0
  46. package/.next/server/app/(app)/goals/page.js +2 -0
  47. package/.next/server/app/(app)/goals/page.js.nft.json +1 -0
  48. package/.next/server/app/(app)/goals/page_client-reference-manifest.js +1 -0
  49. package/.next/server/app/(app)/inbox/page.js +2 -0
  50. package/.next/server/app/(app)/inbox/page.js.nft.json +1 -0
  51. package/.next/server/app/(app)/inbox/page_client-reference-manifest.js +1 -0
  52. package/.next/server/app/(app)/knowledge/page.js +3 -0
  53. package/.next/server/app/(app)/knowledge/page.js.nft.json +1 -0
  54. package/.next/server/app/(app)/knowledge/page_client-reference-manifest.js +1 -0
  55. package/.next/server/app/(app)/models/page.js +2 -0
  56. package/.next/server/app/(app)/models/page.js.nft.json +1 -0
  57. package/.next/server/app/(app)/models/page_client-reference-manifest.js +1 -0
  58. package/.next/server/app/(app)/notifications/page.js +2 -0
  59. package/.next/server/app/(app)/notifications/page.js.nft.json +1 -0
  60. package/.next/server/app/(app)/notifications/page_client-reference-manifest.js +1 -0
  61. package/.next/server/app/(app)/org/page.js +2 -0
  62. package/.next/server/app/(app)/org/page.js.nft.json +1 -0
  63. package/.next/server/app/(app)/org/page_client-reference-manifest.js +1 -0
  64. package/.next/server/app/(app)/organizations/page.js +2 -0
  65. package/.next/server/app/(app)/organizations/page.js.nft.json +1 -0
  66. package/.next/server/app/(app)/organizations/page_client-reference-manifest.js +1 -0
  67. package/.next/server/app/(app)/page.js +3 -0
  68. package/.next/server/app/(app)/page.js.nft.json +1 -0
  69. package/.next/server/app/(app)/page_client-reference-manifest.js +1 -0
  70. package/.next/server/app/(app)/planner/page.js +2 -0
  71. package/.next/server/app/(app)/planner/page.js.nft.json +1 -0
  72. package/.next/server/app/(app)/planner/page_client-reference-manifest.js +1 -0
  73. package/.next/server/app/(app)/plugins/page.js +2 -0
  74. package/.next/server/app/(app)/plugins/page.js.nft.json +1 -0
  75. package/.next/server/app/(app)/plugins/page_client-reference-manifest.js +1 -0
  76. package/.next/server/app/(app)/pm/page.js +2 -0
  77. package/.next/server/app/(app)/pm/page.js.nft.json +1 -0
  78. package/.next/server/app/(app)/pm/page_client-reference-manifest.js +1 -0
  79. package/.next/server/app/(app)/prepare-deploy/page.js +19 -0
  80. package/.next/server/app/(app)/prepare-deploy/page.js.nft.json +1 -0
  81. package/.next/server/app/(app)/prepare-deploy/page_client-reference-manifest.js +1 -0
  82. package/.next/server/app/(app)/profile/page.js +2 -0
  83. package/.next/server/app/(app)/profile/page.js.nft.json +1 -0
  84. package/.next/server/app/(app)/profile/page_client-reference-manifest.js +1 -0
  85. package/.next/server/app/(app)/pulse/page.js +2 -0
  86. package/.next/server/app/(app)/pulse/page.js.nft.json +1 -0
  87. package/.next/server/app/(app)/pulse/page_client-reference-manifest.js +1 -0
  88. package/.next/server/app/(app)/reports/[id]/page.js +3 -0
  89. package/.next/server/app/(app)/reports/[id]/page.js.nft.json +1 -0
  90. package/.next/server/app/(app)/reports/[id]/page_client-reference-manifest.js +1 -0
  91. package/.next/server/app/(app)/reports/page.js +5 -0
  92. package/.next/server/app/(app)/reports/page.js.nft.json +1 -0
  93. package/.next/server/app/(app)/reports/page_client-reference-manifest.js +1 -0
  94. package/.next/server/app/(app)/routines/page.js +2 -0
  95. package/.next/server/app/(app)/routines/page.js.nft.json +1 -0
  96. package/.next/server/app/(app)/routines/page_client-reference-manifest.js +1 -0
  97. package/.next/server/app/(app)/search/page.js +2 -0
  98. package/.next/server/app/(app)/search/page.js.nft.json +1 -0
  99. package/.next/server/app/(app)/search/page_client-reference-manifest.js +1 -0
  100. package/.next/server/app/(app)/security/page.js +2 -0
  101. package/.next/server/app/(app)/security/page.js.nft.json +1 -0
  102. package/.next/server/app/(app)/security/page_client-reference-manifest.js +1 -0
  103. package/.next/server/app/(app)/skills/page.js +18 -0
  104. package/.next/server/app/(app)/skills/page.js.nft.json +1 -0
  105. package/.next/server/app/(app)/skills/page_client-reference-manifest.js +1 -0
  106. package/.next/server/app/(app)/tasks/page.js +2 -0
  107. package/.next/server/app/(app)/tasks/page.js.nft.json +1 -0
  108. package/.next/server/app/(app)/tasks/page_client-reference-manifest.js +1 -0
  109. package/.next/server/app/(app)/test-dev/page.js +2 -0
  110. package/.next/server/app/(app)/test-dev/page.js.nft.json +1 -0
  111. package/.next/server/app/(app)/test-dev/page_client-reference-manifest.js +1 -0
  112. package/.next/server/app/(app)/update/page.js +2 -0
  113. package/.next/server/app/(app)/update/page.js.nft.json +1 -0
  114. package/.next/server/app/(app)/update/page_client-reference-manifest.js +1 -0
  115. package/.next/server/app/(auth)/login/page.js +2 -0
  116. package/.next/server/app/(auth)/login/page.js.nft.json +1 -0
  117. package/.next/server/app/(auth)/login/page_client-reference-manifest.js +1 -0
  118. package/.next/server/app/(auth)/onboarding/page.js +18 -0
  119. package/.next/server/app/(auth)/onboarding/page.js.nft.json +1 -0
  120. package/.next/server/app/(auth)/onboarding/page_client-reference-manifest.js +1 -0
  121. package/.next/server/app/_global-error/page.js +32 -0
  122. package/.next/server/app/_global-error/page.js.nft.json +1 -0
  123. package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
  124. package/.next/server/app/_global-error.html +1 -0
  125. package/.next/server/app/_global-error.meta +16 -0
  126. package/.next/server/app/_global-error.rsc +15 -0
  127. package/.next/server/app/_global-error.segments/_full.segment.rsc +15 -0
  128. package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
  129. package/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
  130. package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
  131. package/.next/server/app/_global-error.segments/_index.segment.rsc +6 -0
  132. package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
  133. package/.next/server/app/_not-found/page.js +2 -0
  134. package/.next/server/app/_not-found/page.js.nft.json +1 -0
  135. package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
  136. package/.next/server/app/api/auth/[...all]/route.js +1 -0
  137. package/.next/server/app/api/auth/[...all]/route.js.nft.json +1 -0
  138. package/.next/server/app/api/auth/[...all]/route_client-reference-manifest.js +1 -0
  139. package/.next/server/app/api/cron/tick/route.js +52 -0
  140. package/.next/server/app/api/cron/tick/route.js.nft.json +1 -0
  141. package/.next/server/app/api/cron/tick/route_client-reference-manifest.js +1 -0
  142. package/.next/server/app/api/dev-login/route.js +1 -0
  143. package/.next/server/app/api/dev-login/route.js.nft.json +1 -0
  144. package/.next/server/app/api/dev-login/route_client-reference-manifest.js +1 -0
  145. package/.next/server/app/api/locks/acquire/route.js +1 -0
  146. package/.next/server/app/api/locks/acquire/route.js.nft.json +1 -0
  147. package/.next/server/app/api/locks/acquire/route_client-reference-manifest.js +1 -0
  148. package/.next/server/app/api/models/progress/route.js +1 -0
  149. package/.next/server/app/api/models/progress/route.js.nft.json +1 -0
  150. package/.next/server/app/api/models/progress/route_client-reference-manifest.js +1 -0
  151. package/.next/server/app/api/passkey/authenticate/options/route.js +1 -0
  152. package/.next/server/app/api/passkey/authenticate/options/route.js.nft.json +1 -0
  153. package/.next/server/app/api/passkey/authenticate/options/route_client-reference-manifest.js +1 -0
  154. package/.next/server/app/api/passkey/authenticate/verify/route.js +1 -0
  155. package/.next/server/app/api/passkey/authenticate/verify/route.js.nft.json +1 -0
  156. package/.next/server/app/api/passkey/authenticate/verify/route_client-reference-manifest.js +1 -0
  157. package/.next/server/app/api/passkey/register/options/route.js +1 -0
  158. package/.next/server/app/api/passkey/register/options/route.js.nft.json +1 -0
  159. package/.next/server/app/api/passkey/register/options/route_client-reference-manifest.js +1 -0
  160. package/.next/server/app/api/passkey/register/verify/route.js +1 -0
  161. package/.next/server/app/api/passkey/register/verify/route.js.nft.json +1 -0
  162. package/.next/server/app/api/passkey/register/verify/route_client-reference-manifest.js +1 -0
  163. package/.next/server/app/api/stream/route.js +4 -0
  164. package/.next/server/app/api/stream/route.js.nft.json +1 -0
  165. package/.next/server/app/api/stream/route_client-reference-manifest.js +1 -0
  166. package/.next/server/app/api/sync/file/route.js +2 -0
  167. package/.next/server/app/api/sync/file/route.js.nft.json +1 -0
  168. package/.next/server/app/api/sync/file/route_client-reference-manifest.js +1 -0
  169. package/.next/server/app/api/telegram/poll/route.js +15 -0
  170. package/.next/server/app/api/telegram/poll/route.js.nft.json +1 -0
  171. package/.next/server/app/api/telegram/poll/route_client-reference-manifest.js +1 -0
  172. package/.next/server/app/api/upload/route.js +1 -0
  173. package/.next/server/app/api/upload/route.js.nft.json +1 -0
  174. package/.next/server/app/api/upload/route_client-reference-manifest.js +1 -0
  175. package/.next/server/app/api/v1/[[...path]]/route.js +1 -0
  176. package/.next/server/app/api/v1/[[...path]]/route.js.nft.json +1 -0
  177. package/.next/server/app/api/v1/[[...path]]/route_client-reference-manifest.js +1 -0
  178. package/.next/server/app-paths-manifest.json +53 -0
  179. package/.next/server/chunks/1003.js +1 -0
  180. package/.next/server/chunks/127.js +26 -0
  181. package/.next/server/chunks/1388.js +1 -0
  182. package/.next/server/chunks/1408.js +21 -0
  183. package/.next/server/chunks/1572.js +1 -0
  184. package/.next/server/chunks/1591.js +24 -0
  185. package/.next/server/chunks/1619.js +188 -0
  186. package/.next/server/chunks/162.js +1 -0
  187. package/.next/server/chunks/1881.js +1 -0
  188. package/.next/server/chunks/1968.js +1 -0
  189. package/.next/server/chunks/2297.js +348 -0
  190. package/.next/server/chunks/2341.js +1 -0
  191. package/.next/server/chunks/2517.js +1 -0
  192. package/.next/server/chunks/2549.js +1 -0
  193. package/.next/server/chunks/259.js +14 -0
  194. package/.next/server/chunks/2599.js +1 -0
  195. package/.next/server/chunks/260.js +1 -0
  196. package/.next/server/chunks/2867.js +147 -0
  197. package/.next/server/chunks/3018.js +1 -0
  198. package/.next/server/chunks/3050.js +18 -0
  199. package/.next/server/chunks/3085.js +12 -0
  200. package/.next/server/chunks/3131.js +1 -0
  201. package/.next/server/chunks/3242.js +1 -0
  202. package/.next/server/chunks/3266.js +15 -0
  203. package/.next/server/chunks/3524.js +1 -0
  204. package/.next/server/chunks/3527.js +479 -0
  205. package/.next/server/chunks/3533.js +869 -0
  206. package/.next/server/chunks/3550.js +1 -0
  207. package/.next/server/chunks/3609.js +2 -0
  208. package/.next/server/chunks/3667.js +462 -0
  209. package/.next/server/chunks/3760.js +4 -0
  210. package/.next/server/chunks/4679.js +1 -0
  211. package/.next/server/chunks/4804.js +1 -0
  212. package/.next/server/chunks/4832.js +2 -0
  213. package/.next/server/chunks/4853.js +1 -0
  214. package/.next/server/chunks/4979.js +67 -0
  215. package/.next/server/chunks/5060.js +1 -0
  216. package/.next/server/chunks/5278.js +1 -0
  217. package/.next/server/chunks/5614.js +1 -0
  218. package/.next/server/chunks/5818.js +1 -0
  219. package/.next/server/chunks/6479.js +1 -0
  220. package/.next/server/chunks/6658.js +1 -0
  221. package/.next/server/chunks/6706.js +1 -0
  222. package/.next/server/chunks/6719.js +1 -0
  223. package/.next/server/chunks/678.js +1 -0
  224. package/.next/server/chunks/683.js +1 -0
  225. package/.next/server/chunks/6862.js +1 -0
  226. package/.next/server/chunks/6882.js +1 -0
  227. package/.next/server/chunks/7037.js +1 -0
  228. package/.next/server/chunks/7107.js +741 -0
  229. package/.next/server/chunks/73.js +17 -0
  230. package/.next/server/chunks/7327.js +1 -0
  231. package/.next/server/chunks/7514.js +1 -0
  232. package/.next/server/chunks/7622.js +1 -0
  233. package/.next/server/chunks/7778.js +1 -0
  234. package/.next/server/chunks/7912.js +1 -0
  235. package/.next/server/chunks/7949.js +1 -0
  236. package/.next/server/chunks/7971.js +1 -0
  237. package/.next/server/chunks/7989.js +1 -0
  238. package/.next/server/chunks/842.js +22 -0
  239. package/.next/server/chunks/8762.js +15 -0
  240. package/.next/server/chunks/8823.js +77 -0
  241. package/.next/server/chunks/9146.js +4 -0
  242. package/.next/server/chunks/9676.js +1 -0
  243. package/.next/server/chunks/9783.js +22 -0
  244. package/.next/server/chunks/9969.js +3 -0
  245. package/.next/server/functions-config-manifest.json +18 -0
  246. package/.next/server/instrumentation.js +1 -0
  247. package/.next/server/instrumentation.js.nft.json +1 -0
  248. package/.next/server/interception-route-rewrite-manifest.js +1 -0
  249. package/.next/server/middleware-build-manifest.js +1 -0
  250. package/.next/server/middleware-manifest.json +6 -0
  251. package/.next/server/middleware-react-loadable-manifest.js +1 -0
  252. package/.next/server/middleware.js +18 -0
  253. package/.next/server/middleware.js.nft.json +1 -0
  254. package/.next/server/next-font-manifest.js +1 -0
  255. package/.next/server/next-font-manifest.json +1 -0
  256. package/.next/server/pages/500.html +1 -0
  257. package/.next/server/pages-manifest.json +3 -0
  258. package/.next/server/prefetch-hints.json +1 -0
  259. package/.next/server/server-reference-manifest.js +1 -0
  260. package/.next/server/server-reference-manifest.json +1 -0
  261. package/.next/server/webpack-runtime.js +1 -0
  262. package/.next/static/chunks/1858-339516f78a4b00da.js +1 -0
  263. package/.next/static/chunks/2320-fc8b39380e69d465.js +2 -0
  264. package/.next/static/chunks/23550918-ff694f70f4b0648c.js +1 -0
  265. package/.next/static/chunks/3219-ebb3c23be38c838d.js +1 -0
  266. package/.next/static/chunks/4263-adecb5b466380b6e.js +1 -0
  267. package/.next/static/chunks/5479-0cceab68cd0ca9c7.js +1 -0
  268. package/.next/static/chunks/5701-665b927b06158b76.js +1 -0
  269. package/.next/static/chunks/5920.6451a68b63918988.js +1 -0
  270. package/.next/static/chunks/6575-5c9139720bb0f5bf.js +4 -0
  271. package/.next/static/chunks/6834-4759af1ce7d95fb6.js +32 -0
  272. package/.next/static/chunks/7509.721cd47a931c5518.js +1 -0
  273. package/.next/static/chunks/8264-1ca011989ee2b231.js +1 -0
  274. package/.next/static/chunks/9219-4a39a98b5502d9d1.js +1 -0
  275. package/.next/static/chunks/9690-53d5222618cbeddb.js +1 -0
  276. package/.next/static/chunks/app/(app)/activity/page-3973534281ecea81.js +1 -0
  277. package/.next/static/chunks/app/(app)/agents/[handle]/page-83662a175c098282.js +1 -0
  278. package/.next/static/chunks/app/(app)/code/page-33979545192cd137.js +1 -0
  279. package/.next/static/chunks/app/(app)/config/page-9933aed1ca8a85c1.js +1 -0
  280. package/.next/static/chunks/app/(app)/costs/page-131c4dc580efcc19.js +1 -0
  281. package/.next/static/chunks/app/(app)/cron/page-53ea1aff998a87ca.js +1 -0
  282. package/.next/static/chunks/app/(app)/dashboard/page-deed83aaa9d0d447.js +1 -0
  283. package/.next/static/chunks/app/(app)/docs/[id]/page-38c993d73c0eab4f.js +1 -0
  284. package/.next/static/chunks/app/(app)/docs/page-bf463b55d0554e86.js +1 -0
  285. package/.next/static/chunks/app/(app)/error-988cd28480809861.js +1 -0
  286. package/.next/static/chunks/app/(app)/github/page-62678b4e82dfecb6.js +1 -0
  287. package/.next/static/chunks/app/(app)/goals/page-4adb426fe1c96106.js +1 -0
  288. package/.next/static/chunks/app/(app)/inbox/page-e347dc55ab467310.js +1 -0
  289. package/.next/static/chunks/app/(app)/knowledge/page-65393a045b4349be.js +1 -0
  290. package/.next/static/chunks/app/(app)/layout-7f65675705b011d8.js +1 -0
  291. package/.next/static/chunks/app/(app)/models/page-e01f1dd7e49a2951.js +1 -0
  292. package/.next/static/chunks/app/(app)/notifications/page-56548ac87aef00da.js +1 -0
  293. package/.next/static/chunks/app/(app)/org/page-699e6a6dc0db7d81.js +1 -0
  294. package/.next/static/chunks/app/(app)/organizations/page-36051a380a7e8eb7.js +1 -0
  295. package/.next/static/chunks/app/(app)/page-7d1011a566f81520.js +1 -0
  296. package/.next/static/chunks/app/(app)/planner/page-dab7ced94083373a.js +1 -0
  297. package/.next/static/chunks/app/(app)/plugins/page-5b5a1f53389be42e.js +1 -0
  298. package/.next/static/chunks/app/(app)/pm/page-0de5c08c0b227bb0.js +1 -0
  299. package/.next/static/chunks/app/(app)/prepare-deploy/page-e426038552df8d41.js +1 -0
  300. package/.next/static/chunks/app/(app)/profile/page-608dfcaf8aae0a69.js +1 -0
  301. package/.next/static/chunks/app/(app)/pulse/page-309ccaca91de1faa.js +1 -0
  302. package/.next/static/chunks/app/(app)/reports/[id]/page-53ea1aff998a87ca.js +1 -0
  303. package/.next/static/chunks/app/(app)/reports/page-68cdc6dcfa472d86.js +1 -0
  304. package/.next/static/chunks/app/(app)/routines/page-bcc55550b197a9fa.js +1 -0
  305. package/.next/static/chunks/app/(app)/search/page-5c5f67558d0dbf0d.js +1 -0
  306. package/.next/static/chunks/app/(app)/security/page-a7d41e36aa366b45.js +1 -0
  307. package/.next/static/chunks/app/(app)/skills/page-c5b21e89593b8336.js +1 -0
  308. package/.next/static/chunks/app/(app)/tasks/page-08ae079e3e54d2ce.js +1 -0
  309. package/.next/static/chunks/app/(app)/test-dev/page-633f82dfd9c3ce23.js +1 -0
  310. package/.next/static/chunks/app/(app)/update/page-4be019054351bfac.js +1 -0
  311. package/.next/static/chunks/app/(auth)/login/page-6e85d3377062acae.js +1 -0
  312. package/.next/static/chunks/app/(auth)/onboarding/page-ebb10c175abf3b85.js +1 -0
  313. package/.next/static/chunks/app/_global-error/page-23fe50a6bf589c97.js +1 -0
  314. package/.next/static/chunks/app/_not-found/page-dc38b02aebeab535.js +1 -0
  315. package/.next/static/chunks/app/api/auth/[...all]/route-23fe50a6bf589c97.js +1 -0
  316. package/.next/static/chunks/app/api/cron/tick/route-23fe50a6bf589c97.js +1 -0
  317. package/.next/static/chunks/app/api/dev-login/route-23fe50a6bf589c97.js +1 -0
  318. package/.next/static/chunks/app/api/locks/acquire/route-23fe50a6bf589c97.js +1 -0
  319. package/.next/static/chunks/app/api/models/progress/route-23fe50a6bf589c97.js +1 -0
  320. package/.next/static/chunks/app/api/passkey/authenticate/options/route-23fe50a6bf589c97.js +1 -0
  321. package/.next/static/chunks/app/api/passkey/authenticate/verify/route-23fe50a6bf589c97.js +1 -0
  322. package/.next/static/chunks/app/api/passkey/register/options/route-23fe50a6bf589c97.js +1 -0
  323. package/.next/static/chunks/app/api/passkey/register/verify/route-23fe50a6bf589c97.js +1 -0
  324. package/.next/static/chunks/app/api/stream/route-23fe50a6bf589c97.js +1 -0
  325. package/.next/static/chunks/app/api/sync/file/route-23fe50a6bf589c97.js +1 -0
  326. package/.next/static/chunks/app/api/telegram/poll/route-23fe50a6bf589c97.js +1 -0
  327. package/.next/static/chunks/app/api/upload/route-23fe50a6bf589c97.js +1 -0
  328. package/.next/static/chunks/app/api/v1/[[...path]]/route-23fe50a6bf589c97.js +1 -0
  329. package/.next/static/chunks/app/error-09899a13c38b6e89.js +1 -0
  330. package/.next/static/chunks/app/global-error-b8050d4d886f448c.js +1 -0
  331. package/.next/static/chunks/app/layout-ab9deed1e7e2e9df.js +1 -0
  332. package/.next/static/chunks/framework-4b2c6b6043dd203f.js +1 -0
  333. package/.next/static/chunks/main-722e16032e7764d1.js +5 -0
  334. package/.next/static/chunks/main-app-761880af2b6f1962.js +1 -0
  335. package/.next/static/chunks/next/dist/client/components/builtin/app-error-23fe50a6bf589c97.js +1 -0
  336. package/.next/static/chunks/next/dist/client/components/builtin/forbidden-23fe50a6bf589c97.js +1 -0
  337. package/.next/static/chunks/next/dist/client/components/builtin/not-found-23fe50a6bf589c97.js +1 -0
  338. package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-23fe50a6bf589c97.js +1 -0
  339. package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
  340. package/.next/static/chunks/webpack-222e3894b78c67db.js +1 -0
  341. package/.next/static/css/0a9b5805594444e3.css +1 -0
  342. package/.next/static/yztMvBwyrWWkSqP6jfXoa/_buildManifest.js +1 -0
  343. package/.next/static/yztMvBwyrWWkSqP6jfXoa/_ssgManifest.js +1 -0
  344. package/.next/trace-build +1 -0
  345. package/.next/types/app/(app)/activity/page.ts +87 -0
  346. package/.next/types/app/(app)/agents/[handle]/page.ts +87 -0
  347. package/.next/types/app/(app)/code/page.ts +87 -0
  348. package/.next/types/app/(app)/config/page.ts +87 -0
  349. package/.next/types/app/(app)/costs/page.ts +87 -0
  350. package/.next/types/app/(app)/cron/page.ts +87 -0
  351. package/.next/types/app/(app)/dashboard/page.ts +87 -0
  352. package/.next/types/app/(app)/docs/[id]/page.ts +87 -0
  353. package/.next/types/app/(app)/docs/page.ts +87 -0
  354. package/.next/types/app/(app)/github/page.ts +87 -0
  355. package/.next/types/app/(app)/goals/page.ts +87 -0
  356. package/.next/types/app/(app)/inbox/page.ts +87 -0
  357. package/.next/types/app/(app)/knowledge/page.ts +87 -0
  358. package/.next/types/app/(app)/models/page.ts +87 -0
  359. package/.next/types/app/(app)/notifications/page.ts +87 -0
  360. package/.next/types/app/(app)/org/page.ts +87 -0
  361. package/.next/types/app/(app)/organizations/page.ts +87 -0
  362. package/.next/types/app/(app)/page.ts +87 -0
  363. package/.next/types/app/(app)/planner/page.ts +87 -0
  364. package/.next/types/app/(app)/plugins/page.ts +87 -0
  365. package/.next/types/app/(app)/pm/page.ts +87 -0
  366. package/.next/types/app/(app)/prepare-deploy/page.ts +87 -0
  367. package/.next/types/app/(app)/profile/page.ts +87 -0
  368. package/.next/types/app/(app)/pulse/page.ts +87 -0
  369. package/.next/types/app/(app)/reports/[id]/page.ts +87 -0
  370. package/.next/types/app/(app)/reports/page.ts +87 -0
  371. package/.next/types/app/(app)/routines/page.ts +87 -0
  372. package/.next/types/app/(app)/search/page.ts +87 -0
  373. package/.next/types/app/(app)/security/page.ts +87 -0
  374. package/.next/types/app/(app)/skills/page.ts +87 -0
  375. package/.next/types/app/(app)/tasks/page.ts +87 -0
  376. package/.next/types/app/(app)/test-dev/page.ts +87 -0
  377. package/.next/types/app/(app)/update/page.ts +87 -0
  378. package/.next/types/app/(auth)/login/page.ts +87 -0
  379. package/.next/types/app/(auth)/onboarding/page.ts +87 -0
  380. package/.next/types/app/api/auth/[...all]/route.ts +351 -0
  381. package/.next/types/app/api/cron/tick/route.ts +351 -0
  382. package/.next/types/app/api/dev-login/route.ts +351 -0
  383. package/.next/types/app/api/locks/acquire/route.ts +351 -0
  384. package/.next/types/app/api/models/progress/route.ts +351 -0
  385. package/.next/types/app/api/passkey/authenticate/options/route.ts +351 -0
  386. package/.next/types/app/api/passkey/authenticate/verify/route.ts +351 -0
  387. package/.next/types/app/api/passkey/register/options/route.ts +351 -0
  388. package/.next/types/app/api/passkey/register/verify/route.ts +351 -0
  389. package/.next/types/app/api/stream/route.ts +351 -0
  390. package/.next/types/app/api/sync/file/route.ts +351 -0
  391. package/.next/types/app/api/telegram/poll/route.ts +351 -0
  392. package/.next/types/app/api/upload/route.ts +351 -0
  393. package/.next/types/app/api/v1/[[...path]]/route.ts +351 -0
  394. package/.next/types/cache-life.d.ts +145 -0
  395. package/.next/types/link.d.ts +210 -0
  396. package/.next/types/package.json +1 -0
  397. package/.next/types/routes.d.ts +120 -0
  398. package/.next/types/validator.ts +511 -0
  399. package/CHANGELOG.md +312 -0
  400. package/LICENSE +21 -0
  401. package/README.md +382 -0
  402. package/README.pt-BR.md +391 -0
  403. package/bin/constella.mjs +329 -0
  404. package/bin/guard-hook.mjs +44 -0
  405. package/bin/lock-hook.mjs +49 -0
  406. package/bin/worker.mjs +142 -0
  407. package/docs/assets/arch-orbit.svg +56 -0
  408. package/docs/assets/blackhole.svg +37 -0
  409. package/docs/assets/divider-orbit.svg +23 -0
  410. package/docs/assets/hero-constella.svg +72 -0
  411. package/docs/en/AGENTS.md +279 -0
  412. package/docs/en/AI_ARCHITECTURE.md +373 -0
  413. package/docs/en/ARCHITECTURE.md +334 -0
  414. package/docs/en/AUTH_MODE.md +247 -0
  415. package/docs/en/CHAT_COMMANDS.md +305 -0
  416. package/docs/en/CONFIGURATION.md +340 -0
  417. package/docs/en/DEPLOY.md +331 -0
  418. package/docs/en/DM.md +297 -0
  419. package/docs/en/FAQ.md +258 -0
  420. package/docs/en/GITHUB.md +341 -0
  421. package/docs/en/GOALS_SPECS_ISSUES.md +303 -0
  422. package/docs/en/INBOX.md +340 -0
  423. package/docs/en/INSTALLATION.md +329 -0
  424. package/docs/en/KB_AGENT.md +305 -0
  425. package/docs/en/KB_RAG.md +356 -0
  426. package/docs/en/MCP.md +313 -0
  427. package/docs/en/MEMORY_RAG.md +289 -0
  428. package/docs/en/MODELS.md +341 -0
  429. package/docs/en/ONBOARDING.md +327 -0
  430. package/docs/en/PLUGINS.md +290 -0
  431. package/docs/en/PORTABLE_MODE.md +387 -0
  432. package/docs/en/PO_AGENT.md +379 -0
  433. package/docs/en/PREPARE_DEPLOY.md +308 -0
  434. package/docs/en/PROJECT_STACKS.md +258 -0
  435. package/docs/en/PUBLIC_API.md +315 -0
  436. package/docs/en/PUBLISHING.md +343 -0
  437. package/docs/en/README.md +95 -0
  438. package/docs/en/SECURITY.md +280 -0
  439. package/docs/en/SKILLS.md +349 -0
  440. package/docs/en/START_MODE.md +340 -0
  441. package/docs/en/SYNCED_BLOCKS.md +320 -0
  442. package/docs/en/TEAM_ROOM.md +285 -0
  443. package/docs/en/TELEGRAM.md +294 -0
  444. package/docs/en/TEST_DEV.md +321 -0
  445. package/docs/en/TROUBLESHOOTING.md +294 -0
  446. package/docs/en/UPDATE.md +301 -0
  447. package/docs/en/VPS_MODE.md +334 -0
  448. package/docs/en/WORKFLOW.md +321 -0
  449. package/docs/pt/AGENTS.md +279 -0
  450. package/docs/pt/AI_ARCHITECTURE.md +373 -0
  451. package/docs/pt/ARCHITECTURE.md +334 -0
  452. package/docs/pt/AUTH_MODE.md +247 -0
  453. package/docs/pt/CHAT_COMMANDS.md +307 -0
  454. package/docs/pt/CONFIGURATION.md +340 -0
  455. package/docs/pt/DEPLOY.md +331 -0
  456. package/docs/pt/DM.md +297 -0
  457. package/docs/pt/FAQ.md +258 -0
  458. package/docs/pt/GITHUB.md +341 -0
  459. package/docs/pt/GOALS_SPECS_ISSUES.md +303 -0
  460. package/docs/pt/INBOX.md +340 -0
  461. package/docs/pt/INSTALLATION.md +329 -0
  462. package/docs/pt/KB_AGENT.md +305 -0
  463. package/docs/pt/KB_RAG.md +356 -0
  464. package/docs/pt/MCP.md +313 -0
  465. package/docs/pt/MEMORY_RAG.md +289 -0
  466. package/docs/pt/MODELS.md +341 -0
  467. package/docs/pt/ONBOARDING.md +327 -0
  468. package/docs/pt/PLUGINS.md +290 -0
  469. package/docs/pt/PORTABLE_MODE.md +387 -0
  470. package/docs/pt/PO_AGENT.md +379 -0
  471. package/docs/pt/PREPARE_DEPLOY.md +308 -0
  472. package/docs/pt/PROJECT_STACKS.md +258 -0
  473. package/docs/pt/PUBLIC_API.md +315 -0
  474. package/docs/pt/PUBLISHING.md +343 -0
  475. package/docs/pt/README.md +95 -0
  476. package/docs/pt/SECURITY.md +280 -0
  477. package/docs/pt/SKILLS.md +349 -0
  478. package/docs/pt/START_MODE.md +340 -0
  479. package/docs/pt/SYNCED_BLOCKS.md +320 -0
  480. package/docs/pt/TEAM_ROOM.md +285 -0
  481. package/docs/pt/TELEGRAM.md +294 -0
  482. package/docs/pt/TEST_DEV.md +321 -0
  483. package/docs/pt/TROUBLESHOOTING.md +294 -0
  484. package/docs/pt/UPDATE.md +301 -0
  485. package/docs/pt/VPS_MODE.md +334 -0
  486. package/docs/pt/WORKFLOW.md +321 -0
  487. package/drizzle/0000_regular_nightshade.sql +644 -0
  488. package/drizzle/0001_mixed_zombie.sql +106 -0
  489. package/drizzle/meta/0000_snapshot.json +4650 -0
  490. package/drizzle/meta/0001_snapshot.json +5418 -0
  491. package/drizzle/meta/_journal.json +20 -0
  492. package/drizzle.config.mjs +16 -0
  493. package/next.config.mjs +18 -0
  494. package/package.json +130 -0
  495. package/scripts/clean-repo.mjs +20 -0
  496. package/scripts/dev-all.mjs +46 -0
  497. package/scripts/i18n-parity.mjs +57 -0
  498. package/scripts/mcp-server.mjs +100 -0
  499. package/scripts/postbuild.mjs +11 -0
  500. package/scripts/publish-public.mjs +116 -0
  501. package/scripts/start-all.mjs +45 -0
  502. package/scripts/trim-next.mjs +23 -0
  503. package/scripts/vps-install.sh +39 -0
  504. package/skills/CONTRIBUTING.md +122 -0
  505. package/skills/COVERAGE.md +129 -0
  506. package/skills/INDEX.json +3443 -0
  507. package/skills/README.md +57 -0
  508. package/skills/design/animation-motion/SKILL.md +60 -0
  509. package/skills/design/color-and-typography/SKILL.md +60 -0
  510. package/skills/design/css-techniques/SKILL.md +58 -0
  511. package/skills/design/design-systems/SKILL.md +60 -0
  512. package/skills/design/gradients/SKILL.md +59 -0
  513. package/skills/design/graphic-design-basics/SKILL.md +55 -0
  514. package/skills/design/microinteractions/SKILL.md +58 -0
  515. package/skills/design/responsive-layout/SKILL.md +59 -0
  516. package/skills/design/ui-ux-principles/SKILL.md +58 -0
  517. package/skills/engineering/architecture/api-design-rest-graphql/SKILL.md +67 -0
  518. package/skills/engineering/architecture/caching-strategies/SKILL.md +59 -0
  519. package/skills/engineering/architecture/data-modeling/SKILL.md +64 -0
  520. package/skills/engineering/architecture/message-queues-async/SKILL.md +58 -0
  521. package/skills/engineering/architecture/scalability-reliability/SKILL.md +62 -0
  522. package/skills/engineering/architecture/software-architecture-patterns/SKILL.md +56 -0
  523. package/skills/engineering/architecture/system-design-fundamentals/SKILL.md +56 -0
  524. package/skills/engineering/backend/auth-and-authorization/SKILL.md +62 -0
  525. package/skills/engineering/backend/backend-fundamentals/SKILL.md +65 -0
  526. package/skills/engineering/backend/observability-logging/SKILL.md +60 -0
  527. package/skills/engineering/frontend/accessibility-wcag/SKILL.md +57 -0
  528. package/skills/engineering/frontend/frontend-architecture/SKILL.md +65 -0
  529. package/skills/engineering/frontend/rendering-strategies-ssr-csr/SKILL.md +60 -0
  530. package/skills/engineering/frontend/state-management/SKILL.md +69 -0
  531. package/skills/engineering/performance/backend-performance/SKILL.md +69 -0
  532. package/skills/engineering/performance/database-query-optimization/SKILL.md +64 -0
  533. package/skills/engineering/performance/profiling-and-benchmarking/SKILL.md +60 -0
  534. package/skills/engineering/performance/web-performance-core-vitals/SKILL.md +72 -0
  535. package/skills/engineering/practices/clean-code/SKILL.md +61 -0
  536. package/skills/engineering/practices/code-optimization/SKILL.md +60 -0
  537. package/skills/engineering/practices/code-review-practices/SKILL.md +58 -0
  538. package/skills/engineering/practices/git-workflow/SKILL.md +62 -0
  539. package/skills/engineering/practices/refactoring/SKILL.md +58 -0
  540. package/skills/engineering/security/appsec-fundamentals/SKILL.md +70 -0
  541. package/skills/engineering/security/dependency-supply-chain/SKILL.md +77 -0
  542. package/skills/engineering/security/owasp-asvs/SKILL.md +54 -0
  543. package/skills/engineering/security/owasp-top-10/SKILL.md +63 -0
  544. package/skills/engineering/security/secrets-management/SKILL.md +58 -0
  545. package/skills/engineering/security/secure-auth-sessions/SKILL.md +56 -0
  546. package/skills/engineering/testing/tdd-and-coverage/SKILL.md +62 -0
  547. package/skills/engineering/testing/testing-strategy-pyramid/SKILL.md +56 -0
  548. package/skills/engineering/testing/unit-integration-e2e/SKILL.md +75 -0
  549. package/skills/languages/c/SKILL.md +74 -0
  550. package/skills/languages/clojure/SKILL.md +73 -0
  551. package/skills/languages/cpp/SKILL.md +75 -0
  552. package/skills/languages/csharp/SKILL.md +75 -0
  553. package/skills/languages/dart/SKILL.md +82 -0
  554. package/skills/languages/elixir/SKILL.md +74 -0
  555. package/skills/languages/erlang/SKILL.md +76 -0
  556. package/skills/languages/go/SKILL.md +83 -0
  557. package/skills/languages/haskell/SKILL.md +70 -0
  558. package/skills/languages/java/SKILL.md +71 -0
  559. package/skills/languages/javascript/SKILL.md +62 -0
  560. package/skills/languages/kotlin/SKILL.md +68 -0
  561. package/skills/languages/lua/SKILL.md +79 -0
  562. package/skills/languages/objectivec/SKILL.md +83 -0
  563. package/skills/languages/php/SKILL.md +74 -0
  564. package/skills/languages/python/SKILL.md +68 -0
  565. package/skills/languages/r/SKILL.md +70 -0
  566. package/skills/languages/ruby/SKILL.md +67 -0
  567. package/skills/languages/rust/SKILL.md +72 -0
  568. package/skills/languages/scala/SKILL.md +73 -0
  569. package/skills/languages/swift/SKILL.md +73 -0
  570. package/skills/languages/typescript/SKILL.md +69 -0
  571. package/skills/meta/authoring-agent-skills/SKILL.md +73 -0
  572. package/skills/meta/progressive-disclosure/SKILL.md +65 -0
  573. package/skills/meta/skill-frontmatter-spec/SKILL.md +65 -0
  574. package/skills/process/adr-technical-decisions/SKILL.md +59 -0
  575. package/skills/process/app-planning/SKILL.md +63 -0
  576. package/skills/process/architecture-before-code/SKILL.md +52 -0
  577. package/skills/process/breaking-work-into-sprints/SKILL.md +53 -0
  578. package/skills/process/idea-to-product/SKILL.md +50 -0
  579. package/skills/process/mocks-and-screen-flows/SKILL.md +52 -0
  580. package/skills/process/prioritization-moscow-rice/SKILL.md +64 -0
  581. package/skills/process/problem-framing/SKILL.md +51 -0
  582. package/skills/process/product-discovery/SKILL.md +53 -0
  583. package/skills/process/readme-generation/SKILL.md +90 -0
  584. package/skills/process/requirements-to-specs/SKILL.md +53 -0
  585. package/skills/process/research-official-docs/SKILL.md +58 -0
  586. package/skills/process/review-code-perf-security/SKILL.md +65 -0
  587. package/skills/process/security-by-design/SKILL.md +68 -0
  588. package/skills/process/specs-to-issues/SKILL.md +53 -0
  589. package/skills/process/testing-before-done/SKILL.md +61 -0
  590. package/skills/process/validating-ux-navigation/SKILL.md +63 -0
  591. package/skills/references/ai-attachments-ui/SKILL.md +66 -0
  592. package/skills/references/ai-in-browser-webllm/SKILL.md +74 -0
  593. package/skills/references/ai-tool-ui-patterns/SKILL.md +63 -0
  594. package/skills/references/component-patterns-gallery/SKILL.md +62 -0
  595. package/skills/references/gradient-resources/SKILL.md +66 -0
  596. package/skills/references/react-component-libraries/SKILL.md +61 -0
  597. package/skills/references/saas-landing-patterns/SKILL.md +67 -0
  598. package/skills/references/shadcn-tailwind-theming/SKILL.md +74 -0
  599. package/skills/references/vercel-ai-sdk-elements/SKILL.md +66 -0
  600. package/skills/references/web-animation-codrops/SKILL.md +68 -0
  601. package/skills/stacks/aiml/jupyter/SKILL.md +68 -0
  602. package/skills/stacks/aiml/keras/SKILL.md +77 -0
  603. package/skills/stacks/aiml/numpy/SKILL.md +69 -0
  604. package/skills/stacks/aiml/pandas/SKILL.md +72 -0
  605. package/skills/stacks/aiml/pytorch/SKILL.md +77 -0
  606. package/skills/stacks/aiml/scikit-learn/SKILL.md +74 -0
  607. package/skills/stacks/aiml/tensorflow/SKILL.md +79 -0
  608. package/skills/stacks/auth/auth0/SKILL.md +63 -0
  609. package/skills/stacks/auth/authjs/SKILL.md +69 -0
  610. package/skills/stacks/auth/clerk/SKILL.md +72 -0
  611. package/skills/stacks/auth/keycloak/SKILL.md +63 -0
  612. package/skills/stacks/auth/lucia/SKILL.md +56 -0
  613. package/skills/stacks/auth/passport/SKILL.md +70 -0
  614. package/skills/stacks/auth/supabase-auth/SKILL.md +66 -0
  615. package/skills/stacks/baas/amplify/SKILL.md +71 -0
  616. package/skills/stacks/baas/appwrite/SKILL.md +79 -0
  617. package/skills/stacks/baas/firebase/SKILL.md +73 -0
  618. package/skills/stacks/baas/heroku/SKILL.md +71 -0
  619. package/skills/stacks/backend/actix/SKILL.md +77 -0
  620. package/skills/stacks/backend/adonisjs/SKILL.md +65 -0
  621. package/skills/stacks/backend/aspnet-core/SKILL.md +75 -0
  622. package/skills/stacks/backend/codeigniter/SKILL.md +76 -0
  623. package/skills/stacks/backend/django/SKILL.md +62 -0
  624. package/skills/stacks/backend/express/SKILL.md +65 -0
  625. package/skills/stacks/backend/fastapi/SKILL.md +64 -0
  626. package/skills/stacks/backend/fastify/SKILL.md +64 -0
  627. package/skills/stacks/backend/fiber/SKILL.md +68 -0
  628. package/skills/stacks/backend/flask/SKILL.md +71 -0
  629. package/skills/stacks/backend/gin/SKILL.md +68 -0
  630. package/skills/stacks/backend/graphql/SKILL.md +70 -0
  631. package/skills/stacks/backend/hono/SKILL.md +64 -0
  632. package/skills/stacks/backend/koa/SKILL.md +63 -0
  633. package/skills/stacks/backend/laravel/SKILL.md +73 -0
  634. package/skills/stacks/backend/nestjs/SKILL.md +70 -0
  635. package/skills/stacks/backend/nginx/SKILL.md +77 -0
  636. package/skills/stacks/backend/phoenix/SKILL.md +68 -0
  637. package/skills/stacks/backend/rails/SKILL.md +67 -0
  638. package/skills/stacks/backend/spring/SKILL.md +70 -0
  639. package/skills/stacks/backend/spring-boot/SKILL.md +70 -0
  640. package/skills/stacks/backend/symfony/SKILL.md +77 -0
  641. package/skills/stacks/container/containerd/SKILL.md +75 -0
  642. package/skills/stacks/container/docker/SKILL.md +90 -0
  643. package/skills/stacks/container/podman/SKILL.md +93 -0
  644. package/skills/stacks/database/cassandra/SKILL.md +74 -0
  645. package/skills/stacks/database/cockroachdb/SKILL.md +69 -0
  646. package/skills/stacks/database/dynamodb/SKILL.md +62 -0
  647. package/skills/stacks/database/mariadb/SKILL.md +71 -0
  648. package/skills/stacks/database/mongodb/SKILL.md +71 -0
  649. package/skills/stacks/database/mysql/SKILL.md +72 -0
  650. package/skills/stacks/database/neon/SKILL.md +68 -0
  651. package/skills/stacks/database/planetscale/SKILL.md +70 -0
  652. package/skills/stacks/database/postgresql/SKILL.md +81 -0
  653. package/skills/stacks/database/redis/SKILL.md +78 -0
  654. package/skills/stacks/database/sqlite/SKILL.md +70 -0
  655. package/skills/stacks/database/supabase/SKILL.md +79 -0
  656. package/skills/stacks/dataviz/chart-js/SKILL.md +72 -0
  657. package/skills/stacks/dataviz/d3/SKILL.md +77 -0
  658. package/skills/stacks/dataviz/grafana/SKILL.md +69 -0
  659. package/skills/stacks/dataviz/plotly/SKILL.md +71 -0
  660. package/skills/stacks/frontend/alpine/SKILL.md +75 -0
  661. package/skills/stacks/frontend/angular/SKILL.md +75 -0
  662. package/skills/stacks/frontend/backbone/SKILL.md +82 -0
  663. package/skills/stacks/frontend/ember/SKILL.md +85 -0
  664. package/skills/stacks/frontend/htmx/SKILL.md +73 -0
  665. package/skills/stacks/frontend/lit/SKILL.md +76 -0
  666. package/skills/stacks/frontend/preact/SKILL.md +74 -0
  667. package/skills/stacks/frontend/qwik/SKILL.md +65 -0
  668. package/skills/stacks/frontend/react/SKILL.md +77 -0
  669. package/skills/stacks/frontend/solidjs/SKILL.md +75 -0
  670. package/skills/stacks/frontend/svelte/SKILL.md +70 -0
  671. package/skills/stacks/frontend/vue/SKILL.md +69 -0
  672. package/skills/stacks/infra/ansible/SKILL.md +76 -0
  673. package/skills/stacks/infra/aws/SKILL.md +66 -0
  674. package/skills/stacks/infra/azure/SKILL.md +72 -0
  675. package/skills/stacks/infra/circleci/SKILL.md +78 -0
  676. package/skills/stacks/infra/cloudflare/SKILL.md +65 -0
  677. package/skills/stacks/infra/fly-io/SKILL.md +63 -0
  678. package/skills/stacks/infra/gcp/SKILL.md +66 -0
  679. package/skills/stacks/infra/jenkins/SKILL.md +73 -0
  680. package/skills/stacks/infra/kubernetes/SKILL.md +64 -0
  681. package/skills/stacks/infra/netlify/SKILL.md +60 -0
  682. package/skills/stacks/infra/railway/SKILL.md +63 -0
  683. package/skills/stacks/infra/tailscale/SKILL.md +65 -0
  684. package/skills/stacks/infra/terraform/SKILL.md +75 -0
  685. package/skills/stacks/infra/vagrant/SKILL.md +70 -0
  686. package/skills/stacks/infra/vercel/SKILL.md +60 -0
  687. package/skills/stacks/meta/astro/SKILL.md +64 -0
  688. package/skills/stacks/meta/docusaurus/SKILL.md +71 -0
  689. package/skills/stacks/meta/eleventy/SKILL.md +69 -0
  690. package/skills/stacks/meta/gatsby/SKILL.md +63 -0
  691. package/skills/stacks/meta/hugo/SKILL.md +73 -0
  692. package/skills/stacks/meta/jekyll/SKILL.md +70 -0
  693. package/skills/stacks/meta/nextjs/SKILL.md +62 -0
  694. package/skills/stacks/meta/nuxt/SKILL.md +66 -0
  695. package/skills/stacks/meta/remix/SKILL.md +67 -0
  696. package/skills/stacks/meta/sveltekit/SKILL.md +70 -0
  697. package/skills/stacks/meta/vite/SKILL.md +63 -0
  698. package/skills/stacks/mobile/android/SKILL.md +77 -0
  699. package/skills/stacks/mobile/flutter/SKILL.md +77 -0
  700. package/skills/stacks/mobile/ionic/SKILL.md +72 -0
  701. package/skills/stacks/mobile/nativescript/SKILL.md +71 -0
  702. package/skills/stacks/mobile/react-native/SKILL.md +75 -0
  703. package/skills/stacks/mobile/xamarin/SKILL.md +73 -0
  704. package/skills/stacks/orm/diesel/SKILL.md +72 -0
  705. package/skills/stacks/orm/django-orm/SKILL.md +58 -0
  706. package/skills/stacks/orm/drizzle/SKILL.md +67 -0
  707. package/skills/stacks/orm/gorm/SKILL.md +73 -0
  708. package/skills/stacks/orm/knex/SKILL.md +64 -0
  709. package/skills/stacks/orm/mongoose/SKILL.md +64 -0
  710. package/skills/stacks/orm/prisma/SKILL.md +64 -0
  711. package/skills/stacks/orm/sequelize/SKILL.md +65 -0
  712. package/skills/stacks/orm/sqlalchemy/SKILL.md +71 -0
  713. package/skills/stacks/orm/typeorm/SKILL.md +70 -0
  714. package/skills/stacks/queue/bullmq/SKILL.md +69 -0
  715. package/skills/stacks/queue/celery/SKILL.md +68 -0
  716. package/skills/stacks/queue/kafka/SKILL.md +66 -0
  717. package/skills/stacks/queue/nats/SKILL.md +66 -0
  718. package/skills/stacks/queue/rabbitmq/SKILL.md +64 -0
  719. package/skills/stacks/queue/redis/SKILL.md +66 -0
  720. package/skills/stacks/runtime/beam/SKILL.md +72 -0
  721. package/skills/stacks/runtime/bun/SKILL.md +80 -0
  722. package/skills/stacks/runtime/deno/SKILL.md +74 -0
  723. package/skills/stacks/runtime/dotnet/SKILL.md +64 -0
  724. package/skills/stacks/runtime/jvm/SKILL.md +66 -0
  725. package/skills/stacks/runtime/node/SKILL.md +70 -0
  726. package/skills/stacks/runtime/pypy/SKILL.md +69 -0
  727. package/skills/stacks/runtime/python3/SKILL.md +70 -0
  728. package/skills/stacks/styling/bootstrap/SKILL.md +74 -0
  729. package/skills/stacks/styling/bulma/SKILL.md +80 -0
  730. package/skills/stacks/styling/chakra-ui/SKILL.md +61 -0
  731. package/skills/stacks/styling/css-modules/SKILL.md +54 -0
  732. package/skills/stacks/styling/mui/SKILL.md +60 -0
  733. package/skills/stacks/styling/sass/SKILL.md +63 -0
  734. package/skills/stacks/styling/shadcn-ui/SKILL.md +58 -0
  735. package/skills/stacks/styling/styled-components/SKILL.md +62 -0
  736. package/skills/stacks/styling/tailwind/SKILL.md +59 -0
  737. package/skills/stacks/styling/unocss/SKILL.md +64 -0
  738. package/skills/stacks/styling/vanilla-extract/SKILL.md +64 -0
  739. package/skills/stacks/styling/vuetify/SKILL.md +89 -0
  740. package/skills/stacks/testing/cypress/SKILL.md +68 -0
  741. package/skills/stacks/testing/jasmine/SKILL.md +67 -0
  742. package/skills/stacks/testing/jest/SKILL.md +67 -0
  743. package/skills/stacks/testing/mocha/SKILL.md +71 -0
  744. package/skills/stacks/testing/playwright/SKILL.md +68 -0
  745. package/skills/stacks/testing/puppeteer/SKILL.md +70 -0
  746. package/skills/stacks/testing/selenium/SKILL.md +70 -0
  747. package/skills/stacks/testing/vitest/SKILL.md +68 -0
@@ -0,0 +1,73 @@
1
+ ---
2
+ name: firebase
3
+ description: Firebase is Google's Backend-as-a-Service platform (Auth, Firestore, Realtime Database, Cloud Functions, Hosting, Cloud Storage, FCM). Consult when building serverless app backends, adding Google/email auth, syncing NoSQL data in real time, deploying static/SSR hosting, writing Cloud Functions, or using the Firebase CLI/emulator suite.
4
+ domain: stack
5
+ category: baas
6
+ tags: [firebase, baas, google, firestore, auth, serverless, cloud-functions]
7
+ official_sources:
8
+ - https://firebase.google.com/docs
9
+ - https://github.com/firebase/firebase-tools
10
+ - https://www.npmjs.com/package/firebase-tools
11
+ verified: 2026-06-17
12
+ ---
13
+
14
+ # Firebase
15
+
16
+ ## Overview
17
+ Firebase is Google's Backend-as-a-Service platform that bundles authentication, NoSQL databases (Cloud Firestore and the older Realtime Database), serverless Cloud Functions, static/SSR Hosting, Cloud Storage, and messaging behind client SDKs and a single CLI. It removes the need to run your own backend for most app features. Read this when adding auth, real-time data sync, file storage, push notifications, or deploying functions/hosting from the Firebase CLI.
18
+
19
+ ## Official sources
20
+ - Docs: https://firebase.google.com/docs
21
+ - Repo: https://github.com/firebase/firebase-tools
22
+ - Install: https://www.npmjs.com/package/firebase-tools
23
+
24
+ ## Install / setup
25
+ ```bash
26
+ npm install -g firebase-tools
27
+ firebase login
28
+ firebase init
29
+ ```
30
+ Source: https://firebase.google.com/docs/cli
31
+
32
+ ## Core concepts
33
+ - **Project** — top-level container; one project holds all Firebase products and maps to a Google Cloud project.
34
+ - **Cloud Firestore** — scalable document/collection NoSQL DB with real-time listeners and offline cache; preferred over Realtime Database for new apps.
35
+ - **Authentication** — managed identity (email/password, Google, Apple, phone, anonymous, OIDC/SAML) issuing ID tokens verified by Security Rules.
36
+ - **Security Rules** — declarative server-side access control evaluated per request for Firestore, Storage, and Realtime Database.
37
+ - **Cloud Functions** — serverless Node/Python handlers triggered by HTTPS, Firestore/Auth events, schedules, or Pub/Sub.
38
+ - **Hosting** — global CDN for static assets and SSR frameworks (Next.js/Angular), wired to functions via rewrites.
39
+ - **Emulator Suite** — local emulators for Auth, Firestore, Functions, Hosting for offline development and CI.
40
+
41
+ ## Best practices
42
+ - Write and test Security Rules first; never rely on client-side checks alone (https://firebase.google.com/docs/rules).
43
+ - Develop against the Emulator Suite before touching production data (https://firebase.google.com/docs/emulator-suite).
44
+ - Model Firestore data for your queries — denormalize and avoid unbounded collection scans (https://firebase.google.com/docs/firestore/data-model).
45
+ - Keep API keys/config public but lock data with Rules and App Check (https://firebase.google.com/docs/app-check).
46
+
47
+ ## Common pitfalls
48
+ - Default-open or test-mode Security Rules left in production → leaked/writable data; deploy least-privilege rules before launch.
49
+ - Missing composite indexes for compound queries → query fails at runtime; create the suggested index from the error link.
50
+ - Per-document write contention on hot Firestore documents → throttling; shard counters or distribute writes.
51
+
52
+ ## Examples
53
+ ```javascript
54
+ import { initializeApp } from "firebase/app";
55
+ import { getFirestore, collection, addDoc } from "firebase/firestore";
56
+
57
+ const app = initializeApp({ projectId: "demo", apiKey: "..." });
58
+ const db = getFirestore(app);
59
+
60
+ await addDoc(collection(db, "messages"), {
61
+ text: "hello",
62
+ createdAt: Date.now(),
63
+ });
64
+ ```
65
+
66
+ ## Further reading
67
+ - https://firebase.google.com/docs/firestore — Cloud Firestore guide
68
+ - https://firebase.google.com/docs/functions — Cloud Functions reference
69
+ - https://firebase.google.com/docs/cli — Firebase CLI reference
70
+
71
+ ## Related skills
72
+ - ../appwrite — open-source self-hosted BaaS alternative
73
+ - ../amplify — AWS fullstack BaaS with similar auth/data/functions
@@ -0,0 +1,71 @@
1
+ ---
2
+ name: heroku
3
+ description: Heroku is a Git-push Platform-as-a-Service for deploying and running apps (Node, Python, Ruby, Java, Go, PHP) with managed add-ons like Postgres and Redis. Consult when deploying an app via git push, configuring buildpacks/Procfile/dynos, setting config vars, scaling processes, provisioning Postgres/Redis add-ons, or using the Heroku CLI.
4
+ domain: stack
5
+ category: baas
6
+ tags: [heroku, paas, deployment, dynos, buildpacks, postgres, git]
7
+ official_sources:
8
+ - https://devcenter.heroku.com/
9
+ - https://github.com/heroku/cli
10
+ - https://devcenter.heroku.com/articles/heroku-cli
11
+ verified: 2026-06-17
12
+ ---
13
+
14
+ # Heroku
15
+
16
+ ## Overview
17
+ Heroku is a managed Platform-as-a-Service that runs your application code on isolated containers called dynos, deployed by pushing to a Git remote. It detects your language via buildpacks, runs processes declared in a `Procfile`, and offers a marketplace of add-ons (Heroku Postgres, Redis, etc.) so you avoid managing servers. Read this when deploying via `git push heroku`, defining dynos/process types, managing config vars and add-ons, or scaling with the Heroku CLI.
18
+
19
+ ## Official sources
20
+ - Docs: https://devcenter.heroku.com/
21
+ - Repo: https://github.com/heroku/cli
22
+ - Install: https://devcenter.heroku.com/articles/heroku-cli
23
+
24
+ ## Install / setup
25
+ ```bash
26
+ heroku login
27
+ heroku create
28
+ git push heroku main
29
+ ```
30
+ Source: https://devcenter.heroku.com/articles/getting-started-with-nodejs (install CLI via https://devcenter.heroku.com/articles/heroku-cli)
31
+
32
+ ## Core concepts
33
+ - **Dyno** — lightweight isolated container running one process type; scaled horizontally/vertically by dyno type.
34
+ - **Buildpack** — language-specific scripts that detect and compile your app into a runnable slug.
35
+ - **Procfile** — root-level file declaring process types (`web:`, `worker:`) and their start commands.
36
+ - **Config vars** — environment variables set with `heroku config:set`, the standard place for secrets/settings.
37
+ - **Add-ons** — managed services (Heroku Postgres, Heroku Redis, etc.) attached and exposed via config vars.
38
+ - **Release** — immutable deploy unit (slug + config); rolled back with `heroku rollback`.
39
+ - **Stack** — the base OS/runtime image (e.g. `heroku-24`) your dynos run on.
40
+
41
+ ## Best practices
42
+ - Store all configuration and secrets in config vars, never in the repo (https://devcenter.heroku.com/articles/config-vars).
43
+ - Build stateless processes following the Twelve-Factor App methodology (https://12factor.net).
44
+ - Run DB migrations in a `release` Procfile phase, not at boot (https://devcenter.heroku.com/articles/release-phase).
45
+ - Provision Heroku Postgres as an add-on instead of an ephemeral local DB (https://devcenter.heroku.com/articles/heroku-postgresql).
46
+
47
+ ## Common pitfalls
48
+ - Writing to the dyno's local filesystem → data lost on restart/deploy (ephemeral); use Postgres/S3 add-ons instead.
49
+ - Web process not binding to `$PORT` → boot timeout / R10 error; bind your server to `process.env.PORT`.
50
+ - Free/Eco dynos sleeping or missing a `web` process type → app returns errors; ensure a valid `Procfile`.
51
+
52
+ ## Examples
53
+ ```procfile
54
+ web: node index.js
55
+ worker: node worker.js
56
+ release: node ./scripts/migrate.js
57
+ ```
58
+ ```bash
59
+ heroku config:set NODE_ENV=production
60
+ heroku addons:create heroku-postgresql:essential-0
61
+ heroku ps:scale web=2
62
+ ```
63
+
64
+ ## Further reading
65
+ - https://devcenter.heroku.com/categories/deployment — deployment methods and Git workflow
66
+ - https://devcenter.heroku.com/articles/dynos — dyno types, scaling, and lifecycle
67
+ - https://devcenter.heroku.com/articles/procfile — Procfile and process types reference
68
+
69
+ ## Related skills
70
+ - ../firebase — BaaS with managed hosting and functions
71
+ - ../amplify — AWS fullstack hosting + backend platform
@@ -0,0 +1,77 @@
1
+ ---
2
+ name: actix
3
+ description: Powerful, fast Rust web framework (actix-web) on Tokio with HTTP/1 and HTTP/2, routing, and middleware; consult when building Rust HTTP services.
4
+ domain: stack
5
+ category: backend
6
+ tags: [rust, actix-web, tokio, http, web-framework]
7
+ official_sources:
8
+ - https://actix.rs/docs/
9
+ - https://github.com/actix/actix-web
10
+ verified: 2026-06-16
11
+ ---
12
+
13
+ # Actix Web
14
+
15
+ ## Overview
16
+ actix-web is a powerful, pragmatic, and extremely fast web framework for Rust. It supports HTTP/1.x and HTTP/2, streaming and pipelining, powerful request routing with optional macros, and comprehensive middleware. Built on Tokio and running on stable Rust, it ranks among the fastest web frameworks in TechEmpower benchmarks. Read this when building Rust HTTP APIs and services.
17
+
18
+ ## Official sources
19
+ - Docs: https://actix.rs/docs/
20
+ - Repo: https://github.com/actix/actix-web
21
+ - Install / download: https://actix.rs/docs/getting-started/
22
+
23
+ ## Install / setup
24
+ ```bash
25
+ cargo new hello-world
26
+ cd hello-world
27
+ ```
28
+ ```toml
29
+ # Cargo.toml — add the dependency (requires a recent stable Rust)
30
+ [dependencies]
31
+ actix-web = "4"
32
+ ```
33
+
34
+ ## Core concepts
35
+ - App & HttpServer: an `App` registers routes and shared state; `HttpServer` binds an address and runs the app, often across multiple worker threads.
36
+ - Handlers (extractors): async functions whose typed arguments (path, query, JSON, state) are extracted from the request automatically.
37
+ - Routing: route macros (`#[get("/path")]`) or builder methods (`.route(...)`, `.service(...)`) map paths and methods to handlers.
38
+ - Application state: shared data wrapped in `web::Data<T>` injected into handlers; it must be thread-safe.
39
+ - Middleware: wraps handlers for cross-cutting concerns (logging, auth, compression) via the `wrap` API.
40
+ - Responders: handler return types implementing `Responder` are converted into HTTP responses.
41
+
42
+ ## Best practices
43
+ - Pin `actix-web = "4"` and use a recent stable Rust toolchain as the docs require (https://actix.rs/docs/getting-started/).
44
+ - Share state with `web::Data` instead of globals so it is cleanly injected and thread-safe.
45
+ - Use typed extractors (Json, Path, Query) so deserialization and validation happen at the boundary.
46
+ - Add the Logger middleware and structured error handling rather than panicking in handlers.
47
+
48
+ ## Common pitfalls
49
+ - Doing blocking work directly in an async handler → blocks the worker; offload with `web::block` or an async client.
50
+ - Expecting non-Send state to be shared across workers → `App` state must be thread-safe; wrap shared data in `web::Data`.
51
+ - Confusing the actor framework `actix` with the web framework `actix-web` → for web servers depend on `actix-web`.
52
+
53
+ ## Examples
54
+ ```rust
55
+ use actix_web::{get, App, HttpServer, Responder};
56
+
57
+ #[get("/")]
58
+ async fn hello() -> impl Responder {
59
+ "Hello, World!"
60
+ }
61
+
62
+ #[actix_web::main]
63
+ async fn main() -> std::io::Result<()> {
64
+ HttpServer::new(|| App::new().service(hello))
65
+ .bind(("127.0.0.1", 8080))?
66
+ .run()
67
+ .await
68
+ }
69
+ ```
70
+
71
+ ## Further reading
72
+ - https://actix.rs/docs/getting-started/ — Getting started
73
+ - https://actix.rs/docs/extractors/ — Type-safe extractors
74
+
75
+ ## Related skills
76
+ - ../gin — comparable high-performance framework in Go
77
+ - ../aspnet-core — cross-platform compiled-language web framework (.NET)
@@ -0,0 +1,65 @@
1
+ ---
2
+ name: adonisjs
3
+ description: TypeScript-first full-stack Node MVC framework with testing, ORM, and official packages; consult when building AdonisJS web apps or API servers.
4
+ domain: stack
5
+ category: backend
6
+ tags: [nodejs, typescript, adonisjs, mvc, web-framework]
7
+ official_sources:
8
+ - https://docs.adonisjs.com/
9
+ - https://github.com/adonisjs/core
10
+ verified: 2026-06-16
11
+ ---
12
+
13
+ # AdonisJS
14
+
15
+ ## Overview
16
+ AdonisJS is a TypeScript-first web framework for building web apps and API servers on Node.js. It ships a full-stack MVC structure with testing support, modern tooling, and an ecosystem of official packages, emphasizing ergonomics and speed. Read this when building or maintaining an AdonisJS backend.
17
+
18
+ ## Official sources
19
+ - Docs: https://docs.adonisjs.com/
20
+ - Repo: https://github.com/adonisjs/core
21
+ - Install / download: https://docs.adonisjs.com/guides/getting-started/installation
22
+
23
+ ## Install / setup
24
+ ```bash
25
+ # Requires Node.js >= 24.x and npm >= 11.x
26
+ npm init adonisjs@latest [project-name]
27
+ ```
28
+
29
+ ## Core concepts
30
+ - IoC container & providers: services are registered via providers and resolved from a dependency-injection container.
31
+ - Routing & controllers: routes in `start/routes.ts` map URLs to controller methods; route groups apply shared prefixes and middleware.
32
+ - Middleware: composable request handlers run before route handlers for cross-cutting concerns (auth, body parsing).
33
+ - Lucid ORM: the official Active Record-style ORM with models, migrations, and query building.
34
+ - HttpContext: the per-request object (`ctx`) exposing request, response, and session passed to controllers.
35
+ - Config & environment: typed configuration and validated environment variables via the framework's config system.
36
+
37
+ ## Best practices
38
+ - Use the official starter and ecosystem packages (auth, Lucid, validation) rather than ad-hoc libraries, since they integrate with the IoC container (https://docs.adonisjs.com/guides/getting-started/installation).
39
+ - Keep controllers thin and move logic into services resolved from the container.
40
+ - Use Lucid migrations for schema changes so databases stay reproducible.
41
+ - Validate request input with the built-in validator before using it.
42
+
43
+ ## Common pitfalls
44
+ - Running on an unsupported Node version → the installer requires Node.js >= 24.x and npm >= 11.x; upgrade before installing.
45
+ - Bypassing the IoC container by instantiating services manually → register and resolve them so dependencies and lifecycles are managed.
46
+ - Skipping input validation → validate with the framework's validator instead of trusting raw request data.
47
+
48
+ ## Examples
49
+ ```ts
50
+ // start/routes.ts
51
+ import router from '@adonisjs/core/services/router'
52
+
53
+ router.get('/users/:id', async ({ params }) => {
54
+ return { id: params.id }
55
+ })
56
+ ```
57
+
58
+ ## Further reading
59
+ - https://docs.adonisjs.com/guides/getting-started/installation — Installation
60
+ - https://docs.adonisjs.com/guides/basics/routing — Routing
61
+ - https://lucid.adonisjs.com/ — Lucid ORM
62
+
63
+ ## Related skills
64
+ - ../laravel — the PHP framework AdonisJS's conventions are often compared to
65
+ - ../fiber — Express-lineage framework in Go
@@ -0,0 +1,75 @@
1
+ ---
2
+ name: aspnet-core
3
+ description: Cross-platform, open-source .NET web framework for cloud apps, web APIs, and Blazor; consult when building or maintaining ASP.NET Core backends.
4
+ domain: stack
5
+ category: backend
6
+ tags: [dotnet, csharp, aspnet-core, web-api, web-framework]
7
+ official_sources:
8
+ - https://learn.microsoft.com/aspnet/core/
9
+ - https://github.com/dotnet/aspnetcore
10
+ verified: 2026-06-16
11
+ ---
12
+
13
+ # ASP.NET Core
14
+
15
+ ## Overview
16
+ ASP.NET Core is a cross-platform, open-source .NET framework for building modern cloud-based web applications on Windows, macOS, or Linux. It supports web apps, REST/Minimal APIs, gRPC, real-time apps with SignalR, and the Blazor frontend model. Read this when building .NET HTTP services or web apps. Requires the .NET SDK.
17
+
18
+ ## Official sources
19
+ - Docs: https://learn.microsoft.com/aspnet/core/
20
+ - Repo: https://github.com/dotnet/aspnetcore
21
+ - Install / download: https://learn.microsoft.com/aspnet/core/getting-started (SDK: https://dotnet.microsoft.com/download/dotnet)
22
+
23
+ ## Install / setup
24
+ ```bash
25
+ # Install the latest .NET SDK first (https://dotnet.microsoft.com/download/dotnet)
26
+
27
+ # Create a Blazor Web App
28
+ dotnet new blazor -o BlazorSample
29
+ cd BlazorSample
30
+
31
+ # Run with hot reload
32
+ dotnet watch
33
+ ```
34
+ ```bash
35
+ # Or create a Razor Pages web app
36
+ dotnet new webapp -o RazorPagesSample
37
+ ```
38
+
39
+ ## Core concepts
40
+ - Host & startup: `WebApplication.CreateBuilder` configures services and the request pipeline; `app.Run()` starts the server.
41
+ - Middleware pipeline: ordered components process each request/response (routing, auth, static files); order matters.
42
+ - Dependency injection: a built-in DI container registers services with lifetimes (singleton, scoped, transient) consumed via constructor injection.
43
+ - Routing & endpoints: Minimal APIs, controllers, and Razor Pages map URLs to handlers via endpoint routing.
44
+ - Configuration & options: layered configuration (appsettings.json, env vars, user secrets) bound to strongly typed options.
45
+ - Blazor & Razor: component-based UI (Blazor) and the Razor syntax mixing HTML with C# for server-rendered pages.
46
+
47
+ ## Best practices
48
+ - Use `dotnet watch` during development for hot reload of markup and code (https://learn.microsoft.com/aspnet/core/getting-started).
49
+ - Register dependencies in the DI container and inject them rather than constructing them manually.
50
+ - Order middleware deliberately; place routing, authentication, and authorization in the documented sequence.
51
+ - Use the configuration/options system and user secrets for settings instead of hardcoding values.
52
+
53
+ ## Common pitfalls
54
+ - Misordering middleware (e.g. authorization before routing) → requests bypass or mishandle auth; follow the documented pipeline order.
55
+ - Choosing the wrong project template → `dotnet new blazor` scaffolds Blazor, `dotnet new webapp` scaffolds Razor Pages; pick what matches your app.
56
+ - Storing secrets in appsettings.json committed to source control → use user secrets in development and a secret store in production.
57
+
58
+ ## Examples
59
+ ```csharp
60
+ var builder = WebApplication.CreateBuilder(args);
61
+ var app = builder.Build();
62
+
63
+ app.MapGet("/ping", () => "pong");
64
+
65
+ app.Run();
66
+ ```
67
+
68
+ ## Further reading
69
+ - https://learn.microsoft.com/aspnet/core/getting-started — Get started
70
+ - https://learn.microsoft.com/aspnet/core/tutorials/min-web-api — Minimal API tutorial
71
+ - https://learn.microsoft.com/aspnet/core/fundamentals/ — Fundamentals (DI, middleware, configuration)
72
+
73
+ ## Related skills
74
+ - ../actix — high-performance compiled-language web framework (Rust)
75
+ - ../laravel — full-stack web framework alternative (PHP)
@@ -0,0 +1,76 @@
1
+ ---
2
+ name: codeigniter
3
+ description: CodeIgniter 4 — a small, fast PHP MVC framework for building web apps and APIs with minimal configuration. Consult when scaffolding a CodeIgniter 4 app starter, defining routes and controllers, using the Query Builder or models, building RESTful resources, or running the spark CLI and server.
4
+ domain: stack
5
+ category: backend
6
+ tags: [codeigniter, php, mvc, composer, rest, query-builder, backend]
7
+ official_sources:
8
+ - https://codeigniter.com/user_guide/
9
+ - https://github.com/codeigniter4/CodeIgniter4
10
+ - https://codeigniter.com/user_guide/installation/installing_composer.html
11
+ verified: 2026-06-17
12
+ ---
13
+
14
+ # CodeIgniter
15
+
16
+ ## Overview
17
+ CodeIgniter 4 is a lightweight PHP MVC framework prized for a small footprint, fast performance, and near-zero configuration. It provides routing, controllers, models with a fluent Query Builder, validation, and the `spark` CLI without imposing heavy conventions. Read this when building a small-to-mid PHP app or API where you want explicit control and minimal boilerplate.
18
+
19
+ ## Official sources
20
+ - Docs: https://codeigniter.com/user_guide/
21
+ - Repo: https://github.com/codeigniter4/CodeIgniter4
22
+ - Install: https://codeigniter.com/user_guide/installation/installing_composer.html
23
+
24
+ ## Install / setup
25
+ ```bash
26
+ composer create-project codeigniter4/appstarter project-root
27
+ cd project-root && php spark serve
28
+ ```
29
+ Source: https://codeigniter.com/user_guide/installation/installing_composer.html (creates `project-root` with the latest framework as a dependency; `spark serve` starts the dev server on :8080).
30
+
31
+ ## Core concepts
32
+ - **MVC structure** — `app/Controllers`, `app/Models`, `app/Views` hold the application code.
33
+ - **Routing** — `app/Config/Routes.php` maps URLs to controller methods; auto-routing is opt-in.
34
+ - **Controllers** — extend `BaseController`; return strings, views, or responses.
35
+ - **Models & Entities** — extend `CodeIgniter\Model` for CRUD, validation, and result hydration.
36
+ - **Query Builder** — chainable, DB-agnostic query API via `$this->db->table(...)`.
37
+ - **spark CLI** — `php spark` runs migrations, generators, the dev server, and custom commands.
38
+ - **Filters** — request/response middleware (auth, CSRF, CORS) configured in `Config\Filters`.
39
+ - **Environment config** — `.env` plus `app/Config/*` classes; set `CI_ENVIRONMENT`.
40
+
41
+ ## Best practices
42
+ - Disable auto-routing and define explicit routes for security (https://codeigniter.com/user_guide/incoming/routing.html).
43
+ - Use `ResourceController`/`ResourcePresenter` for RESTful endpoints (https://codeigniter.com/user_guide/incoming/restful.html).
44
+ - Configure the database and base URL via `.env`, keep it out of version control (https://codeigniter.com/user_guide/general/configuration.html).
45
+ - Use the Model layer and validation rather than raw queries for user input (https://codeigniter.com/user_guide/models/model.html).
46
+
47
+ ## Common pitfalls
48
+ - Leaving auto-routing (legacy) enabled exposes unintended methods → set routing to defined routes only.
49
+ - Wrong `baseURL` in `app/Config/App.php`/`.env` breaks asset and redirect URLs → set it correctly per environment.
50
+ - Forgetting `CI_ENVIRONMENT=production` leaves verbose error output on → set it for prod.
51
+
52
+ ## Examples
53
+ ```php
54
+ namespace App\Controllers;
55
+
56
+ use CodeIgniter\RESTful\ResourceController;
57
+
58
+ class Users extends ResourceController
59
+ {
60
+ protected $modelName = \App\Models\UserModel::class;
61
+ protected $format = 'json';
62
+
63
+ public function show($id = null)
64
+ {
65
+ return $this->respond($this->model->find($id));
66
+ }
67
+ }
68
+ ```
69
+
70
+ ## Further reading
71
+ - https://codeigniter.com/user_guide/intro/index.html — framework overview and welcome
72
+ - https://codeigniter.com/user_guide/database/query_builder.html — Query Builder reference
73
+
74
+ ## Related skills
75
+ - ../symfony — heavier, component-based PHP framework
76
+ - ../nginx — front CodeIgniter with Nginx + PHP-FPM
@@ -0,0 +1,62 @@
1
+ ---
2
+ name: django
3
+ description: Full-featured, batteries-included Python web framework with ORM, admin, and auth; consult for rapid, secure server-rendered apps and APIs.
4
+ domain: stack
5
+ category: backend
6
+ tags: [django, python, orm, mvc, web-framework, backend]
7
+ official_sources:
8
+ - https://docs.djangoproject.com/en/stable/
9
+ - https://github.com/django/django
10
+ verified: 2026-06-16
11
+ ---
12
+
13
+ # Django
14
+
15
+ ## Overview
16
+ Django is a high-level Python web framework that encourages rapid development and clean, pragmatic design — "the web framework for perfectionists with deadlines." It ships batteries-included: an ORM, automatic admin site, authentication, forms, templating, and security defaults. Read this when building data-driven Python web apps or APIs where you want strong conventions and built-in tooling.
17
+
18
+ ## Official sources
19
+ - Docs: https://docs.djangoproject.com/en/stable/
20
+ - Repo: https://github.com/django/django
21
+ - Install: https://docs.djangoproject.com/en/stable/topics/install/
22
+
23
+ ## Install / setup
24
+ ```bash
25
+ python -m pip install Django
26
+ ```
27
+ On Windows the docs show `py -m pip install Django`. (Source: https://docs.djangoproject.com/en/stable/topics/install/)
28
+
29
+ ## Core concepts
30
+ - **Projects vs apps** — a project is the deployable site; apps are reusable, focused components registered in `INSTALLED_APPS`.
31
+ - **MTV pattern** — Django's take on MVC: Models (data), Templates (presentation), Views (request handling).
32
+ - **ORM & migrations** — models map to DB tables; `makemigrations` / `migrate` evolve the schema.
33
+ - **URLconf & views** — `urls.py` routes paths to view functions/classes that return `HttpResponse`.
34
+ - **Admin site** — an auto-generated CRUD interface for registered models.
35
+ - **Settings & middleware** — central `settings.py` config plus a middleware stack for cross-cutting request/response processing.
36
+
37
+ ## Best practices
38
+ - Run `makemigrations` and `migrate` to manage schema changes; never edit the database schema out of band (https://docs.djangoproject.com/en/stable/topics/migrations/).
39
+ - Keep secrets and environment-specific values out of source; review the deployment checklist before going live (https://docs.djangoproject.com/en/stable/howto/deployment/checklist/).
40
+ - Use the ORM's `select_related` / `prefetch_related` to avoid N+1 queries (https://docs.djangoproject.com/en/stable/topics/db/optimization/).
41
+ - Rely on built-in protections (CSRF, XSS escaping, SQL parameterization) rather than rolling your own (https://docs.djangoproject.com/en/stable/topics/security/).
42
+
43
+ ## Common pitfalls
44
+ - Running with `DEBUG = True` in production → leaks tracebacks and settings; set `DEBUG = False` and configure `ALLOWED_HOSTS` (https://docs.djangoproject.com/en/stable/ref/settings/#debug).
45
+ - Triggering N+1 queries by iterating querysets that lazily hit related objects → use `select_related`/`prefetch_related` to batch the joins.
46
+
47
+ ## Examples
48
+ ```python
49
+ # views.py
50
+ from django.http import HttpResponse
51
+
52
+ def index(request):
53
+ return HttpResponse("Hello, world.")
54
+ ```
55
+
56
+ ## Further reading
57
+ - https://docs.djangoproject.com/en/stable/intro/tutorial01/ — official tutorial
58
+ - https://docs.djangoproject.com/en/stable/howto/deployment/checklist/ — deployment checklist
59
+
60
+ ## Related skills
61
+ - ../flask — lighter-weight Python alternative
62
+ - ../fastapi — async, typed Python API framework
@@ -0,0 +1,65 @@
1
+ ---
2
+ name: express
3
+ description: Minimal, unopinionated, ubiquitous Node.js web framework with middleware and routing; consult for lightweight HTTP servers and APIs.
4
+ domain: stack
5
+ category: backend
6
+ tags: [express, nodejs, http, middleware, routing, backend]
7
+ official_sources:
8
+ - https://expressjs.com/
9
+ - https://github.com/expressjs/express
10
+ verified: 2026-06-16
11
+ ---
12
+
13
+ # Express
14
+
15
+ ## Overview
16
+ Express is a fast, unopinionated, minimalist web framework for Node.js. It provides a thin layer of routing and middleware over Node's HTTP server, leaving structure and architecture to the developer. Read this when you want a small, well-understood foundation for an HTTP server or API, or when working under a framework (like NestJS) that uses Express underneath.
17
+
18
+ ## Official sources
19
+ - Docs: https://expressjs.com/
20
+ - Repo: https://github.com/expressjs/express
21
+ - Install: https://expressjs.com/en/starter/installing.html
22
+
23
+ ## Install / setup
24
+ ```bash
25
+ npm install express
26
+ ```
27
+ The starter guide first creates a project with `mkdir myapp`, `cd myapp`, then `npm init`. (Source: https://expressjs.com/en/starter/installing.html)
28
+
29
+ ## Core concepts
30
+ - **Application** — `express()` creates an app you configure with routes, middleware, and settings.
31
+ - **Middleware** — functions with the `(req, res, next)` signature that run in order; the backbone of Express (parsing, auth, logging).
32
+ - **Routing** — `app.get()`, `app.post()`, and `express.Router()` map HTTP methods + paths to handlers.
33
+ - **Request / Response** — `req` and `res` objects expose params, query, body, and response helpers (`res.json`, `res.status`, `res.send`).
34
+ - **Error-handling middleware** — special middleware with four args `(err, req, res, next)` catches errors.
35
+
36
+ ## Best practices
37
+ - Order middleware deliberately; body parsers and auth must run before the routes that depend on them (https://expressjs.com/en/guide/using-middleware.html).
38
+ - Split routes into `express.Router()` modules for maintainability (https://expressjs.com/en/guide/routing.html).
39
+ - Define a single error-handling middleware last to centralize failures (https://expressjs.com/en/guide/error-handling.html).
40
+ - Follow the production best-practices guide (use a reverse proxy, set `NODE_ENV=production`, handle exceptions) (https://expressjs.com/en/advanced/best-practice-performance.html).
41
+
42
+ ## Common pitfalls
43
+ - In Express 4, async handler rejections were not caught automatically; Express 5 now forwards rejected promises to the error handler, so verify which major version you target (https://expressjs.com/en/guide/migrating-5.html).
44
+ - Express 5 changed path matching: bare `*` wildcards must be named (e.g. `/*splat`) and several legacy methods/signatures were removed (`app.del`, `res.send(body, status)`); review the migration guide before upgrading (https://expressjs.com/en/guide/migrating-5.html).
45
+
46
+ ## Examples
47
+ ```javascript
48
+ const express = require('express');
49
+ const app = express();
50
+
51
+ app.get('/', (req, res) => {
52
+ res.send('Hello World');
53
+ });
54
+
55
+ app.listen(3000);
56
+ ```
57
+
58
+ ## Further reading
59
+ - https://expressjs.com/en/guide/migrating-5.html — Express 4 → 5 migration
60
+ - https://expressjs.com/en/advanced/best-practice-security.html — security best practices
61
+
62
+ ## Related skills
63
+ - ../fastify — higher-performance alternative
64
+ - ../koa — successor framework from the original Express team
65
+ - ../nestjs — opinionated framework built on Express by default
@@ -0,0 +1,64 @@
1
+ ---
2
+ name: fastapi
3
+ description: Modern async, type-hint-driven Python API framework with automatic validation and OpenAPI docs; consult for high-performance typed APIs.
4
+ domain: stack
5
+ category: backend
6
+ tags: [fastapi, python, async, pydantic, openapi, backend]
7
+ official_sources:
8
+ - https://fastapi.tiangolo.com/
9
+ - https://github.com/fastapi/fastapi
10
+ verified: 2026-06-16
11
+ ---
12
+
13
+ # FastAPI
14
+
15
+ ## Overview
16
+ FastAPI is a modern, high-performance Python web framework for building APIs using standard Python type hints. Type annotations drive request parsing, validation (via Pydantic), and automatic interactive documentation (Swagger UI and ReDoc) generated from OpenAPI. Read this when building typed, async-capable APIs where automatic validation and docs save significant boilerplate.
17
+
18
+ ## Official sources
19
+ - Docs: https://fastapi.tiangolo.com/
20
+ - Repo: https://github.com/fastapi/fastapi
21
+ - Install: https://fastapi.tiangolo.com/#installation
22
+
23
+ ## Install / setup
24
+ ```bash
25
+ pip install "fastapi[standard]"
26
+ ```
27
+ The docs note the quotes around `"fastapi[standard]"` are needed so the command works in all terminals. (Source: https://fastapi.tiangolo.com/#installation)
28
+
29
+ ## Core concepts
30
+ - **Path operations** — decorators like `@app.get("/")` declare routes on a `FastAPI()` app.
31
+ - **Type hints → validation** — function parameter and Pydantic model types define and validate request bodies, query/path params automatically.
32
+ - **Pydantic models** — declare request/response schemas as Python classes; FastAPI validates and serializes against them.
33
+ - **Dependency injection** — `Depends()` injects reusable dependencies (auth, DB sessions, params) into path operations.
34
+ - **Async support** — define handlers as `async def` to use `await` for non-blocking I/O.
35
+ - **Automatic docs** — OpenAPI schema plus Swagger UI (`/docs`) and ReDoc (`/redoc`) are generated from your types.
36
+
37
+ ## Best practices
38
+ - Model request and response bodies with Pydantic so validation and serialization are declarative (https://fastapi.tiangolo.com/tutorial/body/).
39
+ - Use `Depends()` for shared concerns (DB sessions, auth) instead of repeating logic in each endpoint (https://fastapi.tiangolo.com/tutorial/dependencies/).
40
+ - Use `async def` for I/O-bound handlers, but keep blocking calls out of the event loop (run them in a threadpool) (https://fastapi.tiangolo.com/async/).
41
+ - Set explicit `response_model` types to control and document output shapes (https://fastapi.tiangolo.com/tutorial/response-model/).
42
+
43
+ ## Common pitfalls
44
+ - Running blocking/synchronous I/O directly inside an `async def` endpoint → blocks the event loop and kills concurrency; use `def` handlers (run in a threadpool) or async-native libraries (https://fastapi.tiangolo.com/async/).
45
+ - Returning ORM/raw objects without a `response_model` → may leak fields or fail serialization; declare a Pydantic response model.
46
+
47
+ ## Examples
48
+ ```python
49
+ from fastapi import FastAPI
50
+
51
+ app = FastAPI()
52
+
53
+ @app.get("/")
54
+ async def read_root():
55
+ return {"Hello": "World"}
56
+ ```
57
+
58
+ ## Further reading
59
+ - https://fastapi.tiangolo.com/tutorial/ — full tutorial
60
+ - https://fastapi.tiangolo.com/deployment/ — deployment guide
61
+
62
+ ## Related skills
63
+ - ../flask — lighter Python microframework
64
+ - ../django — batteries-included Python framework