Install any skill in seconds. Free to start, no credit card required.
Get Started Free →alinaqi/supabase-nextjs
Next.js with Supabase and Drizzle ORM
Passed 22 of 22 test cases with the skill, and 11 of 22 without it.
and 14 more in the full report
11 fixed11 passed either way0 still failing0 broke
Tokens, turns and time describe resource use, not a dollar price.
One of 11 test cases the skill fixed. Same model, same prompt, with and without the skill.
Write a query function `getPublishedPosts(limit = 10)` in `src/db/queries/posts.ts` that fetches published posts joined with their author profile name, ordered by creation date descending.
| Checked | Without skill | With skill |
|---|---|---|
| Query performs an innerJoin between posts and profiles | Missed | Passed |
| Filter condition uses eq(posts.published, true) | Missed | Passed |
| Results are ordered using desc(posts.createdAt) | Passed | Passed |
The instructions your model reads when the skill loads.
Next.js App Router patterns with Supabase Auth and Drizzle ORM.
Sources: Supabase Next.js Guide | Drizzle + Supabase
Drizzle for queries, Supabase for auth/storage, server components by default.
Use Drizzle ORM for type-safe database access. Use Supabase client for auth, storage, and realtime. Prefer server components; use client components only when needed.
project/
├── src/
│ ├── app/
│ │ ├── (auth)/
│ │ │ ├── login/page.tsx
│ │ │ ├── signup/page.tsx
│ │ │ └── callback/route.ts
│ │ ├── (dashboard)/
│ │ │ └── page.tsx
│ │ ├── api/
│ │ │ └── [...]/route.ts
│ │ ├── layout.tsx
│ │ └── page.tsx
│ ├── components/
│ │ ├── auth/
│ │ └── ui/
│ ├── db/
│ │ ├── index.ts # Drizzle client
│ │ ├── schema.ts # Schema definitions
│ │ └── queries/ # Query functions
test cases passed, vs 11 / 22 without
Published skills whose descriptions closely match this one, with their headline benchmark lift.
More skills from the same source and nearby in the registry, with their headline benchmark lift.