agentsclimarketplace

Stack knowledge

Skill zachjxyz/jvn/template/.claude/skills/stack-knowledge

Spec-driven development with Claude Code. Named after John von Neumann — the man who wrote the spec that defined computing. Three commands: /spec, /design, /build.

Install
npx -y skills add zachjxyz/jvn --skill stack-knowledge

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 2 stars2 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

What its author says it does

Copied from the file, not written here

Project technology stack patterns for Next.js + Neon Postgres + Drizzle ORM + Better Auth + Tailwind CSS

SKILL.md

2.2 KB, as published. Nobody here has run it

Stack Knowledge

This skill provides stack-specific patterns for agents making architectural and implementation decisions.

Neon Postgres

  • Use @neondatabase/serverless driver with Drizzle ORM
  • Connection: DATABASE_URL env var pointing to Neon's pooled connection string
  • Neon branching: each Vercel preview deployment can get its own database branch
  • No Row-Level Security — authorization happens in the application layer via Better Auth middleware
  • Migrations: drizzle-kit push for development, drizzle-kit migrate for production
  • Always use connection pooling in serverless environments

Drizzle ORM

  • All database access goes through Drizzle — no raw SQL in application code
  • Define schemas in src/db/schema/ with one file per entity
  • Index every column used in WHERE, JOIN, or ORDER BY
  • Use partial indexes when filtering on constant conditions (e.g., status = 'active')
  • Infer types from schema: type User = typeof users.$inferSelect

Better Auth

  • Configure with Drizzle adapter pointing at Neon
  • After adding/changing plugins, always run: npx @better-auth/cli@latest generate
  • Import plugins from dedicated paths: import { twoFactor } from "better-auth/plugins/two-factor"
  • Infer session types: typeof auth.$Infer.Session
  • Environment variables: BETTER_AUTH_SECRET, BETTER_AUTH_URL
  • Server-side auth: auth.api.getSession()

Next.js App Router

  • Server Components by default — only add "use client" for interactivity/hooks/browser APIs
  • Server actions for mutations, route handlers for webhooks/external integrations
  • Parallel data fetching with Promise.all() — never sequential awaits
  • Wrap async server components in <Suspense> with meaningful fallbacks
  • Dynamic imports via next/dynamic for heavy components not needed on first paint

Tailwind CSS

  • Utility-first — avoid custom CSS unless absolutely necessary
  • Use cn() utility (clsx + tailwind-merge) for conditional classes
  • Design tokens via CSS custom properties in globals.css

Keep looking

Skills are one crate of 328,083. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.