The ENGAGE-HF Web Frontend repository contains a Next.js project providing automated GitHub Actions and setups for code linting, testing & test coverage reports, docker deployments, a docker compose setup, local packages for modular deployment.
You can run the project using the following command. You will need to install Node.js and npm, e.g., using homebrew (recommended for macOS) or the official Node.js installer.
- Install All Dependencies
npm install
- Setup Firebase Environment Values
Create an .env.local
file or inject the following environment variables required for the Google Firebase Setup:
VITE_PUBLIC_FIREBASE_API_KEY=
VITE_PUBLIC_FIREBASE_AUTH_DOMAIN=
VITE_PUBLIC_FIREBASE_PROJECT_ID=
VITE_PUBLIC_FIREBASE_STORAGE_BUCKET=
VITE_PUBLIC_FIREBASE_MESSAGING_SENDER_ID=
VITE_PUBLIC_FIREBASE_APP_ID=
VITE_PUBLIC_EMULATOR=
VITE_PUBLIC_EMAIL_PASSWORD_SIGN_IN=""
- Start the Vite Application
npm run dev
Open http://localhost:3000 with your browser to see the result.
You can edit the page by modifying app/page.tsx
. The page auto-updates as you edit the file.
- Install Docker on your machine.
- Build the image and run the docker compose setup:
docker compose -f docker-compose-development.yml up
.
You can view the images you create with docker images
.
Open http://localhost with your browser to see the result. You can visit http://localhost:8080 to see the reverse proxy setup before the main application.
The docker-compose.yml
setup contains a production-ready setup using a reverse proxy.
Every version of the application on the main
branch is automatically packaged into docker images using the main
tag. Every release is also published using the latest
and respective version tags.
This repository contains all necessary files to deploy the web frontend to Google Cloud Firebase (Stanford mHealth Platform).
...
This project is licensed under the MIT License. See Licenses for more information.
This project is developed as part of the Stanford Byers Center for Biodesign at Stanford University. See CONTRIBUTORS.md for a full list of all contributors.