Leaf-Me is a full-stack Uber Eats-style delivery platform designed for dispensaries. The app streamlines the process of placing, preparing, and delivering orders through multiple role-based interfaces:
The backend is deployed and fully functional with Docker. It supports user authentication, allowing users to sign in and out successfully.
Near completion with just a few pages remaining. At it current state it supports full userflow through the application Features include:
Shift focus to developing the Restaurant Frontend for dispensaries to manage and fulfill orders.
Clone the repository:
git clone https://github.com/your-username/leaf-me-backend.git
Install dependencies:
npm install
Set up the environment variables:
Create a .env
file in the root directory and add the following:
PORT=3001
PG_HOST=localhost
PG_PORT=5432
PG_DATABASE=leafme_db
PG_USER=your_postgres_username
PG_PASSWORD=your_postgres_password
SECRET_TOKEN=your_secret_token
Initialize the database:
npm run dbinit
Seed the database:
npm run dbseed
To start the server using Docker:
docker run -d --name leafme-backend-container -p 3001:3000 your-dockerhub-username/leafme-backend:latest
The backend is automatically deployed to an EC2 instance using GitHub Actions when changes are pushed to the main branch. The deployment process includes:
Ensure that all necessary secrets (EC2_SSH_PRIVATE_KEY, EC2_HOST, EC2_USER, DOCKERHUB_USER) are set in the GitHub repository settings.
For detailed information about the API endpoints and their usage, please refer to the README file located in the backend folder of this repository.