serverpod-configuration

Resolve YAML, environment variables, and Dart overrides for Serverpod runtime configurations.

3.2k|369|Updated May 22, 2021
One-click install
npx skills add https://github.com/serverpod/serverpod --skill serverpod-configuration
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: serverpod-configuration
Source: https://github.com/serverpod/serverpod/tree/main/packages/serverpod/skills/serverpod-configuration
Command: npx skills add https://github.com/serverpod/serverpod --skill serverpod-configuration

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Setting up Serverpod across development, staging, production, and test environments is error-prone because configuration is split across YAML files, environment variables, and per-mode secrets.

Core Features & Use Cases

  • Environment-aware YAML configuration: Define mode-specific settings in config/development.yaml, config/staging.yaml, config/production.yaml, and config/test.yaml and select the run mode with --mode or SERVERPOD_RUN_MODE.
  • Priority-based overrides: Ensure predictable resolution where a Dart config object overrides environment variables, which override YAML config files.
  • Secrets and passwords management: Store sensitive values in config/passwords.yaml or supply them via environment variables prefixed with SERVERPOD_PASSWORD_, organized by shared plus per-mode sections.

Quick Start

Use the serverpod-configuration skill to produce a correct config/development.yaml (and passwords.yaml entries) for your API server, database, and Redis, then run Serverpod with the appropriate mode and environment variable overrides for sensitive values.

Frequently Asked Questions about serverpod-configuration

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I configure Serverpod across different environments?▼

Configure Serverpod using mode-specific YAML files like development.yaml and production.yaml. Select the active environment using the --mode flag or SERVERPOD_RUN_MODE variable to apply the correct database, Redis, and API server settings.

What is the precedence order for Serverpod configuration overrides?▼

Serverpod applies configuration using a priority-based resolution: Dart config objects take precedence over environment variables, which in turn override settings defined in YAML config files.

How do I manage passwords and secrets in Serverpod securely?▼

Manage Serverpod secrets by storing sensitive values in config/passwords.yaml or supplying them via environment variables prefixed with SERVERPOD_PASSWORD_, organized through shared and per-mode sections.

Can I use environment variables to override Serverpod database settings?▼

Yes, environment variables override YAML database settings for PostgreSQL or SQLite connections. They are resolved below Dart config overrides but above base YAML configurations.

Does Serverpod configuration support Redis connectivity setup?▼

Yes, Serverpod configuration resolves Redis connectivity alongside API endpoints and database connections within your mode-specific YAML files.

Why is my Serverpod test configuration not loading correctly?▼

Serverpod test configuration requires correct mode selection via --mode or SERVERPOD_RUN_MODE. Ensure test.yaml is properly formatted and that environment variable overrides follow the correct precedence rules.