Skip to content

software-students-spring2025/5-final-bten

 
 

Repository files navigation

Web App CI

Web App Image

Team Members:

[Ariya Mathrawala] (https://github.com/ariyamath29) [Nikita Bhaskar] (https://github.com/nikitabhaskar) [Jonathan Gao] (https://github.com/jg169) [Ethan Zheng] (https://github.com/ez2146)

Recipe Generator Web Application

A web application that generates personalized recipes based on available ingredients and health goals using AI.

Project Structure

/web-app/              # Main application directory
├── app.py            # Flask application
├── mlclient.py       # AI/ML integration
├── test_app.py       # Tests
├── templates/        # HTML templates
│   └── index.html   # Main page
├── static/          # Static files (CSS, JS, etc.)
└── .env            # Environment variables (not in git)

Prerequisites

Install the following software on your machine:

Configuration

  1. Clone the repository:
git clone https://github.com/software-students-spring2025/5-final-bten.git
cd 5-final-bten

Run with Docker:

  1. Build and Run
docker-compose-up --build
  1. Run Tests
docker exec -it . pytest

Access the web interface at http://127.0.0.1:3000

Run without Docker:

  1. Virtual Environment Setup

Using pipenv:**

pip install pipenv
pipenv shell

Using venv:**

python3 -m venv .venv
source .venv/bin/activate #On Mac
.venv\Scripts\activate.bat #On Windows
  1. Install Dependencies
pip install -r requirements.txt
  1. Create and set up environment variables:
cp ./sample_env.txt .env
# Edit .env with your MongoDB URI
  1. Connect to database using mongosh

  2. Run Application

cd web-app
python3 app.py
  1. Run Tests
cd web-app
pytest test_app.py

The application will be available at http://localhost:3000

Features

  • Input available ingredients
  • Specify health goals and dietary preferences
  • Get AI-generated recipes
  • View recipe history
  • MongoDB integration for recipe storage

Development

  • Main branch: Production-ready code
  • Development happens in feature branches
  • PRs required for merging into main
  • CI/CD pipeline runs tests automatically

About

software-engineering-spring-2025-5-final-final-project created by GitHub Classroom

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Python 55.7%
  • HTML 37.8%
  • Shell 5.5%
  • Dockerfile 1.0%