Skip to content

LetsChurch/lets.church

Repository files navigation

lets.church

Setup

Prereqs

  1. Setup three S3 (or S3-compatible) buckets on your provider of choice for ingest and public
  2. Ensure the ingest bucket has the following CORS configuration:
[
  {
    "AllowedOrigins": [
      "*"
    ],
    "AllowedMethods": [
      "PUT"
    ],
    "AllowedHeaders": [
      "*"
    ],
    "ExposeHeaders": [
      "ETag"
    ]
  }
]
  1. Ensure the public bucket has the following CORS configuration:
[
  {
    "AllowedOrigins": [
      "*"
    ],
    "AllowedMethods": [
      "GET"
    ]
  }
]

Development Environment

  1. Install git-lfs, Docker, nix, and direnv
  2. Clone this repo
  3. Copy .envrc.local.example to .envrc.local and update the variables to actual values
  4. Run direnv allow to load the shell environment
  5. Run just start to start the docker-compose setup
  6. Run just init to migrate the database and set up ElasticSearch
  7. Run just seed to seed the database with sample data and upload sample data to S3
  8. Run just open to open the web interface
  9. For host-local editor autocomplete and running scripts outside of docker, run just npmci to install all project dependnecies