The Journal App is a web application designed to help users track their daily emotions and journal entries. The system integrates a machine-learning emotion classifier to analyze journal content and provide insights into the user's emotional state.
- Functionality: Uses a Hugging Face pre-trained model (distilbert-base-uncased-emotion) to classify emotions from text.
- Docker Image: ML Client on DockerHub
- Functionality: Provides the frontend and backend for journal management.
- Docker Image: Web App on DockerHub
- Docker and Docker Compose installed
- Python 3.11+
- MongoDB
- Git
- Pipenv
1. Clone the respository:
git clone https://github.com/software-students-fall2024/5-final-fixers3-0.git
cd 5-final-fixers3-0
2. Set up environment variables:
MONGO_DBNAME=SWE_Project_5
MONGO_URI=
SECRET_KEY=
ML_CLIENT_URL=http://ml-client:5002/analyze
FLASK_APP=app.py
FLASK_ENV=production
FLASK_PORT=5001
FLASK_DEBUG=1
3. Create a new virtual environment following the commands:
python3 -m venv .venv
Mac
source .venv/bin/activate
Windows
.venv\Scripts\activate
4. Install Dependencies if not already installed
pip install -r requirements.txt
5. Docker Compose
Make sure that the Docker Desktop is downloaded and you are logged into your account before running the following comand:
docker-compose up --build