Database Platforms Overview
Connect CAPYSQUASH with your database platform - Supabase, Neon, Railway, and more
Database Platforms
CAPYSQUASH integrates seamlessly with modern PostgreSQL platforms, understanding their unique patterns and optimizing migrations accordingly.
Supported Platforms
Supabase
Complete guide for Supabase auth, RLS, storage, and realtime patterns
Neon
Serverless Postgres optimization with branching and connection pooling
Railway
Deploy-focused optimization for Railway PostgreSQL
Platform-Specific Features
🟣 Supabase
CAPYSQUASH automatically detects and optimizes:
- Auth Schema - Preserves Supabase authentication tables and functions
- RLS Policies - Consolidates Row Level Security policies safely
- Storage Buckets - Maintains storage schema integrity
- Realtime - Preserves publication and subscription patterns
- Edge Functions - Handles function dependencies correctly
🟢 Neon
Optimizations for serverless PostgreSQL:
- Branching - Branch-aware migration optimization
- Connection Pooling - Pool-friendly consolidation strategies
- Auto-scaling - Optimizations for serverless patterns
- Compute Efficiency - Reduces migration execution time
🔵 Railway
Deploy-optimized migrations:
- Fast Deploys - Minimize deployment time with fewer files
- Environment Branches - Branch-specific optimizations
- GitHub Integration - Seamless PR workflows
- Build Time - Reduce build and migration time
How Platform Integration Works
AUTOMATIC DETECTION
CAPYSQUASH automatically identifies your platform by analyzing:
- Schema Patterns - Recognizes platform-specific tables and schemas
- Connection Strings - Detects platform from database URL
- File Patterns - Identifies platform-specific migration patterns
- Configuration - Reads platform hints from config files
No Configuration Required
Platform detection is automatic. CAPYSQUASH will identify your platform and apply the appropriate optimizations without any setup.
Connection Setup
Environment Variables
# Set your database connection string
export DATABASE_URL="postgresql://user:pass@host:port/db"
# Platform-specific examples
export DATABASE_URL="postgresql://postgres:pass@db.xxx.supabase.co:5432/postgres"
export DATABASE_URL="postgresql://user:pass@ep-xxx.us-east-2.aws.neon.tech/neondb"
export DATABASE_URL="postgresql://postgres:pass@xxx.railway.app:5432/railway"Connection via Config
{
"database_connection": {
"url": "${DATABASE_URL}",
"platform": "supabase", // Optional: force specific platform
"ssl_mode": "require"
}
}Platform Comparison
| Feature | Supabase | Neon | Railway |
|---|---|---|---|
| Auth Schema Detection | ✅ Automatic | ➖ N/A | ➖ N/A |
| RLS Optimization | ✅ Advanced | ✅ Basic | ✅ Basic |
| Branching Support | ✅ Native | ✅ Advanced | ✅ Basic |
| Connection Pooling | ✅ PgBouncer | ✅ Native | ✅ Proxy |
| Serverless | ➖ Optional | ✅ Native | ➖ Optional |
| Edge Functions | ✅ Deno | ➖ N/A | ➖ N/A |
| Storage Integration | ✅ Native | ➖ External | ➖ External |
Multi-Platform Projects
Working with multiple platforms? CAPYSQUASH handles it:
{
"environments": {
"development": {
"platform": "local",
"database_url": "postgresql://localhost:5432/dev"
},
"staging": {
"platform": "neon",
"database_url": "${NEON_STAGING_URL}"
},
"production": {
"platform": "supabase",
"database_url": "${SUPABASE_PROD_URL}"
}
}
}Best Practices
✅ RECOMMENDATIONS
- Use platform-native features - Leverage platform-specific optimizations
- Test on platform - Validate migrations in your actual platform environment
- Match production - Use same platform for dev/staging/production
- Monitor performance - Track migration execution time on platform
- Follow platform limits - Respect connection and query limits
Coming Soon
We're adding support for more platforms:
- AWS RDS - Amazon RDS for PostgreSQL
- Google Cloud SQL - GCP PostgreSQL
- Azure Database - Azure PostgreSQL
- Heroku Postgres - Heroku platform
- Digital Ocean - Managed PostgreSQL
- Render - Render PostgreSQL
Want your platform supported? Request it on GitHub
Next Steps
How is this guide?