Skip to content

Configuration

Configure Spry and SQLPage for your project

Configure SQLPage in sqlpage/sqlpage.json:

{
"database_url": "sqlite://app.db",
"port": 8080,
"site_title": "My Spry Application",
"site_prefix": "",
"max_uploaded_file_size": 10485760,
"environment": "development"
}

Connection string for your database (SQLite or PostgreSQL)

"database_url": "postgresql://user:pass@localhost:5432/db"

Port number for the SQLPage server (default: 8080)

Default title for your application pages

URL prefix for all routes (useful for subdirectory deployments)

Configure Spry using environment variables:

Terminal window
# Database connection
export DATABASE_URL="postgresql://localhost:5432/mydb"
# SQLPage configuration
export SQLPAGE_PORT=8080
export SQLPAGE_SITE_PREFIX=""
# Spry behavior
export SPRY_WATCH_INTERVAL=500
export SPRY_LOG_LEVEL="info"

Recommended directory structure for Spry projects:

project/
├── Spryfile.md # Main executable markdown
├── spry.ts # Spry CLI script
├── sqlpage/
│ ├── sqlpage.json # SQLPage config (dev)
│ ├── sqlpage.prod.json # Production config
│ └── migrations/ # Database migrations
├── dev-src.auto/ # Generated SQLPage files (dev)
├── dist/ # Production build output
├── scripts/ # Additional scripts
└── data/ # Data files and seeds

Use different configurations for different environments:

Terminal window
./spry.ts spc --fs dev-src.auto --conf sqlpage/sqlpage.json --watch
Terminal window
./spry.ts spc --fs dist --conf sqlpage/sqlpage.prod.json