Skip to main content
Zygo is configured entirely through environment variables. This page documents every available setting, organized by category.

Core Application

Always set a strong, unique SECRET_KEY in production. The default value is insecure and will allow session forgery.

Database

Zygo uses PostgreSQL as its primary database. The connection string follows the standard format:
The host, username, password, and database name are automatically parsed from the connection string. You only need to set SQLALCHEMY_DATABASE_URI.

Redis

Redis is used for background job queues and rate limiting.

Authentication

Sessions

Default Admin Account

Change DEFAULT_EMAIL and DEFAULT_PASSWORD before your deployment. By default, you will need to update the password when you first login.

Self-Registration

OAuth / Social Login

To set up Google authentication:
  1. Create a project in the Google Cloud Console
  2. Configure the OAuth consent screen
  3. Create OAuth 2.0 credentials
  4. Add your Zygo callback URL as an authorized redirect URI

Encryption

Generate a new key:
If you change the FERNET_KEY after storing credentials, all previously encrypted data becomes unreadable. Back up and re-encrypt before rotating.

Email

Zygo sends transactional emails for account confirmation, password resets, notifications, and tenant invitations. Two providers are supported.

Internal API

Change INTERNAL_API_SECRET in production. The default value is publicly known.

Logging

Debugging

Environments

Zygo ships with three configuration profiles. The active profile is set at startup.
  • Debug mode: off
  • Use for all live deployments
  • Set via: FLASK_CONFIG=default or omit (default)
  • Debug mode: on
  • Hot reloading and verbose error pages
  • Set via: FLASK_CONFIG=development
  • Debug mode: on
  • CSRF protection: disabled
  • Use for automated test suites
  • Set via: FLASK_CONFIG=testing
All three profiles share the same configuration variables — the only differences are DEBUG, TESTING, and WTF_CSRF_ENABLED.

Minimal Production Setup

The minimum environment variables you need to set for a production deployment:
After first deployment, log in with the default admin credentials, change the password immediately, and then configure tenants and invite your team.