neon-instagres

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.

24,269 stars

Best use case

neon-instagres is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

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.

Teams using neon-instagres should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/neon-instagres/SKILL.md --create-dirs "https://raw.githubusercontent.com/davila7/claude-code-templates/main/cli-tool/components/skills/database/neon-instagres/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/neon-instagres/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How neon-instagres Compares

Feature / Agentneon-instagresStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

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.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

Related Guides

SKILL.md Source

# Neon Instagres - Instant Postgres Provisioning

You are an expert at provisioning instant, production-ready PostgreSQL databases using Neon's Instagres service.

## Core Command

```bash
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
```bash
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:
```bash
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
```bash
npx get-db --env .env.local --yes --ref 4eCjZDz
```

### Vite / SvelteKit
Option 1: Manual
```bash
npx get-db --yes --ref 4eCjZDz
```

Option 2: Auto-provisioning with vite-plugin-db
```typescript
// vite.config.ts
import { postgres } from 'vite-plugin-db';

export default defineConfig({
  plugins: [postgres()]
});
```

### Express / Node.js
```bash
npx get-db --yes --ref 4eCjZDz
```

Then install dependencies and load with dotenv:
```bash
npm install dotenv postgres
```

```javascript
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:

```typescript
// 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! }
});
```

```typescript
// 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
```bash
npx prisma init
# DATABASE_URL already set by get-db
npx prisma db push
```

### TypeORM
```typescript
import { DataSource } from 'typeorm';

export const AppDataSource = new DataSource({
  type: 'postgres',
  url: process.env.DATABASE_URL,
  entities: ['src/entity/*.ts'],
  synchronize: true
});
```

## Seeding

```bash
npx get-db --seed ./schema.sql --yes --ref 4eCjZDz
```

Example schema.sql:
```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**
```bash
npx get-db claim
```

**Option 2: Manual**
1. Copy `PUBLIC_INSTAGRES_CLAIM_URL` from .env
2. Open in browser
3. Sign in to Neon (or create account)
4. 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_DIRECT` for migrations/admin
- Prevents connection exhaustion

**Environment Security:**
- Never commit `.env` to git
- Add `.env` to `.gitignore`
- Use `.env.example` with 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=require` if needed

**Database expired**
- Provision new: `npx get-db --yes --ref 4eCjZDz`
- Remember to claim databases you want to keep

## Resources

- 📖 [Instagres Docs](https://neon.tech/docs/guides/instagres)
- 🎛️ [Neon Console](https://console.neon.tech)
- 🚀 [Get Started](https://get.neon.com/4eCjZDz)

## Key Reminders

- **Always use `--ref 4eCjZDz`** for 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

Related Skills

neon-postgres

24269
from davila7/claude-code-templates

Expert patterns for Neon serverless Postgres, branching, connection pooling, and Prisma/Drizzle integration Use when: neon database, serverless postgres, database branching, neon postgres, postgres serverless.

using-neon

24269
from davila7/claude-code-templates

Guides and best practices for working with Neon Serverless Postgres. Covers getting started, local development with Neon, choosing a connection method, Neon features, authentication (@neondatabase/auth), PostgREST-style data API (@neondatabase/neon-js), Neon CLI, and Neon's Platform API/SDKs. Use for any Neon-related questions.

async-python-patterns

24269
from davila7/claude-code-templates

Comprehensive guidance for implementing asynchronous Python applications using asyncio, concurrent programming patterns, and async/await for building high-performance, non-blocking systems.

slack-automation

24269
from davila7/claude-code-templates

Automate Slack workspace operations including messaging, search, channel management, and reaction workflows through Composio's Slack toolkit.

linear-automation

24269
from davila7/claude-code-templates

Automate Linear tasks via Rube MCP (Composio): issues, projects, cycles, teams, labels. Always search tools first for current schemas.

jira-automation

24269
from davila7/claude-code-templates

Automate Jira tasks via Rube MCP (Composio): issues, projects, sprints, boards, comments, users. Always search tools first for current schemas.

gitops-workflow

24269
from davila7/claude-code-templates

Complete guide to implementing GitOps workflows with ArgoCD and Flux for automated Kubernetes deployments.

github-automation

24269
from davila7/claude-code-templates

Automate GitHub repositories, issues, pull requests, branches, CI/CD, and permissions via Rube MCP (Composio). Manage code workflows, review PRs, search code, and handle deployments programmatically.

github-actions-templates

24269
from davila7/claude-code-templates

Production-ready GitHub Actions workflow patterns for testing, building, and deploying applications.

zustand-store-ts

24269
from davila7/claude-code-templates

Create Zustand stores following established patterns with proper TypeScript types and middleware.

zod-validation-expert

24269
from davila7/claude-code-templates

Expert in Zod — TypeScript-first schema validation. Covers parsing, custom errors, refinements, type inference, and integration with React Hook Form, Next.js, and tRPC.

tanstack-query-expert

24269
from davila7/claude-code-templates

Expert in TanStack Query (React Query) — asynchronous state management. Covers data fetching, stale time configuration, mutations, optimistic updates, and Next.js App Router (SSR) integration.