A web-based UI tool used to upload and manage media items for the Thrive Church Official API.
The idea behind this tool is to make it easier for the tech team to be able to upload new media items / series' to the Thrive Church Official API.
- Angular 20
- Node.js 20+
- Bootstrap 5.3.2
- TypeScript 5.8.3
- Docker (for production deployment)
- nginx (for serving production builds)
- Node.js 20 or higher
- Angular CLI (
npm install -g @angular/cli) - Docker Desktop (for production deployment)
-
Navigate to the UI directory:
cd UI/ThriveChurchMediaToolUI -
Install dependencies:
npm install
-
Start the development server:
ng serve
-
Open your browser:
- Navigate to
http://localhost:4200 - The app will automatically reload when you make changes
- Navigate to
The application uses different environment files for different deployment scenarios:
Used when running ng serve locally:
export const environment = {
production: false,
apiURL: "http://localhost:8080"
};Used for local "production" deployment via Docker:
export const environment = {
production: true,
apiURL: "http://your-production-api-url:port"
};Used for cloud deployments:
export const environment = {
production: true,
apiURL: "http://your-production-api-url:port"
};The UI can be deployed as a Docker container for production use, replacing the previous IIS deployment.
# From the repository root
cd UI/ThriveChurchMediaToolUI
# Build the Docker image
docker build -t thrive-ui:local .# Run on port 8081 (or any available port)
docker run -d -p 8081:80 --name thrive-ui thrive-ui:local
# Access the UI at http://localhost:8081- Dockerfile:
UI/ThriveChurchMediaToolUI/Dockerfile - nginx config:
UI/ThriveChurchMediaToolUI/nginx.conf - Build configuration: Uses
environment.docker.tsfor API URL - Port mapping: Host port (8081) → Container port (80)
# View logs
docker logs thrive-ui
# Stop the container
docker stop thrive-ui
# Start the container
docker start thrive-ui
# Rebuild after changes
docker stop thrive-ui && docker rm thrive-ui && \
docker build -t thrive-ui:local . && \
docker run -d -p 8081:80 --name thrive-ui thrive-ui:local
