Welcome to SermonBeacon 👋

Sermon Beacon is an open source project meant for church archives at its core, but also a great way to manage and store valuable information for your church such as speakers and visiting speakers, sermon videos and sermon notes, etc.

image

Prerequisites

Before you begin you need to make sure you have everything needed to get the project up and running.

  • Make sure you are on the latest node
  • We are using yarn as the package manager for the frontend application.
  • It will be best if you are on a MacOS machine, otherwise, there may be extra configurations needed on your end.
  • Depending on your role on this project, reach out for specific permissions.
  • Familiarize yourself with this README

Getting Started

Once all prerequisites are installed, run make init to download other necessary tools for development on MacOS.

If the AWS CLI has never been installed on your machine before, make sure to configure it.

Local Development

For local development, run the following make commands:

# Run this first and only once to install client dependencies.
make install

# Starting the server
- make start-server # starts up hasura and applies migrations
# Open a new terminal
- cd server
- hasura console # This step is only required if you need access to the database. You can also find the GQL playground here, which may be helpful during development.

# Starting the client application
- make start-admin # This will start the admin app

# Run this to start clean versions of the applications
make start-clean

Note: we are frequently working on a better solution for starting the apps and the server. So, check back frequently in case anything has changed.

The frontend is available on http://localhost:4200 (admin) or http://localhost:4300 (user) and the backend is available on http://localhost:9695.

Troubleshooting

If for some reason you are running into any issues, try running make start-clean to clear your container and images and restarting Local Developement process.

Available Make Commands

Below are all the available Make targets (copied from running make help).

docker-clean                   Clean up the last containers for this project
help                           Help documentation
init                           Install required tools for local environment on macOS
install                        Install dependencies for frontend application
start-clean                    Clean the docker containers then start
start-client                   Start admin app locally (http://localhost:4200)
start-server                   Start the containers