This is the repository for Bloodalert project.
This project uses pnpm and pip as a package manager. It includes the following packages/apps:
web
: a Next.js applinebot
: a Flask http server with PonyORM connected to PostgresDB
To build all apps and packages, run the following command:
cd my-turborepo
pnpm run build
To develop all apps and packages, run the following command:
cd my-turborepo
pnpm run dev
To start locally running the project or deploy you need to have the following technologies setup:
- Docker
- Python 3
- Node js
- pnpm
- LINE Bot account
- Firebase project
Before running the setup script, environment variables are required to be setup first.
Begin by duplicating .env.example to the root directory and apps/web. The .env configures the database name, username and database then LINE bot account channel access token and channel secret. And lastly Firebase configuration is required and began with NEXT_PUBLIC_ prefix (only used for Authentication).
To run the setup script, run the following command:
npm run setup
or run the following command if you got pnpm already installed
pnpm run setup
The setup script will automatically pull, install and setup
- Required Python libraries
- Project Node js dependencies
- PostgresDB Docker image