Environments

For small teams, we recommend 3-4 environments. 1 local, and 2-3 deployment environments: develop (optional), staging, and production. Depending on team size, it can be beneficial to have a deployed environment for QA (staging) that has some guaruntee of being functional, while also having a deployed environment (develop) for developers to deploy to and break without consequence.


Each environment has its own .env config file located in the top level config directory. View on GitHub.

Example .env file

.env.production

DEPLOY_ENV='production'
URL='supernova.yawnch.com'
S3_BUCKET='my-production-bucket'
AWS_PROFILE='profile_name'
AMPLITUDE_API_KEY=''
SENTRY_DSN=''
VariableDescription
DEPLOY_ENVUsed to determine which .env file should be used.
URLUsed for the meta tag og:url. See index.ejs.
S3_BUCKETThe name of the S3 bucket. Used only for deploys from your local machine.
AWS_PROFILEThe name of your machine's local AWS profile. Used only for deploys from your local machine.
AMPLITUDE_API_KEYSee the Analytics docs for setup instructions.
SENTRY_DSNSee the Sentry docs for setup instructions.

Naming

We recommend the following naming convention:


EnvironmentBucket
Developdev.yawnch.com
Stagingstage.yawnch.com
Productionyawnch.com