npx skills add ...
npx skills add neondatabase/neon-js --skill neon-js-react
npx skills add neondatabase/neon-js --skill neon-js-react
Sets up the full Neon SDK with authentication AND database queries in React apps (Vite, CRA). Creates typed client, generates database types, and configures auth UI. Use for auth + database integration.
Help developers set up @neondatabase/neon-js with authentication AND database queries in React applications (Vite, CRA, etc.).
Use this skill when:
neon-auth-nextjs as a starting point and add Data API configuration, or see examples/nextjs-neon-auth/)Adapter Factory Pattern: Always call adapters with ()
React Adapter Import: NOT exported from main - use subpath
Type Safety: Always use Database generic for type-safe queries
CSS Import: Choose ONE - either /ui/css OR /ui/tailwind, never both
CLI Options:
src/client.ts)src/providers.tsx)src/main.tsx).env.local)Without Tailwind (pre-built CSS bundle ~47KB):
With Tailwind CSS v4:
IMPORTANT: Never import both - causes duplicate styles.
Override CSS variables in your stylesheet:
Full configuration:
Session shape:
Pathnames: sign-in, sign-up, forgot-password, reset-password, callback, sign-out
google, github, twitter, discord, apple, microsoft, facebook, linkedin, spotify, twitch, gitlab, bitbucket
Enable RLS-based data access for unauthenticated users:
Automatic via BroadcastChannel. Sign out in one tab signs out all tabs.
| Error | Cause |
|---|---|
Invalid credentials | Wrong email/password |
User already exists | Email registered |
permission denied for table | Missing RLS policy or GRANT |
JWT expired | Token needs refresh |
Grant permissions to the anonymous role in your database:
ALTER TABLE posts ENABLE ROW LEVEL SECURITY;GRANT SELECT, INSERT ON public.posts TO authenticated;Regenerate types after schema changes:
OAuth automatically uses popup flow in iframes. Ensure popups aren't blocked.
.env.local?