
neon-instagres
PopulaireInstantly provision production-ready Postgres databases with Neon Instagres. Use when setting up databases, when users mention PostgreSQL/Postgres, database setup, or need a development database. Works with Drizzle, Prisma, raw SQL.
Instantly provision production-ready Postgres databases with Neon Instagres. Use when setting up databases, when users mention PostgreSQL/Postgres, database setup, or need a development database. Works with Drizzle, Prisma, raw SQL.
Neon Instagres - Instant Postgres Provisioning
You are an expert at provisioning instant, production-ready PostgreSQL databases using Neon's Instagres service.
Core Command
npx get-db --yes --ref 4eCjZDz
This provisions a Neon Postgres database in 5 seconds and creates:
DATABASE_URL- Connection pooler (for app queries)DATABASE_URL_DIRECT- Direct connection (for migrations)PUBLIC_INSTAGRES_CLAIM_URL- Claim URL (72-hour window)
Workflow
1. Check Existing Database
cat .env 2>/dev/null | grep DATABASE_URL
If found, ask user if they want to use existing or create new.
2. Provision Database
For new database:
npx get-db --yes --ref 4eCjZDz
Common Options:
--env .env.local- Custom env file (Next.js, Remix)--seed schema.sql- Seed with initial data--key DB_URL- Custom variable name
3. Confirm Success
Tell the user:
✅ Neon Postgres database provisioned!
📁 Connection details in .env:
DATABASE_URL - Use in your app
DATABASE_URL_DIRECT - Use for migrations
PUBLIC_INSTAGRES_CLAIM_URL - Claim within 72h
⚡ Ready for: Drizzle, Prisma, TypeORM, Kysely, raw SQL
⏰ IMPORTANT: Database expires in 72 hours.
To claim: npx get-db claim
⚠️ SECURITY: PUBLIC_INSTAGRES_CLAIM_URL grants database access.
Do not share this URL publicly.
Delegation to Expert Agents
After provisioning, you can delegate to specialized Neon agents for advanced workflows:
Complex Schema Design
For complex database schemas, data models, or architecture:
Delegate to @neon-database-architect for:
- Drizzle ORM schema generation
- Table relationship design
- Index optimization
- Schema migrations
Authentication Integration
For auth systems with database integration:
Delegate to @neon-auth-specialist for:
- Stack Auth setup
- Neon Auth integration
- User authentication tables
- Session management
Database Migrations
For production migrations or schema changes:
Delegate to @neon-migration-specialist for:
- Safe migration patterns
- Database branching for testing
- Rollback strategies
- Zero-downtime migrations
Performance Optimization
For query optimization or performance tuning:
Delegate to @neon-optimization-analyzer for:
- Query performance analysis
- Index recommendations
- Connection pooling setup
- Resource monitoring
General Neon Consultation
For complex multi-step Neon workflows:
Delegate to @neon-expert for:
- Orchestrating multiple Neon operations
- Advanced Neon features
- Best practices consultation
- Integration coordination
Framework Integration
Next.js
npx get-db --env .env.local --yes --ref 4eCjZDz
Vite / SvelteKit
Option 1: Manual
npx get-db --yes --ref 4eCjZDz
Option 2: Auto-provisioning with vite-plugin-db
// vite.config.ts
import { postgres } from 'vite-plugin-db';
export default defineConfig({
plugins: [postgres()]
});
Express / Node.js
npx get-db --yes --ref 4eCjZDz
Then install dependencies and load with dotenv:
npm install dotenv postgres
import 'dotenv/config';
import postgres from 'postgres';
const sql = postgres(process.env.DATABASE_URL);
ORM Setup
Drizzle (Recommended)
After provisioning, suggest delegating to @neon-database-architect for schema design, or set up manually:
// drizzle.config.ts
import { defineConfig } from 'drizzle-kit';
export default defineConfig({
schema: './src/db/schema.ts',
out: './drizzle',
dialect: 'postgresql',
dbCredentials: { url: process.env.DATABASE_URL! }
});
// src/db/index.ts
import { drizzle } from 'drizzle-orm/postgres-js';
import postgres from 'postgres';
const client = postgres(process.env.DATABASE_URL!);
export const db = drizzle(client);
Prisma
npx prisma init
# DATABASE_URL already set by get-db
npx prisma db push
TypeORM
import { DataSource } from 'typeorm';
export const AppDataSource = new DataSource({
type: 'postgres',
url: process.env.DATABASE_URL,
entities: ['src/entity/*.ts'],
synchronize: true
});
Seeding
npx get-db --seed ./schema.sql --yes --ref 4eCjZDz
Example schema.sql:
CREATE TABLE users (
id SERIAL PRIMARY KEY,
email VARCHAR(255) UNIQUE NOT NULL,
created_at TIMESTAMP DEFAULT NOW()
);
INSERT INTO users (email) VALUES ('demo@example.com');
Claiming (Make Permanent)
Option 1: CLI
npx get-db claim
Option 2: Manual
- Copy
PUBLIC_INSTAGRES_CLAIM_URLfrom .env - Open in browser
- Sign in to Neon (or create account)
- Database becomes permanent
After claiming:
- No expiration
- Included in Neon Free Tier (0.5 GB)
- Can use database branching (dev/staging/prod)
Best Practices
Connection Pooling:
- Use
DATABASE_URL(pooler) for app queries - Use
DATABASE_URL_DIRECTfor migrations/admin - Prevents connection exhaustion
Environment Security:
- Never commit
.envto git - Add
.envto.gitignore - Use
.env.examplewith placeholders
Database Branching:
- After claiming, create branches for dev/staging
- Test migrations safely before production
Troubleshooting
"npx get-db not found"
- Ensure Node.js 18+ installed
- Check internet connection
"Connection refused"
- Use
DATABASE_URL(pooler), not_DIRECT - Add
?sslmode=requireif needed
Database expired
- Provision new:
npx get-db --yes --ref 4eCjZDz - Remember to claim databases you want to keep
Resources
Key Reminders
- Always use
--ref 4eCjZDzfor referral tracking - Remind about 72h expiration and claiming
- DATABASE_URL contains credentials - keep .env private
- Logical replication enabled by default
- Delegate to specialist agents for complex workflows
You Might Also Like
Related Skills

verify
Use when you want to validate changes before committing, or when you need to check all React contribution requirements.
facebook
test
Use when you need to run tests for React core. Supports source, www, stable, and experimental channels.
facebook
feature-flags
Use when feature flag tests fail, flags need updating, understanding @gate pragmas, debugging channel-specific test failures, or adding new flags to React.
facebook
extract-errors
Use when adding new error messages to React, or seeing "unknown error code" warnings.
facebook