Technologies
The project is built using the following technologies:
-
Python - The main programming language used for the project.
-
Docker - Used for containerization and deployment of the project.
-
Docker Compose - Used for defining and running multi-container Docker applications.
-
MongoDB - Used as the NoSQL database for storing experiment metadata and results.
-
MLflow - Used for experiment tracking and management.
-
Effector - Used for managing the state of the application.
-
PyDantic - Used for data validation and settings management.
-
FastAPI - Used for building the backend API.
The project consists of 3 main components:
-
Backend: The backend is built using FastAPI and is responsible for handling API requests
and managing the interaction with the database and MLflow. -
Frontend: The frontend is built using Vue.js and is responsible for providing a user interface for interacting with the backend API and visualizing experiment results.
-
Data Exploration Environment: The data exploration environment is built using Jupyter and is responsible for providing tools for analyzing and visualizing experiment results.
The technologies used in the project per component are:
-
Backend:
-
Docker version >= 28.1.1
-
Docker Compose version >= v2.35.1-desktop.1
-
Python 3.11
-
MLflow version >= 2.18.0
-
Core Libraries:
-
fastapi[standard]
-
notebook==6.5.4
-
python-decouple
-
pydantic==2.9.1
-
pydantic_settings==2.4.0
-
mlflow==2.18.0
-
-
-
Frontend:
-
Docker version >= 28.1.1
-
Docker Compose version >= v2.35.1-desktop.1
-
Node.js version >= 20.0
-
pnpm version >= 9.2.0
-
Vite
-
VUE 3 & Typescript
-
Core Libraries:
-
vue@^3.5.13
-
vue-router@4
-
@headlessui/vue@1.7.23
-
@heroicons/vue@2.2.0
-
@tanstack/vue-query@^5.81.2
-
axios@^1.9.0
-
keycloak-js@^26.2.0
-
tailwindcss@3.4.17
-
autoprefixer@^10.4.21
-
postcss@^8.5.4
-
-
-
-
Data Exploration Environment:
-
Docker version >= 28.1.1
-
Docker Compose version >= v2.35.1-desktop.1
-
jupyter/scipy-notebook:latest image
-