Overview
Every Yboard project gets a dedicated PostgreSQL database. Tables you create are automatically exposed as REST API endpoints — no manual CRUD code needed.Technology Stack
Core Components
- PostgreSQL — The primary data store with full SQL support
- PostgREST — Automatically generates REST APIs from your schema
- PgBouncer — Connection pooler for efficient concurrent access
- JWT Auth — Token-based authentication integrated into queries
How It Works
1. Schema Definition
- Table structure is stored in PostgreSQL
- PostgREST discovers the schema via database introspection
- REST endpoints are instantly available
2. API Generation
3. Query Translation
REST query parameters are translated into SQL:4. Security Layer
- JWT tokens are validated on each request
- User ID extracted from token
- RLS policies applied based on user context
- Only authorized rows are returned
5. Response Format
- Results returned as JSON arrays
- HTTP status codes indicate success/failure
- Headers include pagination info
Query Syntax
Operators
Complex Queries
Database Structure
Schema Layout
Data Types
Performance Optimizations
Connection Pooling
- PgBouncer manages database connections
- Reduces connection overhead
- Handles concurrent requests efficiently
Query Optimization
- PostgREST generates optimized SQL
- Uses prepared statements
- Leverages PostgreSQL query planner
Indexing Strategy
- Automatic indexes on primary keys
- Foreign key indexes for joins
- Custom indexes via migrations
Caching
- ETags for conditional requests
- Client-side caching support
- Response compression
Best Practices
- Use RLS policies for data security instead of application-level checks
- Add indexes on frequently queried columns
- Use
selectparameter to limit returned fields for better performance - Prefer
JSONBoverJSONfor structured data - Use transactions via RPC functions for complex operations