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.
- package/.next/BUILD_ID +1 -0
- package/.next/app-path-routes-manifest.json +53 -0
- package/.next/build-manifest.json +20 -0
- package/.next/diagnostics/build-diagnostics.json +6 -0
- package/.next/diagnostics/framework.json +1 -0
- package/.next/export-marker.json +6 -0
- package/.next/images-manifest.json +68 -0
- package/.next/next-minimal-server.js.nft.json +1 -0
- package/.next/next-server.js.nft.json +1 -0
- package/.next/package.json +1 -0
- package/.next/prerender-manifest.json +36 -0
- package/.next/react-loadable-manifest.json +14 -0
- package/.next/required-server-files.js +343 -0
- package/.next/required-server-files.json +343 -0
- package/.next/routes-manifest.json +362 -0
- package/.next/server/app/(app)/activity/page.js +2 -0
- package/.next/server/app/(app)/activity/page.js.nft.json +1 -0
- package/.next/server/app/(app)/activity/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/agents/[handle]/page.js +18 -0
- package/.next/server/app/(app)/agents/[handle]/page.js.nft.json +1 -0
- package/.next/server/app/(app)/agents/[handle]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/code/page.js +2 -0
- package/.next/server/app/(app)/code/page.js.nft.json +1 -0
- package/.next/server/app/(app)/code/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/config/page.js +2 -0
- package/.next/server/app/(app)/config/page.js.nft.json +1 -0
- package/.next/server/app/(app)/config/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/costs/page.js +2 -0
- package/.next/server/app/(app)/costs/page.js.nft.json +1 -0
- package/.next/server/app/(app)/costs/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/cron/page.js +2 -0
- package/.next/server/app/(app)/cron/page.js.nft.json +1 -0
- package/.next/server/app/(app)/cron/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/dashboard/page.js +2 -0
- package/.next/server/app/(app)/dashboard/page.js.nft.json +1 -0
- package/.next/server/app/(app)/dashboard/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/docs/[id]/page.js +2 -0
- package/.next/server/app/(app)/docs/[id]/page.js.nft.json +1 -0
- package/.next/server/app/(app)/docs/[id]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/docs/page.js +2 -0
- package/.next/server/app/(app)/docs/page.js.nft.json +1 -0
- package/.next/server/app/(app)/docs/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/github/page.js +2 -0
- package/.next/server/app/(app)/github/page.js.nft.json +1 -0
- package/.next/server/app/(app)/github/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/goals/page.js +2 -0
- package/.next/server/app/(app)/goals/page.js.nft.json +1 -0
- package/.next/server/app/(app)/goals/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/inbox/page.js +2 -0
- package/.next/server/app/(app)/inbox/page.js.nft.json +1 -0
- package/.next/server/app/(app)/inbox/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/knowledge/page.js +3 -0
- package/.next/server/app/(app)/knowledge/page.js.nft.json +1 -0
- package/.next/server/app/(app)/knowledge/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/models/page.js +2 -0
- package/.next/server/app/(app)/models/page.js.nft.json +1 -0
- package/.next/server/app/(app)/models/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/notifications/page.js +2 -0
- package/.next/server/app/(app)/notifications/page.js.nft.json +1 -0
- package/.next/server/app/(app)/notifications/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/org/page.js +2 -0
- package/.next/server/app/(app)/org/page.js.nft.json +1 -0
- package/.next/server/app/(app)/org/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/organizations/page.js +2 -0
- package/.next/server/app/(app)/organizations/page.js.nft.json +1 -0
- package/.next/server/app/(app)/organizations/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/page.js +3 -0
- package/.next/server/app/(app)/page.js.nft.json +1 -0
- package/.next/server/app/(app)/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/planner/page.js +2 -0
- package/.next/server/app/(app)/planner/page.js.nft.json +1 -0
- package/.next/server/app/(app)/planner/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/plugins/page.js +2 -0
- package/.next/server/app/(app)/plugins/page.js.nft.json +1 -0
- package/.next/server/app/(app)/plugins/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/pm/page.js +2 -0
- package/.next/server/app/(app)/pm/page.js.nft.json +1 -0
- package/.next/server/app/(app)/pm/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/prepare-deploy/page.js +19 -0
- package/.next/server/app/(app)/prepare-deploy/page.js.nft.json +1 -0
- package/.next/server/app/(app)/prepare-deploy/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/profile/page.js +2 -0
- package/.next/server/app/(app)/profile/page.js.nft.json +1 -0
- package/.next/server/app/(app)/profile/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/pulse/page.js +2 -0
- package/.next/server/app/(app)/pulse/page.js.nft.json +1 -0
- package/.next/server/app/(app)/pulse/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/reports/[id]/page.js +3 -0
- package/.next/server/app/(app)/reports/[id]/page.js.nft.json +1 -0
- package/.next/server/app/(app)/reports/[id]/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/reports/page.js +5 -0
- package/.next/server/app/(app)/reports/page.js.nft.json +1 -0
- package/.next/server/app/(app)/reports/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/routines/page.js +2 -0
- package/.next/server/app/(app)/routines/page.js.nft.json +1 -0
- package/.next/server/app/(app)/routines/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/search/page.js +2 -0
- package/.next/server/app/(app)/search/page.js.nft.json +1 -0
- package/.next/server/app/(app)/search/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/security/page.js +2 -0
- package/.next/server/app/(app)/security/page.js.nft.json +1 -0
- package/.next/server/app/(app)/security/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/skills/page.js +18 -0
- package/.next/server/app/(app)/skills/page.js.nft.json +1 -0
- package/.next/server/app/(app)/skills/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/tasks/page.js +2 -0
- package/.next/server/app/(app)/tasks/page.js.nft.json +1 -0
- package/.next/server/app/(app)/tasks/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/test-dev/page.js +2 -0
- package/.next/server/app/(app)/test-dev/page.js.nft.json +1 -0
- package/.next/server/app/(app)/test-dev/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(app)/update/page.js +2 -0
- package/.next/server/app/(app)/update/page.js.nft.json +1 -0
- package/.next/server/app/(app)/update/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(auth)/login/page.js +2 -0
- package/.next/server/app/(auth)/login/page.js.nft.json +1 -0
- package/.next/server/app/(auth)/login/page_client-reference-manifest.js +1 -0
- package/.next/server/app/(auth)/onboarding/page.js +18 -0
- package/.next/server/app/(auth)/onboarding/page.js.nft.json +1 -0
- package/.next/server/app/(auth)/onboarding/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_global-error/page.js +32 -0
- package/.next/server/app/_global-error/page.js.nft.json +1 -0
- package/.next/server/app/_global-error/page_client-reference-manifest.js +1 -0
- package/.next/server/app/_global-error.html +1 -0
- package/.next/server/app/_global-error.meta +16 -0
- package/.next/server/app/_global-error.rsc +15 -0
- package/.next/server/app/_global-error.segments/_full.segment.rsc +15 -0
- package/.next/server/app/_global-error.segments/_global-error/__PAGE__.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_global-error.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_head.segment.rsc +5 -0
- package/.next/server/app/_global-error.segments/_index.segment.rsc +6 -0
- package/.next/server/app/_global-error.segments/_tree.segment.rsc +1 -0
- package/.next/server/app/_not-found/page.js +2 -0
- package/.next/server/app/_not-found/page.js.nft.json +1 -0
- package/.next/server/app/_not-found/page_client-reference-manifest.js +1 -0
- package/.next/server/app/api/auth/[...all]/route.js +1 -0
- package/.next/server/app/api/auth/[...all]/route.js.nft.json +1 -0
- package/.next/server/app/api/auth/[...all]/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/cron/tick/route.js +52 -0
- package/.next/server/app/api/cron/tick/route.js.nft.json +1 -0
- package/.next/server/app/api/cron/tick/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/dev-login/route.js +1 -0
- package/.next/server/app/api/dev-login/route.js.nft.json +1 -0
- package/.next/server/app/api/dev-login/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/locks/acquire/route.js +1 -0
- package/.next/server/app/api/locks/acquire/route.js.nft.json +1 -0
- package/.next/server/app/api/locks/acquire/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/models/progress/route.js +1 -0
- package/.next/server/app/api/models/progress/route.js.nft.json +1 -0
- package/.next/server/app/api/models/progress/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/authenticate/options/route.js +1 -0
- package/.next/server/app/api/passkey/authenticate/options/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/authenticate/options/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/authenticate/verify/route.js +1 -0
- package/.next/server/app/api/passkey/authenticate/verify/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/authenticate/verify/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/register/options/route.js +1 -0
- package/.next/server/app/api/passkey/register/options/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/register/options/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/passkey/register/verify/route.js +1 -0
- package/.next/server/app/api/passkey/register/verify/route.js.nft.json +1 -0
- package/.next/server/app/api/passkey/register/verify/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/stream/route.js +4 -0
- package/.next/server/app/api/stream/route.js.nft.json +1 -0
- package/.next/server/app/api/stream/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/sync/file/route.js +2 -0
- package/.next/server/app/api/sync/file/route.js.nft.json +1 -0
- package/.next/server/app/api/sync/file/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/telegram/poll/route.js +15 -0
- package/.next/server/app/api/telegram/poll/route.js.nft.json +1 -0
- package/.next/server/app/api/telegram/poll/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/upload/route.js +1 -0
- package/.next/server/app/api/upload/route.js.nft.json +1 -0
- package/.next/server/app/api/upload/route_client-reference-manifest.js +1 -0
- package/.next/server/app/api/v1/[[...path]]/route.js +1 -0
- package/.next/server/app/api/v1/[[...path]]/route.js.nft.json +1 -0
- package/.next/server/app/api/v1/[[...path]]/route_client-reference-manifest.js +1 -0
- package/.next/server/app-paths-manifest.json +53 -0
- package/.next/server/chunks/1003.js +1 -0
- package/.next/server/chunks/127.js +26 -0
- package/.next/server/chunks/1388.js +1 -0
- package/.next/server/chunks/1408.js +21 -0
- package/.next/server/chunks/1572.js +1 -0
- package/.next/server/chunks/1591.js +24 -0
- package/.next/server/chunks/1619.js +188 -0
- package/.next/server/chunks/162.js +1 -0
- package/.next/server/chunks/1881.js +1 -0
- package/.next/server/chunks/1968.js +1 -0
- package/.next/server/chunks/2297.js +348 -0
- package/.next/server/chunks/2341.js +1 -0
- package/.next/server/chunks/2517.js +1 -0
- package/.next/server/chunks/2549.js +1 -0
- package/.next/server/chunks/259.js +14 -0
- package/.next/server/chunks/2599.js +1 -0
- package/.next/server/chunks/260.js +1 -0
- package/.next/server/chunks/2867.js +147 -0
- package/.next/server/chunks/3018.js +1 -0
- package/.next/server/chunks/3050.js +18 -0
- package/.next/server/chunks/3085.js +12 -0
- package/.next/server/chunks/3131.js +1 -0
- package/.next/server/chunks/3242.js +1 -0
- package/.next/server/chunks/3266.js +15 -0
- package/.next/server/chunks/3524.js +1 -0
- package/.next/server/chunks/3527.js +479 -0
- package/.next/server/chunks/3533.js +869 -0
- package/.next/server/chunks/3550.js +1 -0
- package/.next/server/chunks/3609.js +2 -0
- package/.next/server/chunks/3667.js +462 -0
- package/.next/server/chunks/3760.js +4 -0
- package/.next/server/chunks/4679.js +1 -0
- package/.next/server/chunks/4804.js +1 -0
- package/.next/server/chunks/4832.js +2 -0
- package/.next/server/chunks/4853.js +1 -0
- package/.next/server/chunks/4979.js +67 -0
- package/.next/server/chunks/5060.js +1 -0
- package/.next/server/chunks/5278.js +1 -0
- package/.next/server/chunks/5614.js +1 -0
- package/.next/server/chunks/5818.js +1 -0
- package/.next/server/chunks/6479.js +1 -0
- package/.next/server/chunks/6658.js +1 -0
- package/.next/server/chunks/6706.js +1 -0
- package/.next/server/chunks/6719.js +1 -0
- package/.next/server/chunks/678.js +1 -0
- package/.next/server/chunks/683.js +1 -0
- package/.next/server/chunks/6862.js +1 -0
- package/.next/server/chunks/6882.js +1 -0
- package/.next/server/chunks/7037.js +1 -0
- package/.next/server/chunks/7107.js +741 -0
- package/.next/server/chunks/73.js +17 -0
- package/.next/server/chunks/7327.js +1 -0
- package/.next/server/chunks/7514.js +1 -0
- package/.next/server/chunks/7622.js +1 -0
- package/.next/server/chunks/7778.js +1 -0
- package/.next/server/chunks/7912.js +1 -0
- package/.next/server/chunks/7949.js +1 -0
- package/.next/server/chunks/7971.js +1 -0
- package/.next/server/chunks/7989.js +1 -0
- package/.next/server/chunks/842.js +22 -0
- package/.next/server/chunks/8762.js +15 -0
- package/.next/server/chunks/8823.js +77 -0
- package/.next/server/chunks/9146.js +4 -0
- package/.next/server/chunks/9676.js +1 -0
- package/.next/server/chunks/9783.js +22 -0
- package/.next/server/chunks/9969.js +3 -0
- package/.next/server/functions-config-manifest.json +18 -0
- package/.next/server/instrumentation.js +1 -0
- package/.next/server/instrumentation.js.nft.json +1 -0
- package/.next/server/interception-route-rewrite-manifest.js +1 -0
- package/.next/server/middleware-build-manifest.js +1 -0
- package/.next/server/middleware-manifest.json +6 -0
- package/.next/server/middleware-react-loadable-manifest.js +1 -0
- package/.next/server/middleware.js +18 -0
- package/.next/server/middleware.js.nft.json +1 -0
- package/.next/server/next-font-manifest.js +1 -0
- package/.next/server/next-font-manifest.json +1 -0
- package/.next/server/pages/500.html +1 -0
- package/.next/server/pages-manifest.json +3 -0
- package/.next/server/prefetch-hints.json +1 -0
- package/.next/server/server-reference-manifest.js +1 -0
- package/.next/server/server-reference-manifest.json +1 -0
- package/.next/server/webpack-runtime.js +1 -0
- package/.next/static/chunks/1858-339516f78a4b00da.js +1 -0
- package/.next/static/chunks/2320-fc8b39380e69d465.js +2 -0
- package/.next/static/chunks/23550918-ff694f70f4b0648c.js +1 -0
- package/.next/static/chunks/3219-ebb3c23be38c838d.js +1 -0
- package/.next/static/chunks/4263-adecb5b466380b6e.js +1 -0
- package/.next/static/chunks/5479-0cceab68cd0ca9c7.js +1 -0
- package/.next/static/chunks/5701-665b927b06158b76.js +1 -0
- package/.next/static/chunks/5920.6451a68b63918988.js +1 -0
- package/.next/static/chunks/6575-5c9139720bb0f5bf.js +4 -0
- package/.next/static/chunks/6834-4759af1ce7d95fb6.js +32 -0
- package/.next/static/chunks/7509.721cd47a931c5518.js +1 -0
- package/.next/static/chunks/8264-1ca011989ee2b231.js +1 -0
- package/.next/static/chunks/9219-4a39a98b5502d9d1.js +1 -0
- package/.next/static/chunks/9690-53d5222618cbeddb.js +1 -0
- package/.next/static/chunks/app/(app)/activity/page-3973534281ecea81.js +1 -0
- package/.next/static/chunks/app/(app)/agents/[handle]/page-83662a175c098282.js +1 -0
- package/.next/static/chunks/app/(app)/code/page-33979545192cd137.js +1 -0
- package/.next/static/chunks/app/(app)/config/page-9933aed1ca8a85c1.js +1 -0
- package/.next/static/chunks/app/(app)/costs/page-131c4dc580efcc19.js +1 -0
- package/.next/static/chunks/app/(app)/cron/page-53ea1aff998a87ca.js +1 -0
- package/.next/static/chunks/app/(app)/dashboard/page-deed83aaa9d0d447.js +1 -0
- package/.next/static/chunks/app/(app)/docs/[id]/page-38c993d73c0eab4f.js +1 -0
- package/.next/static/chunks/app/(app)/docs/page-bf463b55d0554e86.js +1 -0
- package/.next/static/chunks/app/(app)/error-988cd28480809861.js +1 -0
- package/.next/static/chunks/app/(app)/github/page-62678b4e82dfecb6.js +1 -0
- package/.next/static/chunks/app/(app)/goals/page-4adb426fe1c96106.js +1 -0
- package/.next/static/chunks/app/(app)/inbox/page-e347dc55ab467310.js +1 -0
- package/.next/static/chunks/app/(app)/knowledge/page-65393a045b4349be.js +1 -0
- package/.next/static/chunks/app/(app)/layout-7f65675705b011d8.js +1 -0
- package/.next/static/chunks/app/(app)/models/page-e01f1dd7e49a2951.js +1 -0
- package/.next/static/chunks/app/(app)/notifications/page-56548ac87aef00da.js +1 -0
- package/.next/static/chunks/app/(app)/org/page-699e6a6dc0db7d81.js +1 -0
- package/.next/static/chunks/app/(app)/organizations/page-36051a380a7e8eb7.js +1 -0
- package/.next/static/chunks/app/(app)/page-7d1011a566f81520.js +1 -0
- package/.next/static/chunks/app/(app)/planner/page-dab7ced94083373a.js +1 -0
- package/.next/static/chunks/app/(app)/plugins/page-5b5a1f53389be42e.js +1 -0
- package/.next/static/chunks/app/(app)/pm/page-0de5c08c0b227bb0.js +1 -0
- package/.next/static/chunks/app/(app)/prepare-deploy/page-e426038552df8d41.js +1 -0
- package/.next/static/chunks/app/(app)/profile/page-608dfcaf8aae0a69.js +1 -0
- package/.next/static/chunks/app/(app)/pulse/page-309ccaca91de1faa.js +1 -0
- package/.next/static/chunks/app/(app)/reports/[id]/page-53ea1aff998a87ca.js +1 -0
- package/.next/static/chunks/app/(app)/reports/page-68cdc6dcfa472d86.js +1 -0
- package/.next/static/chunks/app/(app)/routines/page-bcc55550b197a9fa.js +1 -0
- package/.next/static/chunks/app/(app)/search/page-5c5f67558d0dbf0d.js +1 -0
- package/.next/static/chunks/app/(app)/security/page-a7d41e36aa366b45.js +1 -0
- package/.next/static/chunks/app/(app)/skills/page-c5b21e89593b8336.js +1 -0
- package/.next/static/chunks/app/(app)/tasks/page-08ae079e3e54d2ce.js +1 -0
- package/.next/static/chunks/app/(app)/test-dev/page-633f82dfd9c3ce23.js +1 -0
- package/.next/static/chunks/app/(app)/update/page-4be019054351bfac.js +1 -0
- package/.next/static/chunks/app/(auth)/login/page-6e85d3377062acae.js +1 -0
- package/.next/static/chunks/app/(auth)/onboarding/page-ebb10c175abf3b85.js +1 -0
- package/.next/static/chunks/app/_global-error/page-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/_not-found/page-dc38b02aebeab535.js +1 -0
- package/.next/static/chunks/app/api/auth/[...all]/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/cron/tick/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/dev-login/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/locks/acquire/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/models/progress/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/authenticate/options/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/authenticate/verify/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/register/options/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/passkey/register/verify/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/stream/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/sync/file/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/telegram/poll/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/upload/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/api/v1/[[...path]]/route-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/app/error-09899a13c38b6e89.js +1 -0
- package/.next/static/chunks/app/global-error-b8050d4d886f448c.js +1 -0
- package/.next/static/chunks/app/layout-ab9deed1e7e2e9df.js +1 -0
- package/.next/static/chunks/framework-4b2c6b6043dd203f.js +1 -0
- package/.next/static/chunks/main-722e16032e7764d1.js +5 -0
- package/.next/static/chunks/main-app-761880af2b6f1962.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/app-error-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/forbidden-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/not-found-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/next/dist/client/components/builtin/unauthorized-23fe50a6bf589c97.js +1 -0
- package/.next/static/chunks/polyfills-42372ed130431b0a.js +1 -0
- package/.next/static/chunks/webpack-222e3894b78c67db.js +1 -0
- package/.next/static/css/0a9b5805594444e3.css +1 -0
- package/.next/static/yztMvBwyrWWkSqP6jfXoa/_buildManifest.js +1 -0
- package/.next/static/yztMvBwyrWWkSqP6jfXoa/_ssgManifest.js +1 -0
- package/.next/trace-build +1 -0
- package/.next/types/app/(app)/activity/page.ts +87 -0
- package/.next/types/app/(app)/agents/[handle]/page.ts +87 -0
- package/.next/types/app/(app)/code/page.ts +87 -0
- package/.next/types/app/(app)/config/page.ts +87 -0
- package/.next/types/app/(app)/costs/page.ts +87 -0
- package/.next/types/app/(app)/cron/page.ts +87 -0
- package/.next/types/app/(app)/dashboard/page.ts +87 -0
- package/.next/types/app/(app)/docs/[id]/page.ts +87 -0
- package/.next/types/app/(app)/docs/page.ts +87 -0
- package/.next/types/app/(app)/github/page.ts +87 -0
- package/.next/types/app/(app)/goals/page.ts +87 -0
- package/.next/types/app/(app)/inbox/page.ts +87 -0
- package/.next/types/app/(app)/knowledge/page.ts +87 -0
- package/.next/types/app/(app)/models/page.ts +87 -0
- package/.next/types/app/(app)/notifications/page.ts +87 -0
- package/.next/types/app/(app)/org/page.ts +87 -0
- package/.next/types/app/(app)/organizations/page.ts +87 -0
- package/.next/types/app/(app)/page.ts +87 -0
- package/.next/types/app/(app)/planner/page.ts +87 -0
- package/.next/types/app/(app)/plugins/page.ts +87 -0
- package/.next/types/app/(app)/pm/page.ts +87 -0
- package/.next/types/app/(app)/prepare-deploy/page.ts +87 -0
- package/.next/types/app/(app)/profile/page.ts +87 -0
- package/.next/types/app/(app)/pulse/page.ts +87 -0
- package/.next/types/app/(app)/reports/[id]/page.ts +87 -0
- package/.next/types/app/(app)/reports/page.ts +87 -0
- package/.next/types/app/(app)/routines/page.ts +87 -0
- package/.next/types/app/(app)/search/page.ts +87 -0
- package/.next/types/app/(app)/security/page.ts +87 -0
- package/.next/types/app/(app)/skills/page.ts +87 -0
- package/.next/types/app/(app)/tasks/page.ts +87 -0
- package/.next/types/app/(app)/test-dev/page.ts +87 -0
- package/.next/types/app/(app)/update/page.ts +87 -0
- package/.next/types/app/(auth)/login/page.ts +87 -0
- package/.next/types/app/(auth)/onboarding/page.ts +87 -0
- package/.next/types/app/api/auth/[...all]/route.ts +351 -0
- package/.next/types/app/api/cron/tick/route.ts +351 -0
- package/.next/types/app/api/dev-login/route.ts +351 -0
- package/.next/types/app/api/locks/acquire/route.ts +351 -0
- package/.next/types/app/api/models/progress/route.ts +351 -0
- package/.next/types/app/api/passkey/authenticate/options/route.ts +351 -0
- package/.next/types/app/api/passkey/authenticate/verify/route.ts +351 -0
- package/.next/types/app/api/passkey/register/options/route.ts +351 -0
- package/.next/types/app/api/passkey/register/verify/route.ts +351 -0
- package/.next/types/app/api/stream/route.ts +351 -0
- package/.next/types/app/api/sync/file/route.ts +351 -0
- package/.next/types/app/api/telegram/poll/route.ts +351 -0
- package/.next/types/app/api/upload/route.ts +351 -0
- package/.next/types/app/api/v1/[[...path]]/route.ts +351 -0
- package/.next/types/cache-life.d.ts +145 -0
- package/.next/types/link.d.ts +210 -0
- package/.next/types/package.json +1 -0
- package/.next/types/routes.d.ts +120 -0
- package/.next/types/validator.ts +511 -0
- package/CHANGELOG.md +312 -0
- package/LICENSE +21 -0
- package/README.md +382 -0
- package/README.pt-BR.md +391 -0
- package/bin/constella.mjs +329 -0
- package/bin/guard-hook.mjs +44 -0
- package/bin/lock-hook.mjs +49 -0
- package/bin/worker.mjs +142 -0
- package/docs/assets/arch-orbit.svg +56 -0
- package/docs/assets/blackhole.svg +37 -0
- package/docs/assets/divider-orbit.svg +23 -0
- package/docs/assets/hero-constella.svg +72 -0
- package/docs/en/AGENTS.md +279 -0
- package/docs/en/AI_ARCHITECTURE.md +373 -0
- package/docs/en/ARCHITECTURE.md +334 -0
- package/docs/en/AUTH_MODE.md +247 -0
- package/docs/en/CHAT_COMMANDS.md +305 -0
- package/docs/en/CONFIGURATION.md +340 -0
- package/docs/en/DEPLOY.md +331 -0
- package/docs/en/DM.md +297 -0
- package/docs/en/FAQ.md +258 -0
- package/docs/en/GITHUB.md +341 -0
- package/docs/en/GOALS_SPECS_ISSUES.md +303 -0
- package/docs/en/INBOX.md +340 -0
- package/docs/en/INSTALLATION.md +329 -0
- package/docs/en/KB_AGENT.md +305 -0
- package/docs/en/KB_RAG.md +356 -0
- package/docs/en/MCP.md +313 -0
- package/docs/en/MEMORY_RAG.md +289 -0
- package/docs/en/MODELS.md +341 -0
- package/docs/en/ONBOARDING.md +327 -0
- package/docs/en/PLUGINS.md +290 -0
- package/docs/en/PORTABLE_MODE.md +387 -0
- package/docs/en/PO_AGENT.md +379 -0
- package/docs/en/PREPARE_DEPLOY.md +308 -0
- package/docs/en/PROJECT_STACKS.md +258 -0
- package/docs/en/PUBLIC_API.md +315 -0
- package/docs/en/PUBLISHING.md +343 -0
- package/docs/en/README.md +95 -0
- package/docs/en/SECURITY.md +280 -0
- package/docs/en/SKILLS.md +349 -0
- package/docs/en/START_MODE.md +340 -0
- package/docs/en/SYNCED_BLOCKS.md +320 -0
- package/docs/en/TEAM_ROOM.md +285 -0
- package/docs/en/TELEGRAM.md +294 -0
- package/docs/en/TEST_DEV.md +321 -0
- package/docs/en/TROUBLESHOOTING.md +294 -0
- package/docs/en/UPDATE.md +301 -0
- package/docs/en/VPS_MODE.md +334 -0
- package/docs/en/WORKFLOW.md +321 -0
- package/docs/pt/AGENTS.md +279 -0
- package/docs/pt/AI_ARCHITECTURE.md +373 -0
- package/docs/pt/ARCHITECTURE.md +334 -0
- package/docs/pt/AUTH_MODE.md +247 -0
- package/docs/pt/CHAT_COMMANDS.md +307 -0
- package/docs/pt/CONFIGURATION.md +340 -0
- package/docs/pt/DEPLOY.md +331 -0
- package/docs/pt/DM.md +297 -0
- package/docs/pt/FAQ.md +258 -0
- package/docs/pt/GITHUB.md +341 -0
- package/docs/pt/GOALS_SPECS_ISSUES.md +303 -0
- package/docs/pt/INBOX.md +340 -0
- package/docs/pt/INSTALLATION.md +329 -0
- package/docs/pt/KB_AGENT.md +305 -0
- package/docs/pt/KB_RAG.md +356 -0
- package/docs/pt/MCP.md +313 -0
- package/docs/pt/MEMORY_RAG.md +289 -0
- package/docs/pt/MODELS.md +341 -0
- package/docs/pt/ONBOARDING.md +327 -0
- package/docs/pt/PLUGINS.md +290 -0
- package/docs/pt/PORTABLE_MODE.md +387 -0
- package/docs/pt/PO_AGENT.md +379 -0
- package/docs/pt/PREPARE_DEPLOY.md +308 -0
- package/docs/pt/PROJECT_STACKS.md +258 -0
- package/docs/pt/PUBLIC_API.md +315 -0
- package/docs/pt/PUBLISHING.md +343 -0
- package/docs/pt/README.md +95 -0
- package/docs/pt/SECURITY.md +280 -0
- package/docs/pt/SKILLS.md +349 -0
- package/docs/pt/START_MODE.md +340 -0
- package/docs/pt/SYNCED_BLOCKS.md +320 -0
- package/docs/pt/TEAM_ROOM.md +285 -0
- package/docs/pt/TELEGRAM.md +294 -0
- package/docs/pt/TEST_DEV.md +321 -0
- package/docs/pt/TROUBLESHOOTING.md +294 -0
- package/docs/pt/UPDATE.md +301 -0
- package/docs/pt/VPS_MODE.md +334 -0
- package/docs/pt/WORKFLOW.md +321 -0
- package/drizzle/0000_regular_nightshade.sql +644 -0
- package/drizzle/0001_mixed_zombie.sql +106 -0
- package/drizzle/meta/0000_snapshot.json +4650 -0
- package/drizzle/meta/0001_snapshot.json +5418 -0
- package/drizzle/meta/_journal.json +20 -0
- package/drizzle.config.mjs +16 -0
- package/next.config.mjs +18 -0
- package/package.json +130 -0
- package/scripts/clean-repo.mjs +20 -0
- package/scripts/dev-all.mjs +46 -0
- package/scripts/i18n-parity.mjs +57 -0
- package/scripts/mcp-server.mjs +100 -0
- package/scripts/postbuild.mjs +11 -0
- package/scripts/publish-public.mjs +116 -0
- package/scripts/start-all.mjs +45 -0
- package/scripts/trim-next.mjs +23 -0
- package/scripts/vps-install.sh +39 -0
- package/skills/CONTRIBUTING.md +122 -0
- package/skills/COVERAGE.md +129 -0
- package/skills/INDEX.json +3443 -0
- package/skills/README.md +57 -0
- package/skills/design/animation-motion/SKILL.md +60 -0
- package/skills/design/color-and-typography/SKILL.md +60 -0
- package/skills/design/css-techniques/SKILL.md +58 -0
- package/skills/design/design-systems/SKILL.md +60 -0
- package/skills/design/gradients/SKILL.md +59 -0
- package/skills/design/graphic-design-basics/SKILL.md +55 -0
- package/skills/design/microinteractions/SKILL.md +58 -0
- package/skills/design/responsive-layout/SKILL.md +59 -0
- package/skills/design/ui-ux-principles/SKILL.md +58 -0
- package/skills/engineering/architecture/api-design-rest-graphql/SKILL.md +67 -0
- package/skills/engineering/architecture/caching-strategies/SKILL.md +59 -0
- package/skills/engineering/architecture/data-modeling/SKILL.md +64 -0
- package/skills/engineering/architecture/message-queues-async/SKILL.md +58 -0
- package/skills/engineering/architecture/scalability-reliability/SKILL.md +62 -0
- package/skills/engineering/architecture/software-architecture-patterns/SKILL.md +56 -0
- package/skills/engineering/architecture/system-design-fundamentals/SKILL.md +56 -0
- package/skills/engineering/backend/auth-and-authorization/SKILL.md +62 -0
- package/skills/engineering/backend/backend-fundamentals/SKILL.md +65 -0
- package/skills/engineering/backend/observability-logging/SKILL.md +60 -0
- package/skills/engineering/frontend/accessibility-wcag/SKILL.md +57 -0
- package/skills/engineering/frontend/frontend-architecture/SKILL.md +65 -0
- package/skills/engineering/frontend/rendering-strategies-ssr-csr/SKILL.md +60 -0
- package/skills/engineering/frontend/state-management/SKILL.md +69 -0
- package/skills/engineering/performance/backend-performance/SKILL.md +69 -0
- package/skills/engineering/performance/database-query-optimization/SKILL.md +64 -0
- package/skills/engineering/performance/profiling-and-benchmarking/SKILL.md +60 -0
- package/skills/engineering/performance/web-performance-core-vitals/SKILL.md +72 -0
- package/skills/engineering/practices/clean-code/SKILL.md +61 -0
- package/skills/engineering/practices/code-optimization/SKILL.md +60 -0
- package/skills/engineering/practices/code-review-practices/SKILL.md +58 -0
- package/skills/engineering/practices/git-workflow/SKILL.md +62 -0
- package/skills/engineering/practices/refactoring/SKILL.md +58 -0
- package/skills/engineering/security/appsec-fundamentals/SKILL.md +70 -0
- package/skills/engineering/security/dependency-supply-chain/SKILL.md +77 -0
- package/skills/engineering/security/owasp-asvs/SKILL.md +54 -0
- package/skills/engineering/security/owasp-top-10/SKILL.md +63 -0
- package/skills/engineering/security/secrets-management/SKILL.md +58 -0
- package/skills/engineering/security/secure-auth-sessions/SKILL.md +56 -0
- package/skills/engineering/testing/tdd-and-coverage/SKILL.md +62 -0
- package/skills/engineering/testing/testing-strategy-pyramid/SKILL.md +56 -0
- package/skills/engineering/testing/unit-integration-e2e/SKILL.md +75 -0
- package/skills/languages/c/SKILL.md +74 -0
- package/skills/languages/clojure/SKILL.md +73 -0
- package/skills/languages/cpp/SKILL.md +75 -0
- package/skills/languages/csharp/SKILL.md +75 -0
- package/skills/languages/dart/SKILL.md +82 -0
- package/skills/languages/elixir/SKILL.md +74 -0
- package/skills/languages/erlang/SKILL.md +76 -0
- package/skills/languages/go/SKILL.md +83 -0
- package/skills/languages/haskell/SKILL.md +70 -0
- package/skills/languages/java/SKILL.md +71 -0
- package/skills/languages/javascript/SKILL.md +62 -0
- package/skills/languages/kotlin/SKILL.md +68 -0
- package/skills/languages/lua/SKILL.md +79 -0
- package/skills/languages/objectivec/SKILL.md +83 -0
- package/skills/languages/php/SKILL.md +74 -0
- package/skills/languages/python/SKILL.md +68 -0
- package/skills/languages/r/SKILL.md +70 -0
- package/skills/languages/ruby/SKILL.md +67 -0
- package/skills/languages/rust/SKILL.md +72 -0
- package/skills/languages/scala/SKILL.md +73 -0
- package/skills/languages/swift/SKILL.md +73 -0
- package/skills/languages/typescript/SKILL.md +69 -0
- package/skills/meta/authoring-agent-skills/SKILL.md +73 -0
- package/skills/meta/progressive-disclosure/SKILL.md +65 -0
- package/skills/meta/skill-frontmatter-spec/SKILL.md +65 -0
- package/skills/process/adr-technical-decisions/SKILL.md +59 -0
- package/skills/process/app-planning/SKILL.md +63 -0
- package/skills/process/architecture-before-code/SKILL.md +52 -0
- package/skills/process/breaking-work-into-sprints/SKILL.md +53 -0
- package/skills/process/idea-to-product/SKILL.md +50 -0
- package/skills/process/mocks-and-screen-flows/SKILL.md +52 -0
- package/skills/process/prioritization-moscow-rice/SKILL.md +64 -0
- package/skills/process/problem-framing/SKILL.md +51 -0
- package/skills/process/product-discovery/SKILL.md +53 -0
- package/skills/process/readme-generation/SKILL.md +90 -0
- package/skills/process/requirements-to-specs/SKILL.md +53 -0
- package/skills/process/research-official-docs/SKILL.md +58 -0
- package/skills/process/review-code-perf-security/SKILL.md +65 -0
- package/skills/process/security-by-design/SKILL.md +68 -0
- package/skills/process/specs-to-issues/SKILL.md +53 -0
- package/skills/process/testing-before-done/SKILL.md +61 -0
- package/skills/process/validating-ux-navigation/SKILL.md +63 -0
- package/skills/references/ai-attachments-ui/SKILL.md +66 -0
- package/skills/references/ai-in-browser-webllm/SKILL.md +74 -0
- package/skills/references/ai-tool-ui-patterns/SKILL.md +63 -0
- package/skills/references/component-patterns-gallery/SKILL.md +62 -0
- package/skills/references/gradient-resources/SKILL.md +66 -0
- package/skills/references/react-component-libraries/SKILL.md +61 -0
- package/skills/references/saas-landing-patterns/SKILL.md +67 -0
- package/skills/references/shadcn-tailwind-theming/SKILL.md +74 -0
- package/skills/references/vercel-ai-sdk-elements/SKILL.md +66 -0
- package/skills/references/web-animation-codrops/SKILL.md +68 -0
- package/skills/stacks/aiml/jupyter/SKILL.md +68 -0
- package/skills/stacks/aiml/keras/SKILL.md +77 -0
- package/skills/stacks/aiml/numpy/SKILL.md +69 -0
- package/skills/stacks/aiml/pandas/SKILL.md +72 -0
- package/skills/stacks/aiml/pytorch/SKILL.md +77 -0
- package/skills/stacks/aiml/scikit-learn/SKILL.md +74 -0
- package/skills/stacks/aiml/tensorflow/SKILL.md +79 -0
- package/skills/stacks/auth/auth0/SKILL.md +63 -0
- package/skills/stacks/auth/authjs/SKILL.md +69 -0
- package/skills/stacks/auth/clerk/SKILL.md +72 -0
- package/skills/stacks/auth/keycloak/SKILL.md +63 -0
- package/skills/stacks/auth/lucia/SKILL.md +56 -0
- package/skills/stacks/auth/passport/SKILL.md +70 -0
- package/skills/stacks/auth/supabase-auth/SKILL.md +66 -0
- package/skills/stacks/baas/amplify/SKILL.md +71 -0
- package/skills/stacks/baas/appwrite/SKILL.md +79 -0
- package/skills/stacks/baas/firebase/SKILL.md +73 -0
- package/skills/stacks/baas/heroku/SKILL.md +71 -0
- package/skills/stacks/backend/actix/SKILL.md +77 -0
- package/skills/stacks/backend/adonisjs/SKILL.md +65 -0
- package/skills/stacks/backend/aspnet-core/SKILL.md +75 -0
- package/skills/stacks/backend/codeigniter/SKILL.md +76 -0
- package/skills/stacks/backend/django/SKILL.md +62 -0
- package/skills/stacks/backend/express/SKILL.md +65 -0
- package/skills/stacks/backend/fastapi/SKILL.md +64 -0
- package/skills/stacks/backend/fastify/SKILL.md +64 -0
- package/skills/stacks/backend/fiber/SKILL.md +68 -0
- package/skills/stacks/backend/flask/SKILL.md +71 -0
- package/skills/stacks/backend/gin/SKILL.md +68 -0
- package/skills/stacks/backend/graphql/SKILL.md +70 -0
- package/skills/stacks/backend/hono/SKILL.md +64 -0
- package/skills/stacks/backend/koa/SKILL.md +63 -0
- package/skills/stacks/backend/laravel/SKILL.md +73 -0
- package/skills/stacks/backend/nestjs/SKILL.md +70 -0
- package/skills/stacks/backend/nginx/SKILL.md +77 -0
- package/skills/stacks/backend/phoenix/SKILL.md +68 -0
- package/skills/stacks/backend/rails/SKILL.md +67 -0
- package/skills/stacks/backend/spring/SKILL.md +70 -0
- package/skills/stacks/backend/spring-boot/SKILL.md +70 -0
- package/skills/stacks/backend/symfony/SKILL.md +77 -0
- package/skills/stacks/container/containerd/SKILL.md +75 -0
- package/skills/stacks/container/docker/SKILL.md +90 -0
- package/skills/stacks/container/podman/SKILL.md +93 -0
- package/skills/stacks/database/cassandra/SKILL.md +74 -0
- package/skills/stacks/database/cockroachdb/SKILL.md +69 -0
- package/skills/stacks/database/dynamodb/SKILL.md +62 -0
- package/skills/stacks/database/mariadb/SKILL.md +71 -0
- package/skills/stacks/database/mongodb/SKILL.md +71 -0
- package/skills/stacks/database/mysql/SKILL.md +72 -0
- package/skills/stacks/database/neon/SKILL.md +68 -0
- package/skills/stacks/database/planetscale/SKILL.md +70 -0
- package/skills/stacks/database/postgresql/SKILL.md +81 -0
- package/skills/stacks/database/redis/SKILL.md +78 -0
- package/skills/stacks/database/sqlite/SKILL.md +70 -0
- package/skills/stacks/database/supabase/SKILL.md +79 -0
- package/skills/stacks/dataviz/chart-js/SKILL.md +72 -0
- package/skills/stacks/dataviz/d3/SKILL.md +77 -0
- package/skills/stacks/dataviz/grafana/SKILL.md +69 -0
- package/skills/stacks/dataviz/plotly/SKILL.md +71 -0
- package/skills/stacks/frontend/alpine/SKILL.md +75 -0
- package/skills/stacks/frontend/angular/SKILL.md +75 -0
- package/skills/stacks/frontend/backbone/SKILL.md +82 -0
- package/skills/stacks/frontend/ember/SKILL.md +85 -0
- package/skills/stacks/frontend/htmx/SKILL.md +73 -0
- package/skills/stacks/frontend/lit/SKILL.md +76 -0
- package/skills/stacks/frontend/preact/SKILL.md +74 -0
- package/skills/stacks/frontend/qwik/SKILL.md +65 -0
- package/skills/stacks/frontend/react/SKILL.md +77 -0
- package/skills/stacks/frontend/solidjs/SKILL.md +75 -0
- package/skills/stacks/frontend/svelte/SKILL.md +70 -0
- package/skills/stacks/frontend/vue/SKILL.md +69 -0
- package/skills/stacks/infra/ansible/SKILL.md +76 -0
- package/skills/stacks/infra/aws/SKILL.md +66 -0
- package/skills/stacks/infra/azure/SKILL.md +72 -0
- package/skills/stacks/infra/circleci/SKILL.md +78 -0
- package/skills/stacks/infra/cloudflare/SKILL.md +65 -0
- package/skills/stacks/infra/fly-io/SKILL.md +63 -0
- package/skills/stacks/infra/gcp/SKILL.md +66 -0
- package/skills/stacks/infra/jenkins/SKILL.md +73 -0
- package/skills/stacks/infra/kubernetes/SKILL.md +64 -0
- package/skills/stacks/infra/netlify/SKILL.md +60 -0
- package/skills/stacks/infra/railway/SKILL.md +63 -0
- package/skills/stacks/infra/tailscale/SKILL.md +65 -0
- package/skills/stacks/infra/terraform/SKILL.md +75 -0
- package/skills/stacks/infra/vagrant/SKILL.md +70 -0
- package/skills/stacks/infra/vercel/SKILL.md +60 -0
- package/skills/stacks/meta/astro/SKILL.md +64 -0
- package/skills/stacks/meta/docusaurus/SKILL.md +71 -0
- package/skills/stacks/meta/eleventy/SKILL.md +69 -0
- package/skills/stacks/meta/gatsby/SKILL.md +63 -0
- package/skills/stacks/meta/hugo/SKILL.md +73 -0
- package/skills/stacks/meta/jekyll/SKILL.md +70 -0
- package/skills/stacks/meta/nextjs/SKILL.md +62 -0
- package/skills/stacks/meta/nuxt/SKILL.md +66 -0
- package/skills/stacks/meta/remix/SKILL.md +67 -0
- package/skills/stacks/meta/sveltekit/SKILL.md +70 -0
- package/skills/stacks/meta/vite/SKILL.md +63 -0
- package/skills/stacks/mobile/android/SKILL.md +77 -0
- package/skills/stacks/mobile/flutter/SKILL.md +77 -0
- package/skills/stacks/mobile/ionic/SKILL.md +72 -0
- package/skills/stacks/mobile/nativescript/SKILL.md +71 -0
- package/skills/stacks/mobile/react-native/SKILL.md +75 -0
- package/skills/stacks/mobile/xamarin/SKILL.md +73 -0
- package/skills/stacks/orm/diesel/SKILL.md +72 -0
- package/skills/stacks/orm/django-orm/SKILL.md +58 -0
- package/skills/stacks/orm/drizzle/SKILL.md +67 -0
- package/skills/stacks/orm/gorm/SKILL.md +73 -0
- package/skills/stacks/orm/knex/SKILL.md +64 -0
- package/skills/stacks/orm/mongoose/SKILL.md +64 -0
- package/skills/stacks/orm/prisma/SKILL.md +64 -0
- package/skills/stacks/orm/sequelize/SKILL.md +65 -0
- package/skills/stacks/orm/sqlalchemy/SKILL.md +71 -0
- package/skills/stacks/orm/typeorm/SKILL.md +70 -0
- package/skills/stacks/queue/bullmq/SKILL.md +69 -0
- package/skills/stacks/queue/celery/SKILL.md +68 -0
- package/skills/stacks/queue/kafka/SKILL.md +66 -0
- package/skills/stacks/queue/nats/SKILL.md +66 -0
- package/skills/stacks/queue/rabbitmq/SKILL.md +64 -0
- package/skills/stacks/queue/redis/SKILL.md +66 -0
- package/skills/stacks/runtime/beam/SKILL.md +72 -0
- package/skills/stacks/runtime/bun/SKILL.md +80 -0
- package/skills/stacks/runtime/deno/SKILL.md +74 -0
- package/skills/stacks/runtime/dotnet/SKILL.md +64 -0
- package/skills/stacks/runtime/jvm/SKILL.md +66 -0
- package/skills/stacks/runtime/node/SKILL.md +70 -0
- package/skills/stacks/runtime/pypy/SKILL.md +69 -0
- package/skills/stacks/runtime/python3/SKILL.md +70 -0
- package/skills/stacks/styling/bootstrap/SKILL.md +74 -0
- package/skills/stacks/styling/bulma/SKILL.md +80 -0
- package/skills/stacks/styling/chakra-ui/SKILL.md +61 -0
- package/skills/stacks/styling/css-modules/SKILL.md +54 -0
- package/skills/stacks/styling/mui/SKILL.md +60 -0
- package/skills/stacks/styling/sass/SKILL.md +63 -0
- package/skills/stacks/styling/shadcn-ui/SKILL.md +58 -0
- package/skills/stacks/styling/styled-components/SKILL.md +62 -0
- package/skills/stacks/styling/tailwind/SKILL.md +59 -0
- package/skills/stacks/styling/unocss/SKILL.md +64 -0
- package/skills/stacks/styling/vanilla-extract/SKILL.md +64 -0
- package/skills/stacks/styling/vuetify/SKILL.md +89 -0
- package/skills/stacks/testing/cypress/SKILL.md +68 -0
- package/skills/stacks/testing/jasmine/SKILL.md +67 -0
- package/skills/stacks/testing/jest/SKILL.md +67 -0
- package/skills/stacks/testing/mocha/SKILL.md +71 -0
- package/skills/stacks/testing/playwright/SKILL.md +68 -0
- package/skills/stacks/testing/puppeteer/SKILL.md +70 -0
- package/skills/stacks/testing/selenium/SKILL.md +70 -0
- package/skills/stacks/testing/vitest/SKILL.md +68 -0
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: web-animation-codrops
|
|
3
|
+
description: Distilled Codrops web-animation and interaction techniques (paraphrased); consult for motion, scroll, and creative front-end effects.
|
|
4
|
+
domain: reference
|
|
5
|
+
category: reference
|
|
6
|
+
tags: [animation, interaction, motion, gsap, webgl, css]
|
|
7
|
+
official_sources:
|
|
8
|
+
- https://tympanus.net/codrops/
|
|
9
|
+
- https://tympanus.net/codrops/category/tutorials/
|
|
10
|
+
verified: 2026-06-16
|
|
11
|
+
---
|
|
12
|
+
|
|
13
|
+
# Web Animation — Codrops Techniques
|
|
14
|
+
|
|
15
|
+
## Overview
|
|
16
|
+
Codrops (tympanus.net/codrops) is a long-running web-creativity resource publishing tutorials, case studies, and open demos on advanced front-end motion and interaction since 2009. It is an inspiration-and-learning source, not a library you install. Read this skill when a task needs interactive motion — scroll-driven reveals, hover and pointer effects, page transitions, text animations, or WebGL/shader-backed visuals — and you want the recurring techniques distilled rather than copied. Paraphrase its ideas; never paste its code or article text.
|
|
17
|
+
|
|
18
|
+
## Official sources
|
|
19
|
+
- Site: https://tympanus.net/codrops/
|
|
20
|
+
- Tutorials: https://tympanus.net/codrops/category/tutorials/
|
|
21
|
+
- Demos / Creative Hub: https://tympanus.net/codrops/ (linked from the homepage)
|
|
22
|
+
|
|
23
|
+
## Core concepts
|
|
24
|
+
- **Animation libraries vs. native.** Codrops techniques typically lean on GSAP (timelines, easing, ScrollTrigger) and the native Web Animations API / CSS transitions for DOM motion, and Three.js / raw WebGL shaders for canvas-based effects. Pick native CSS for simple state transitions and a library for orchestrated sequences.
|
|
25
|
+
- **Scroll-driven interaction.** A core genre: tying animation progress to scroll position (reveals, parallax, pinned sections, horizontal scroll). Modern approaches use the CSS Scroll-Driven Animations spec where supported, or ScrollTrigger / IntersectionObserver otherwise.
|
|
26
|
+
- **Pointer- and hover-reactive effects.** Image distortion on hover, magnetic buttons, cursor followers, and tilt effects driven by pointer coordinates mapped to transforms or shader uniforms.
|
|
27
|
+
- **Page and element transitions.** Smooth route/section transitions (FLIP technique, shared-element morphs, clip-path/mask reveals) that preserve visual continuity instead of hard cuts.
|
|
28
|
+
- **Performance discipline.** Animate compositor-friendly properties (transform, opacity) and avoid layout-thrashing properties (top/left/width/height); offload heavy visuals to GPU via WebGL.
|
|
29
|
+
|
|
30
|
+
## Best practices
|
|
31
|
+
- Animate `transform` and `opacity` rather than geometric/layout properties so the browser stays on the GPU compositor and avoids reflow.
|
|
32
|
+
- Drive scroll effects with `IntersectionObserver` (or native scroll-driven animations) instead of high-frequency `scroll` listeners to keep the main thread free.
|
|
33
|
+
- Respect `prefers-reduced-motion`: gate non-essential motion behind the media query so the experience degrades gracefully for users who opt out.
|
|
34
|
+
- Use easing and staggering deliberately — entrance reveals read better with slight stagger and natural easing than with uniform linear timing.
|
|
35
|
+
- Lazy-load and conditionally mount WebGL/Three.js scenes so heavy effects never block first paint on slower devices.
|
|
36
|
+
|
|
37
|
+
## Common pitfalls
|
|
38
|
+
- Animating `width`, `height`, `top`, or `left` causing layout thrash and jank → animate `transform: scale()/translate()` instead.
|
|
39
|
+
- Attaching expensive work to a raw `scroll` event that fires on every frame → debounce/throttle or switch to `IntersectionObserver`/scroll-driven animations.
|
|
40
|
+
- Shipping motion with no `prefers-reduced-motion` fallback → accessibility regression; always provide a reduced or static path.
|
|
41
|
+
- Copying a Codrops demo wholesale (markup, CSS, and JS) into production → respect licensing and rebuild the technique in your own code.
|
|
42
|
+
|
|
43
|
+
## Examples
|
|
44
|
+
```css
|
|
45
|
+
/* Reveal on scroll, GPU-friendly, with reduced-motion fallback */
|
|
46
|
+
.reveal { opacity: 0; transform: translateY(24px); transition: opacity .6s ease, transform .6s ease; }
|
|
47
|
+
.reveal.is-visible { opacity: 1; transform: none; }
|
|
48
|
+
|
|
49
|
+
@media (prefers-reduced-motion: reduce) {
|
|
50
|
+
.reveal { transition: none; opacity: 1; transform: none; }
|
|
51
|
+
}
|
|
52
|
+
```
|
|
53
|
+
```js
|
|
54
|
+
// Toggle the reveal class with IntersectionObserver (not a scroll listener)
|
|
55
|
+
const io = new IntersectionObserver(
|
|
56
|
+
(entries) => entries.forEach(e => e.isIntersecting && e.target.classList.add('is-visible')),
|
|
57
|
+
{ threshold: 0.2 }
|
|
58
|
+
);
|
|
59
|
+
document.querySelectorAll('.reveal').forEach(el => io.observe(el));
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
## Further reading
|
|
63
|
+
- Codrops tutorials category for technique walkthroughs (study, then re-implement in your own words).
|
|
64
|
+
- MDN: Web Animations API and CSS scroll-driven animations for the native-platform equivalents.
|
|
65
|
+
|
|
66
|
+
## Related skills
|
|
67
|
+
- ../react-component-libraries — Magic UI / React Bits package many of these motion patterns as ready components.
|
|
68
|
+
- ../gradient-resources — animated and shader gradients pair with Codrops-style hero effects.
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: jupyter
|
|
3
|
+
description: Jupyter provides interactive computing notebooks (JupyterLab, Jupyter Notebook) that mix live code, equations, visualizations, and narrative text, executed by language-specific kernels over the notebook (.ipynb) format. Consult this when installing/launching JupyterLab or the classic Notebook, working with cells and kernels, choosing the IPython kernel, managing the .ipynb JSON format, using magics (%matplotlib, %timeit), connecting to a server, or troubleshooting kernel selection, reproducibility, and out-of-order execution.
|
|
4
|
+
domain: stack
|
|
5
|
+
category: aiml
|
|
6
|
+
tags: [jupyter, jupyterlab, notebook, ipython, kernel, interactive-computing, python]
|
|
7
|
+
official_sources:
|
|
8
|
+
- https://docs.jupyter.org/en/latest/
|
|
9
|
+
- https://github.com/jupyterlab/jupyterlab
|
|
10
|
+
- https://jupyterlab.readthedocs.io/en/stable/getting_started/installation.html
|
|
11
|
+
verified: 2026-06-17
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Jupyter
|
|
15
|
+
|
|
16
|
+
## Overview
|
|
17
|
+
Project Jupyter provides open-source software for interactive computing across dozens of programming languages, most visibly the web-based JupyterLab IDE and the classic Jupyter Notebook. Notebooks combine executable code cells, rich output, and Markdown narrative in a single `.ipynb` document run by a language kernel. Read this when setting up notebooks, managing kernels, or building reproducible interactive data/ML workflows.
|
|
18
|
+
|
|
19
|
+
## Official sources
|
|
20
|
+
- Docs: https://docs.jupyter.org/en/latest/
|
|
21
|
+
- Repo: https://github.com/jupyterlab/jupyterlab
|
|
22
|
+
- Install: https://jupyterlab.readthedocs.io/en/stable/getting_started/installation.html
|
|
23
|
+
|
|
24
|
+
## Install / setup
|
|
25
|
+
```bash
|
|
26
|
+
pip install jupyterlab
|
|
27
|
+
jupyter lab
|
|
28
|
+
```
|
|
29
|
+
Commands from the official JupyterLab install guide: https://jupyterlab.readthedocs.io/en/stable/getting_started/installation.html
|
|
30
|
+
|
|
31
|
+
## Core concepts
|
|
32
|
+
- **Notebook (.ipynb)** — JSON document of ordered cells plus outputs and metadata.
|
|
33
|
+
- **Cell** — unit of content; code cells execute, Markdown cells render text/LaTeX.
|
|
34
|
+
- **Kernel** — separate process that runs code (IPython for Python); holds session state.
|
|
35
|
+
- **JupyterLab vs Notebook** — Lab is the modern extensible IDE; Notebook 7 is the lightweight document-centric UI (both on the same server).
|
|
36
|
+
- **Magics** — IPython commands: line (`%timeit`, `%matplotlib`) and cell (`%%bash`, `%%time`).
|
|
37
|
+
- **Kernel state** — variables persist across cells in execution order, independent of cell layout order.
|
|
38
|
+
- **Server** — the Jupyter Server backend that the browser frontend connects to (local or remote).
|
|
39
|
+
|
|
40
|
+
## Best practices
|
|
41
|
+
- Restart the kernel and "Run All" before sharing to guarantee top-to-bottom reproducibility (https://docs.jupyter.org/en/latest/).
|
|
42
|
+
- Install packages into the same environment the kernel uses (`%pip install`) to avoid kernel/env mismatch (https://docs.jupyter.org/en/latest/install.html).
|
|
43
|
+
- Register environments as named kernels with `ipykernel` so you can pick them in the UI (https://ipython.readthedocs.io/en/stable/install/kernel_install.html).
|
|
44
|
+
- Keep notebooks small and factor reusable logic into imported `.py` modules (https://jupyterlab.readthedocs.io/en/stable/).
|
|
45
|
+
|
|
46
|
+
## Common pitfalls
|
|
47
|
+
- Out-of-order cell execution creates hidden state → restart kernel and run all to verify.
|
|
48
|
+
- Wrong kernel/env means `import` fails despite a `pip install` in a terminal → install into the kernel's env with `%pip`.
|
|
49
|
+
- Committing notebooks with large outputs bloats diffs → clear outputs (or use nbstripout) before commit.
|
|
50
|
+
|
|
51
|
+
## Examples
|
|
52
|
+
```bash
|
|
53
|
+
# Create and register a dedicated kernel for a virtual environment
|
|
54
|
+
python -m venv .venv && source .venv/bin/activate
|
|
55
|
+
pip install ipykernel
|
|
56
|
+
python -m ipykernel install --user --name myproject --display-name "Python (myproject)"
|
|
57
|
+
jupyter lab
|
|
58
|
+
```
|
|
59
|
+
|
|
60
|
+
## Further reading
|
|
61
|
+
- https://docs.jupyter.org/en/latest/ — Project Jupyter documentation hub
|
|
62
|
+
- https://jupyterlab.readthedocs.io/en/stable/ — JupyterLab user guide
|
|
63
|
+
- https://ipython.readthedocs.io/en/stable/interactive/magics.html — IPython magic commands
|
|
64
|
+
|
|
65
|
+
## Related skills
|
|
66
|
+
- ../pandas — common notebook companion for data analysis
|
|
67
|
+
- ../numpy — numerical computing in notebooks
|
|
68
|
+
- ../scikit-learn — interactive ML experimentation
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: keras
|
|
3
|
+
description: Keras is a high-level, multi-backend deep learning API (Keras 3) that runs on JAX, TensorFlow, or PyTorch, offering Sequential/Functional/subclassed models with a clean compile/fit/evaluate workflow. Consult this when building neural networks quickly, defining layers and custom models, configuring optimizers/losses/metrics and callbacks, choosing or switching the KERAS_BACKEND, saving/loading .keras models, or porting code across JAX/TF/PyTorch backends.
|
|
4
|
+
domain: stack
|
|
5
|
+
category: aiml
|
|
6
|
+
tags: [keras, deep-learning, neural-networks, tensorflow, jax, pytorch, python]
|
|
7
|
+
official_sources:
|
|
8
|
+
- https://keras.io/
|
|
9
|
+
- https://github.com/keras-team/keras
|
|
10
|
+
- https://keras.io/getting_started/
|
|
11
|
+
verified: 2026-06-17
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# Keras
|
|
15
|
+
|
|
16
|
+
## Overview
|
|
17
|
+
Keras is a deep learning API written in Python, focused on enabling fast experimentation with a clean, layered model-building interface. Keras 3 is multi-backend: the same model code runs on JAX, TensorFlow, or PyTorch, selected via the `KERAS_BACKEND` environment variable. Read this when building/training neural networks at a high level, choosing a backend, or saving and loading models.
|
|
18
|
+
|
|
19
|
+
## Official sources
|
|
20
|
+
- Docs: https://keras.io/
|
|
21
|
+
- Repo: https://github.com/keras-team/keras
|
|
22
|
+
- Install: https://keras.io/getting_started/
|
|
23
|
+
|
|
24
|
+
## Install / setup
|
|
25
|
+
```bash
|
|
26
|
+
pip install --upgrade keras
|
|
27
|
+
# then install a backend (one of), e.g.:
|
|
28
|
+
pip install tensorflow # or: pip install jax / pip install torch
|
|
29
|
+
export KERAS_BACKEND="jax"
|
|
30
|
+
```
|
|
31
|
+
Commands from the official getting-started guide: https://keras.io/getting_started/
|
|
32
|
+
|
|
33
|
+
## Core concepts
|
|
34
|
+
- **Backend** — JAX, TensorFlow, or PyTorch; set `KERAS_BACKEND` (or `~/.keras/keras.json`) before `import keras`; cannot change after import.
|
|
35
|
+
- **Sequential API** — linear stack of layers for simple feed-forward models.
|
|
36
|
+
- **Functional API** — build arbitrary DAGs of layers via tensor calls; the recommended general-purpose API.
|
|
37
|
+
- **Subclassing** — subclass `keras.Model`/`keras.layers.Layer` and implement `call()` for full control.
|
|
38
|
+
- **compile / fit / evaluate / predict** — declare optimizer, loss, and metrics, then train and run inference.
|
|
39
|
+
- **Callbacks** — hooks like `ModelCheckpoint`, `EarlyStopping`, `TensorBoard` during training.
|
|
40
|
+
- **.keras format** — the modern single-file model serialization format (`model.save("m.keras")`).
|
|
41
|
+
|
|
42
|
+
## Best practices
|
|
43
|
+
- Set `KERAS_BACKEND` before importing Keras; it cannot be switched afterward (https://keras.io/getting_started/).
|
|
44
|
+
- Prefer the Functional API for multi-input/output or branching models over deep subclassing (https://keras.io/guides/functional_api/).
|
|
45
|
+
- Use `EarlyStopping` + `ModelCheckpoint` callbacks rather than fixed epoch counts (https://keras.io/api/callbacks/).
|
|
46
|
+
- Save in the native `.keras` format for full architecture+weights portability (https://keras.io/guides/serialization_and_saving/).
|
|
47
|
+
|
|
48
|
+
## Common pitfalls
|
|
49
|
+
- Importing Keras before setting `KERAS_BACKEND` → backend locks to the default; set the env var first.
|
|
50
|
+
- Confusing standalone `keras` (Keras 3) with `tf.keras` bundled in TensorFlow → pick one import path consistently.
|
|
51
|
+
- Loading legacy `.h5`/SavedModel into Keras 3 without matching custom objects → register them or re-export to `.keras`.
|
|
52
|
+
|
|
53
|
+
## Examples
|
|
54
|
+
```python
|
|
55
|
+
import os
|
|
56
|
+
os.environ["KERAS_BACKEND"] = "jax" # before importing keras
|
|
57
|
+
import keras
|
|
58
|
+
from keras import layers
|
|
59
|
+
|
|
60
|
+
model = keras.Sequential([
|
|
61
|
+
layers.Dense(128, activation="relu"),
|
|
62
|
+
layers.Dense(10, activation="softmax"),
|
|
63
|
+
])
|
|
64
|
+
model.compile(optimizer="adam", loss="sparse_categorical_crossentropy", metrics=["accuracy"])
|
|
65
|
+
# model.fit(x_train, y_train, epochs=3, validation_split=0.1)
|
|
66
|
+
model.save("model.keras")
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Further reading
|
|
70
|
+
- https://keras.io/guides/ — developer guides (Functional API, custom training, serialization)
|
|
71
|
+
- https://keras.io/api/ — full layers/models/callbacks API reference
|
|
72
|
+
- https://keras.io/examples/ — code examples across vision, NLP, and more
|
|
73
|
+
|
|
74
|
+
## Related skills
|
|
75
|
+
- ../tensorflow — a Keras backend; `tf.keras` ships with TensorFlow
|
|
76
|
+
- ../pytorch — a supported Keras 3 backend
|
|
77
|
+
- ../numpy — array inputs to Keras models
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: numpy
|
|
3
|
+
description: NumPy is the foundational Python package for scientific and numerical computing, providing the n-dimensional ndarray plus fast vectorized math, broadcasting, linear algebra, FFT, and random number generation. Consult this when working with arrays and dtypes, vectorizing loops, using broadcasting and slicing/fancy indexing, doing matrix math or reductions along axes, generating random data with the Generator API, or interoperating with pandas, scikit-learn, PyTorch, and TensorFlow.
|
|
4
|
+
domain: stack
|
|
5
|
+
category: aiml
|
|
6
|
+
tags: [numpy, ndarray, scientific-computing, linear-algebra, vectorization, arrays, python]
|
|
7
|
+
official_sources:
|
|
8
|
+
- https://numpy.org/doc/stable/
|
|
9
|
+
- https://github.com/numpy/numpy
|
|
10
|
+
- https://numpy.org/install/
|
|
11
|
+
verified: 2026-06-17
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# NumPy
|
|
15
|
+
|
|
16
|
+
## Overview
|
|
17
|
+
NumPy is the fundamental package for scientific computing with Python, centered on a fast, memory-efficient n-dimensional array object (`ndarray`) and a large library of vectorized mathematical functions. It is the numerical bedrock that pandas, scikit-learn, SciPy, PyTorch, and TensorFlow build on or interoperate with. Read this when manipulating arrays, vectorizing computation, using broadcasting, or doing linear algebra and random sampling.
|
|
18
|
+
|
|
19
|
+
## Official sources
|
|
20
|
+
- Docs: https://numpy.org/doc/stable/
|
|
21
|
+
- Repo: https://github.com/numpy/numpy
|
|
22
|
+
- Install: https://numpy.org/install/
|
|
23
|
+
|
|
24
|
+
## Install / setup
|
|
25
|
+
```bash
|
|
26
|
+
pip install numpy
|
|
27
|
+
```
|
|
28
|
+
Command from the official install page: https://numpy.org/install/
|
|
29
|
+
|
|
30
|
+
## Core concepts
|
|
31
|
+
- **ndarray** — fixed-size, homogeneous n-dimensional array; the core data structure.
|
|
32
|
+
- **dtype** — explicit element type (e.g. `int64`, `float32`) controlling memory and precision.
|
|
33
|
+
- **Broadcasting** — rules that let arrays of different shapes combine elementwise without copies.
|
|
34
|
+
- **Vectorization** — elementwise ufuncs replace Python loops for C-speed computation.
|
|
35
|
+
- **Indexing** — basic slicing (views), plus boolean masks and fancy (integer-array) indexing (copies).
|
|
36
|
+
- **Axes & reductions** — operations like `sum`/`mean`/`max` reduce along a chosen `axis`.
|
|
37
|
+
- **Generator (random)** — modern RNG via `np.random.default_rng()` (preferred over legacy `np.random.*`).
|
|
38
|
+
|
|
39
|
+
## Best practices
|
|
40
|
+
- Replace Python loops with vectorized ufuncs and broadcasting for speed (https://numpy.org/doc/stable/user/basics.broadcasting.html).
|
|
41
|
+
- Use `np.random.default_rng()` instead of the legacy global random functions (https://numpy.org/doc/stable/reference/random/index.html).
|
|
42
|
+
- Be aware that basic slices return views (mutations propagate); copy with `.copy()` when needed (https://numpy.org/doc/stable/user/basics.copies.html).
|
|
43
|
+
- Pick the smallest sufficient dtype (e.g. `float32`) to cut memory for large arrays (https://numpy.org/doc/stable/reference/arrays.dtypes.html).
|
|
44
|
+
|
|
45
|
+
## Common pitfalls
|
|
46
|
+
- Mutating a slice view unexpectedly changes the parent array → use `.copy()` for independent data.
|
|
47
|
+
- Integer overflow with fixed-width dtypes wraps silently → cast to a wider dtype before large sums.
|
|
48
|
+
- Comparing floats with `==` fails due to precision → use `np.isclose`/`np.allclose`.
|
|
49
|
+
|
|
50
|
+
## Examples
|
|
51
|
+
```python
|
|
52
|
+
import numpy as np
|
|
53
|
+
|
|
54
|
+
rng = np.random.default_rng(0)
|
|
55
|
+
a = rng.standard_normal((1000, 3)) # 1000x3 array
|
|
56
|
+
norms = np.linalg.norm(a, axis=1) # per-row L2 norm (vectorized)
|
|
57
|
+
unit = a / norms[:, None] # broadcasting to normalize rows
|
|
58
|
+
print(unit.shape, np.allclose(np.linalg.norm(unit, axis=1), 1.0))
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## Further reading
|
|
62
|
+
- https://numpy.org/doc/stable/user/absolute_beginners.html — beginner's guide
|
|
63
|
+
- https://numpy.org/doc/stable/user/basics.broadcasting.html — broadcasting rules
|
|
64
|
+
- https://numpy.org/doc/stable/reference/ — full API reference
|
|
65
|
+
|
|
66
|
+
## Related skills
|
|
67
|
+
- ../pandas — built on top of NumPy arrays
|
|
68
|
+
- ../scikit-learn — consumes ndarrays as X/y
|
|
69
|
+
- ../pytorch — tensors convert to/from NumPy
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pandas
|
|
3
|
+
description: pandas is the standard Python library for labeled tabular data analysis and manipulation, providing the DataFrame and Series structures for loading, cleaning, reshaping, grouping, joining, and aggregating data. Consult this when reading/writing CSV/Parquet/Excel/SQL, filtering and selecting rows/columns with loc/iloc, handling missing data, doing groupby aggregations, merging/joining tables, pivoting/melting, working with time series and datetime indexes, or understanding Copy-on-Write (the default in pandas 3.0) and why chained assignment never modifies the original.
|
|
4
|
+
domain: stack
|
|
5
|
+
category: aiml
|
|
6
|
+
tags: [pandas, dataframe, data-analysis, data-wrangling, etl, time-series, python]
|
|
7
|
+
official_sources:
|
|
8
|
+
- https://pandas.pydata.org/docs/
|
|
9
|
+
- https://github.com/pandas-dev/pandas
|
|
10
|
+
- https://pandas.pydata.org/docs/getting_started/install.html
|
|
11
|
+
verified: 2026-06-17
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# pandas
|
|
15
|
+
|
|
16
|
+
## Overview
|
|
17
|
+
pandas is a fast, flexible, and expressive Python library providing labeled data structures (`Series`, `DataFrame`) for working with relational and time-series data. It is the de facto tool for data loading, cleaning, transformation, and exploratory analysis, and feeds most ML and analytics workflows. Read this when wrangling tabular data, doing groupby/merge/pivot operations, or handling missing values and datetime indexes.
|
|
18
|
+
|
|
19
|
+
## Official sources
|
|
20
|
+
- Docs: https://pandas.pydata.org/docs/
|
|
21
|
+
- Repo: https://github.com/pandas-dev/pandas
|
|
22
|
+
- Install: https://pandas.pydata.org/docs/getting_started/install.html
|
|
23
|
+
|
|
24
|
+
## Install / setup
|
|
25
|
+
```bash
|
|
26
|
+
pip install pandas
|
|
27
|
+
```
|
|
28
|
+
Command from the official install guide: https://pandas.pydata.org/docs/getting_started/install.html
|
|
29
|
+
|
|
30
|
+
## Core concepts
|
|
31
|
+
- **DataFrame** — 2D labeled table with heterogeneous typed columns; the central data structure.
|
|
32
|
+
- **Series** — 1D labeled array; a single DataFrame column.
|
|
33
|
+
- **Index** — row/column labels enabling alignment; includes `DatetimeIndex` and `MultiIndex`.
|
|
34
|
+
- **Label vs position selection** — `.loc[]` selects by label, `.iloc[]` by integer position.
|
|
35
|
+
- **groupby** — split-apply-combine for aggregation and transformation over groups.
|
|
36
|
+
- **merge / join / concat** — SQL-style joins and stacking of DataFrames.
|
|
37
|
+
- **reshape** — `pivot`/`pivot_table`, `melt`, `stack`/`unstack` to move between wide and long forms.
|
|
38
|
+
|
|
39
|
+
## Best practices
|
|
40
|
+
- Assign via `.loc`/`.iloc` (`df.loc[mask, 'col'] = x`) rather than chained indexing (`df[a][b] = x`); under Copy-on-Write (default in pandas 3.0) chained assignment silently does nothing to the original (https://pandas.pydata.org/docs/user_guide/copy_on_write.html).
|
|
41
|
+
- Use vectorized operations and built-in methods instead of `.iterrows()` loops (https://pandas.pydata.org/docs/user_guide/enhancingperf.html).
|
|
42
|
+
- Parse dates explicitly (`pd.to_datetime`, `parse_dates=`) and set a `DatetimeIndex` for time-series work (https://pandas.pydata.org/docs/user_guide/timeseries.html).
|
|
43
|
+
- Prefer columnar formats like Parquet over CSV for large data round-trips (https://pandas.pydata.org/docs/user_guide/io.html).
|
|
44
|
+
|
|
45
|
+
## Common pitfalls
|
|
46
|
+
- Chained assignment (`df[mask]['col'] = x`) consistently never modifies the original under Copy-on-Write (default in pandas 3.0); no warning is raised (`SettingWithCopyWarning` was removed in 3.0) → use `df.loc[mask, 'col'] = x`.
|
|
47
|
+
- The `inplace=` keyword is being deprecated (PDEP-8) for methods where it is only syntactic sugar for reassignment → prefer reassigning the result. It is retained for value-mutating methods (`fillna`, `replace`, `ffill`, `bfill`, `interpolate`, `where`, `mask`, `clip`), which in pandas 3.0 now return `self` instead of `None`.
|
|
48
|
+
- Mixing label and position with `.ix` (removed) → use `.loc`/`.iloc`.
|
|
49
|
+
|
|
50
|
+
## Examples
|
|
51
|
+
```python
|
|
52
|
+
import pandas as pd
|
|
53
|
+
|
|
54
|
+
df = pd.read_csv("sales.csv", parse_dates=["date"])
|
|
55
|
+
df = df.dropna(subset=["amount"])
|
|
56
|
+
monthly = (
|
|
57
|
+
df.assign(month=df["date"].dt.to_period("M"))
|
|
58
|
+
.groupby(["month", "region"], as_index=False)["amount"]
|
|
59
|
+
.sum()
|
|
60
|
+
)
|
|
61
|
+
print(monthly.head())
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Further reading
|
|
65
|
+
- https://pandas.pydata.org/docs/user_guide/index.html — full user guide
|
|
66
|
+
- https://pandas.pydata.org/docs/getting_started/intro_tutorials/index.html — getting-started tutorials
|
|
67
|
+
- https://pandas.pydata.org/docs/reference/index.html — API reference
|
|
68
|
+
|
|
69
|
+
## Related skills
|
|
70
|
+
- ../numpy — array engine underlying pandas
|
|
71
|
+
- ../scikit-learn — consumes DataFrames for ML
|
|
72
|
+
- ../jupyter — interactive notebooks for data exploration
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: pytorch
|
|
3
|
+
description: PyTorch is an open-source deep learning framework with Pythonic tensors, dynamic (define-by-run) autograd, and strong GPU/CUDA acceleration, widely used for research and production. Consult this when building neural networks with torch.nn, writing training loops with autograd and optimizers, moving tensors between CPU/GPU/MPS devices, loading data with Dataset/DataLoader, compiling with torch.compile, doing distributed/DDP training, or saving/loading state_dict checkpoints, and when debugging device mismatches, gradient/requires_grad issues, or CUDA installs.
|
|
4
|
+
domain: stack
|
|
5
|
+
category: aiml
|
|
6
|
+
tags: [pytorch, deep-learning, machine-learning, autograd, neural-networks, gpu, python]
|
|
7
|
+
official_sources:
|
|
8
|
+
- https://docs.pytorch.org/docs/stable/index.html
|
|
9
|
+
- https://github.com/pytorch/pytorch
|
|
10
|
+
- https://pytorch.org/get-started/locally/
|
|
11
|
+
verified: 2026-06-17
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# PyTorch
|
|
15
|
+
|
|
16
|
+
## Overview
|
|
17
|
+
PyTorch is a Python-first deep learning framework offering GPU-accelerated tensors and a tape-based automatic differentiation system (autograd) with dynamic computation graphs. It is the dominant framework for ML research and is widely deployed in production via TorchScript, `torch.compile`, and ExecuTorch. Read this when defining models, writing custom training loops, managing devices, or building data pipelines.
|
|
18
|
+
|
|
19
|
+
## Official sources
|
|
20
|
+
- Docs: https://docs.pytorch.org/docs/stable/index.html
|
|
21
|
+
- Repo: https://github.com/pytorch/pytorch
|
|
22
|
+
- Install: https://pytorch.org/get-started/locally/
|
|
23
|
+
|
|
24
|
+
## Install / setup
|
|
25
|
+
```bash
|
|
26
|
+
# CPU-only (pip). For CUDA/ROCm builds, use the selector to get the right index URL.
|
|
27
|
+
pip install torch torchvision torchaudio
|
|
28
|
+
```
|
|
29
|
+
Command from the official install selector: https://pytorch.org/get-started/locally/
|
|
30
|
+
|
|
31
|
+
## Core concepts
|
|
32
|
+
- **Tensor** — n-dimensional array with a dtype and `.device`; supports GPU acceleration and NumPy-like ops.
|
|
33
|
+
- **autograd** — tensors with `requires_grad=True` record ops on a dynamic graph; `.backward()` computes gradients.
|
|
34
|
+
- **torch.nn.Module** — base class for models/layers; holds parameters and defines `forward()`.
|
|
35
|
+
- **Optimizer + loss** — `torch.optim` (SGD, Adam) updates parameters from gradients; losses live in `torch.nn`.
|
|
36
|
+
- **Dataset / DataLoader** — abstractions for sampling, batching, shuffling, and parallel data loading.
|
|
37
|
+
- **Device model** — explicitly move tensors/modules with `.to(device)` (`cuda`, `mps`, `cpu`).
|
|
38
|
+
- **torch.compile** — JIT graph capture + kernel fusion for speedups without changing model code.
|
|
39
|
+
|
|
40
|
+
## Best practices
|
|
41
|
+
- Zero gradients each step (`optimizer.zero_grad()`) before `loss.backward()` (https://docs.pytorch.org/tutorials/beginner/basics/optimization_tutorial.html).
|
|
42
|
+
- Save the `state_dict`, not the whole pickled model, for portable checkpoints (https://docs.pytorch.org/tutorials/beginner/saving_loading_models.html).
|
|
43
|
+
- Wrap eval/inference in `with torch.no_grad():` and call `model.eval()` to disable dropout/batchnorm updates (https://docs.pytorch.org/docs/stable/notes/autograd.html).
|
|
44
|
+
- Use `DataLoader(num_workers=...)` and `pin_memory=True` to overlap loading with compute (https://docs.pytorch.org/docs/stable/data.html).
|
|
45
|
+
|
|
46
|
+
## Common pitfalls
|
|
47
|
+
- "Expected all tensors on same device" → move both model and inputs with `.to(device)`.
|
|
48
|
+
- Accumulating graphs/memory by appending live tensors to a list → call `.item()` or `.detach()` for logging.
|
|
49
|
+
- Forgetting `model.train()` after `model.eval()` → batchnorm/dropout behave wrong in the next epoch.
|
|
50
|
+
|
|
51
|
+
## Examples
|
|
52
|
+
```python
|
|
53
|
+
import torch
|
|
54
|
+
from torch import nn
|
|
55
|
+
|
|
56
|
+
device = "cuda" if torch.cuda.is_available() else "cpu"
|
|
57
|
+
model = nn.Sequential(nn.Linear(784, 128), nn.ReLU(), nn.Linear(128, 10)).to(device)
|
|
58
|
+
opt = torch.optim.Adam(model.parameters(), lr=1e-3)
|
|
59
|
+
loss_fn = nn.CrossEntropyLoss()
|
|
60
|
+
|
|
61
|
+
x, y = torch.randn(32, 784, device=device), torch.randint(0, 10, (32,), device=device)
|
|
62
|
+
for _ in range(3):
|
|
63
|
+
opt.zero_grad()
|
|
64
|
+
loss = loss_fn(model(x), y)
|
|
65
|
+
loss.backward()
|
|
66
|
+
opt.step()
|
|
67
|
+
```
|
|
68
|
+
|
|
69
|
+
## Further reading
|
|
70
|
+
- https://docs.pytorch.org/tutorials/ — official tutorials and recipes
|
|
71
|
+
- https://docs.pytorch.org/docs/stable/notes/autograd.html — autograd mechanics
|
|
72
|
+
- https://pytorch.org/get-started/locally/ — install selector for CPU/CUDA/ROCm
|
|
73
|
+
|
|
74
|
+
## Related skills
|
|
75
|
+
- ../tensorflow — alternative deep learning framework
|
|
76
|
+
- ../keras — high-level API that can run on a PyTorch backend (Keras 3)
|
|
77
|
+
- ../numpy — array library PyTorch tensors convert to/from
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: scikit-learn
|
|
3
|
+
description: scikit-learn is the standard Python library for classical (non-deep) machine learning, offering consistent fit/predict/transform APIs for classification, regression, clustering, dimensionality reduction, model selection, and preprocessing built on NumPy/SciPy. Consult this when choosing an estimator, building Pipelines and ColumnTransformers, doing cross-validation and GridSearchCV/hyperparameter tuning, computing metrics, encoding/scaling features, or avoiding data leakage in train/test splits.
|
|
4
|
+
domain: stack
|
|
5
|
+
category: aiml
|
|
6
|
+
tags: [scikit-learn, machine-learning, sklearn, classification, regression, clustering, python]
|
|
7
|
+
official_sources:
|
|
8
|
+
- https://scikit-learn.org/stable/
|
|
9
|
+
- https://github.com/scikit-learn/scikit-learn
|
|
10
|
+
- https://scikit-learn.org/stable/install.html
|
|
11
|
+
verified: 2026-06-17
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# scikit-learn
|
|
15
|
+
|
|
16
|
+
## Overview
|
|
17
|
+
scikit-learn is a Python machine learning library built on NumPy, SciPy, and matplotlib, providing simple and efficient tools for predictive data analysis. It implements a huge range of classical algorithms behind a uniform estimator API (`fit`, `predict`, `transform`) plus utilities for preprocessing, model selection, and evaluation. Read this when doing tabular/classical ML, building reproducible Pipelines, or tuning and validating models.
|
|
18
|
+
|
|
19
|
+
## Official sources
|
|
20
|
+
- Docs: https://scikit-learn.org/stable/
|
|
21
|
+
- Repo: https://github.com/scikit-learn/scikit-learn
|
|
22
|
+
- Install: https://scikit-learn.org/stable/install.html
|
|
23
|
+
|
|
24
|
+
## Install / setup
|
|
25
|
+
```bash
|
|
26
|
+
pip install -U scikit-learn
|
|
27
|
+
```
|
|
28
|
+
Command from the official install guide: https://scikit-learn.org/stable/install.html
|
|
29
|
+
|
|
30
|
+
## Core concepts
|
|
31
|
+
- **Estimator** — any object with `.fit(X, y)`; the unifying abstraction across all algorithms.
|
|
32
|
+
- **Transformer** — estimator with `.transform()` (scalers, encoders, vectorizers) for feature engineering.
|
|
33
|
+
- **Predictor** — estimator with `.predict()` (and often `.predict_proba`/`.score`) for inference.
|
|
34
|
+
- **Pipeline** — chains transformers + a final estimator so fit/transform happen in order and only on training folds.
|
|
35
|
+
- **ColumnTransformer** — applies different transformers to different column subsets in one object.
|
|
36
|
+
- **Model selection** — `train_test_split`, `cross_val_score`, `GridSearchCV`/`RandomizedSearchCV` for evaluation and tuning.
|
|
37
|
+
- **Metrics** — `sklearn.metrics` for accuracy, precision/recall, ROC AUC, RMSE, R², etc.
|
|
38
|
+
|
|
39
|
+
## Best practices
|
|
40
|
+
- Put all preprocessing in a `Pipeline` so cross-validation refits transforms per fold and prevents leakage (https://scikit-learn.org/stable/modules/compose.html).
|
|
41
|
+
- Fit scalers/encoders on training data only; never fit on the full dataset before splitting (https://scikit-learn.org/stable/common_pitfalls.html).
|
|
42
|
+
- Use `GridSearchCV`/`RandomizedSearchCV` with a `cv` strategy rather than manual loops (https://scikit-learn.org/stable/modules/grid_search.html).
|
|
43
|
+
- Set `random_state` for reproducible splits and estimators (https://scikit-learn.org/stable/common_pitfalls.html).
|
|
44
|
+
|
|
45
|
+
## Common pitfalls
|
|
46
|
+
- Data leakage from scaling/encoding before the split → wrap preprocessing in a Pipeline and fit inside CV.
|
|
47
|
+
- Using accuracy on imbalanced classes → prefer precision/recall, F1, or ROC/PR AUC.
|
|
48
|
+
- Passing pandas columns of mixed dtypes → encode categoricals (e.g. `OneHotEncoder`) via ColumnTransformer first.
|
|
49
|
+
|
|
50
|
+
## Examples
|
|
51
|
+
```python
|
|
52
|
+
from sklearn.pipeline import Pipeline
|
|
53
|
+
from sklearn.preprocessing import StandardScaler
|
|
54
|
+
from sklearn.linear_model import LogisticRegression
|
|
55
|
+
from sklearn.model_selection import cross_val_score
|
|
56
|
+
from sklearn.datasets import load_iris
|
|
57
|
+
|
|
58
|
+
X, y = load_iris(return_X_y=True)
|
|
59
|
+
pipe = Pipeline([
|
|
60
|
+
("scale", StandardScaler()),
|
|
61
|
+
("clf", LogisticRegression(max_iter=1000)),
|
|
62
|
+
])
|
|
63
|
+
print(cross_val_score(pipe, X, y, cv=5).mean())
|
|
64
|
+
```
|
|
65
|
+
|
|
66
|
+
## Further reading
|
|
67
|
+
- https://scikit-learn.org/stable/user_guide.html — comprehensive user guide
|
|
68
|
+
- https://scikit-learn.org/stable/auto_examples/index.html — runnable example gallery
|
|
69
|
+
- https://scikit-learn.org/stable/common_pitfalls.html — common pitfalls and recommended practices
|
|
70
|
+
|
|
71
|
+
## Related skills
|
|
72
|
+
- ../pandas — DataFrames feeding scikit-learn estimators
|
|
73
|
+
- ../numpy — array backbone for X/y inputs
|
|
74
|
+
- ../jupyter — interactive environment for ML experiments
|
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: tensorflow
|
|
3
|
+
description: TensorFlow is Google's open-source end-to-end machine learning and deep learning framework for building, training, and deploying models across CPUs, GPUs, and TPUs. Consult this when working with tf.keras models, tf.data input pipelines, tf.function/autograph graph execution, SavedModel export, TensorFlow Serving/Lite/.js deployment, or distributed training (tf.distribute), and when debugging tensor shapes, eager vs graph mode, or GPU/CUDA setup.
|
|
4
|
+
domain: stack
|
|
5
|
+
category: aiml
|
|
6
|
+
tags: [tensorflow, deep-learning, machine-learning, keras, neural-networks, gpu, python]
|
|
7
|
+
official_sources:
|
|
8
|
+
- https://www.tensorflow.org/learn
|
|
9
|
+
- https://github.com/tensorflow/tensorflow
|
|
10
|
+
- https://www.tensorflow.org/install/pip
|
|
11
|
+
verified: 2026-06-17
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# TensorFlow
|
|
15
|
+
|
|
16
|
+
## Overview
|
|
17
|
+
TensorFlow is an end-to-end open-source platform for machine learning, with a comprehensive ecosystem of tools, libraries, and community resources. It centers on tensors flowing through computational graphs and ships the high-level `tf.keras` API for model building plus tooling for production deployment. Read this when building/training deep learning models, optimizing input pipelines, exporting SavedModels, or deploying with TF Serving, Lite, or .js.
|
|
18
|
+
|
|
19
|
+
## Official sources
|
|
20
|
+
- Docs: https://www.tensorflow.org/learn
|
|
21
|
+
- Repo: https://github.com/tensorflow/tensorflow
|
|
22
|
+
- Install: https://www.tensorflow.org/install/pip
|
|
23
|
+
|
|
24
|
+
## Install / setup
|
|
25
|
+
```bash
|
|
26
|
+
# CPU-only
|
|
27
|
+
python3 -m pip install tensorflow
|
|
28
|
+
|
|
29
|
+
# GPU/CUDA (Linux)
|
|
30
|
+
python3 -m pip install 'tensorflow[and-cuda]'
|
|
31
|
+
```
|
|
32
|
+
Commands from the official install guide: https://www.tensorflow.org/install/pip
|
|
33
|
+
|
|
34
|
+
## Core concepts
|
|
35
|
+
- **Tensor** — immutable n-dimensional array with a dtype and shape; the unit of data that flows through ops.
|
|
36
|
+
- **tf.keras** — the official high-level API for layers, models (`Sequential`, Functional, subclassing), training loops, and metrics.
|
|
37
|
+
- **Eager vs graph execution** — ops run imperatively by default; `@tf.function` traces Python into an optimized graph (AutoGraph) for speed.
|
|
38
|
+
- **tf.data** — composable, performant input pipelines (`map`, `batch`, `shuffle`, `prefetch`) for streaming data into training.
|
|
39
|
+
- **tf.Variable / GradientTape** — variables hold trainable state; `tf.GradientTape` records ops for automatic differentiation.
|
|
40
|
+
- **tf.distribute.Strategy** — abstraction for multi-GPU/multi-host/TPU training (e.g. `MirroredStrategy`).
|
|
41
|
+
- **SavedModel** — language-neutral serialization format for export, serving, and TFLite/TF.js conversion.
|
|
42
|
+
|
|
43
|
+
## Best practices
|
|
44
|
+
- Use `tf.data` with `.cache()` and `.prefetch(tf.data.AUTOTUNE)` to keep accelerators fed (https://www.tensorflow.org/guide/data_performance).
|
|
45
|
+
- Wrap hot training steps in `@tf.function` rather than running everything eagerly (https://www.tensorflow.org/guide/function).
|
|
46
|
+
- Use `tf.distribute.MirroredStrategy` for multi-GPU instead of manual device placement (https://www.tensorflow.org/guide/distributed_training).
|
|
47
|
+
- Export a SavedModel for serving with `model.export("path")` (or `tf.saved_model.save(model, "path")`); use `model.save("model.keras")` for the native Keras checkpoint format. In Keras 3 (TF 2.16+), `model.save()` requires a `.keras` extension and no longer writes a SavedModel (https://www.tensorflow.org/guide/saved_model).
|
|
48
|
+
|
|
49
|
+
## Common pitfalls
|
|
50
|
+
- Mixing NumPy ops inside `@tf.function` creates Python side effects that get traced once → use TF ops or `tf.numpy_function`.
|
|
51
|
+
- Forgetting `.prefetch`/`.batch` ordering starves the GPU → batch then prefetch with AUTOTUNE.
|
|
52
|
+
- GPU not detected → verify with `tf.config.list_physical_devices('GPU')` and match CUDA/cuDNN to the install matrix.
|
|
53
|
+
|
|
54
|
+
## Examples
|
|
55
|
+
```python
|
|
56
|
+
import tensorflow as tf
|
|
57
|
+
|
|
58
|
+
model = tf.keras.Sequential([
|
|
59
|
+
tf.keras.layers.Dense(128, activation="relu"),
|
|
60
|
+
tf.keras.layers.Dense(10),
|
|
61
|
+
])
|
|
62
|
+
model.compile(optimizer="adam",
|
|
63
|
+
loss=tf.keras.losses.SparseCategoricalCrossentropy(from_logits=True),
|
|
64
|
+
metrics=["accuracy"])
|
|
65
|
+
|
|
66
|
+
(x, y), _ = tf.keras.datasets.mnist.load_data()
|
|
67
|
+
ds = tf.data.Dataset.from_tensor_slices((x / 255.0, y)).batch(32).prefetch(tf.data.AUTOTUNE)
|
|
68
|
+
model.fit(ds, epochs=3)
|
|
69
|
+
```
|
|
70
|
+
|
|
71
|
+
## Further reading
|
|
72
|
+
- https://www.tensorflow.org/tutorials — official tutorials (beginner to advanced)
|
|
73
|
+
- https://www.tensorflow.org/guide — in-depth guides on tf.data, tf.function, distribution
|
|
74
|
+
- https://www.tensorflow.org/api_docs/python/tf — full Python API reference
|
|
75
|
+
|
|
76
|
+
## Related skills
|
|
77
|
+
- ../keras — high-level model API; tf.keras is TensorFlow's bundled Keras
|
|
78
|
+
- ../pytorch — alternative deep learning framework
|
|
79
|
+
- ../numpy — array foundation TensorFlow interops with
|