Merge branch 'main' of github.com:Azurioh/BaselHack-2024-GuideMe (@Ubuntu)
See also: Frontend
GuideMe - AI-Powered Yoga Pose Assistant
A web application developed during BaselHack that helps users perfect their yoga poses through AI-powered pose detection and personalized instructions.
🎯 Overview
GuideMe analyzes your yoga poses through uploaded photos and provides detailed instructions to help you achieve the perfect form. Whether you're a beginner or an experienced yogi, our AI assistant guides you toward better practice.
🤖 AI Models
- Pose Detection: Using yogaposeimage_classification from Hugging Face to accurately identify yoga poses
- Instruction Generation: Powered by Mistral-7B-Instruct-v0.3 to provide detailed, personalized pose instructions
🌐 Deployment
- Hosting: Application fully hosted on a VPS (Virtual Private Server)
- Domain: Temporarily accessible at https://baselhack.azu-dev.fr/
- Infrastructure: Both client and server running in Docker containers on the same VPS
🚀 Features
- AI-powered yoga pose detection
- Detailed pose correction instructions
- Export instructions in PDF or DOCX format
- User-friendly interface
- Real-time feedback
💻 Tech Stack & Benefits
Frontend
- React.js: Enables component reusability and efficient DOM manipulation
- Ant Design (antd): Provides production-ready UI components, reducing development time
Backend
- Express.js: Offers lightweight and flexible routing for fast API development
- Prisma ORM: Simplifies database operations with type-safe queries and auto-completion
- PostgreSQL: Ensures data integrity with ACID compliance and handles complex relationships efficiently
DevOps & Project Management
- Docker: Ensures consistent environments across development and production
- GitHub Actions: Automates testing and deployment processes
- Docker Compose: Simplifies multi-container application management
- Jira: Facilitates agile workflow with sprint planning and task tracking
🏗️ Project Structure
GuideMe/
├── assets/ # Global assets
├── code/
│ ├── client/ # Frontend application
│ │ ├── public/ # Static files
│ │ └── src/
│ │ ├── assets/ # Frontend assets
│ │ ├── auth/ # Authentication logic
│ │ ├── components/ # React components
│ │ ├── lang/ # Internationalization
│ │ └── pages/ # Application pages
│ └── server/ # Backend application
│ ├── ai/ # AI pose detection logic
│ ├── prisma/ # Database schema and migrations
│ └── src/
│ ├── controllers/ # Route controllers
│ ├── entities/ # Data models
│ ├── services/ # Routes logic
│ ├── routers/ # Routes
│ └── middlewares/ # Middlewares
└── documentation/ # Project documentation
🔧 Setup & Installation
Clone the repository:
bash git clone https://github.com/Azurioh/BaselHack-2024-GuideMe cd BaselHack-2024-GuideMeRun with Docker:
bash docker-compose up --build
🔄 Development Workflow
Our deployment process is streamlined through GitHub Actions:
- Push to main branch triggers automatic deployment
- GitHub Actions rebuilds and redeploys Docker containers on our VPS
- Application is automatically updated with zero downtime
👥 Team
- @Antoine Grand
- @Kevin Glaentzlin
- @Gabin Pinos
- @Sacha Ramstein
- @Arthur Spiller
- @Xavier Rognon
- @Corentin Piquet
- @Alan Cunin
- @Evan Candan
Project developed for the BaselHack 2024 hackathon.
Event finish
add database call to like (@Ubuntu)
[+]: Save guide on docx (@sramstein)
Merge branch 'main' of github.com:Corent1P/BaselHack-2024-GuideMe (@agrand2004)
[Feature][~] = fix profile page. (@agrand2004)
[+][README] adding readme.md (@Corent1P)
Merge branch 'main' of github.com:Corent1P/BaselHack-2024-GuideMe (@Corent1P)
[+][README] adding readme.md (@Corent1P)
[Feature][-] = remove all the assets (@agrand2004)
Merge branch 'main' of github.com:Corent1P/BaselHack-2024-GuideMe (@agrand2004)
[Feature][~] = fix the connection and the creation of a guide. (@agrand2004)
Merge branch 'main' of github.com:Corent1P/BaselHack-2024-GuideMe (@sramstein)
[+]: The guideline post, get automaticly the author id (@sramstein)
fix ga (@Azurioh)
fix login (@Azurioh)
fix ga (@Azurioh)
fix login (@Azurioh)
add ga (@Azurioh)
fix user repository (@Azurioh)
[Feature][~] = add authorization in the axios requests (@agrand2004)
[+]: Get authentificator in header + hide password in user route (@sramstein)
Merge branch 'main' of github.com:Corent1P/BaselHack-2024-GuideMe (@agrand2004)
fix docker compose building (@Azurioh)
Merge branch 'main' of github.com:Corent1P/BaselHack-2024-GuideMe (@agrand2004)
[Merge][~] = Merge with front (@agrand2004)
fix docker compose building (@Azurioh)
refactor cors authorization (@Azurioh)
tmp remove github actions (@Azurioh)
Merge branch 'Front' of github.com:Corent1P/BaselHack-2024-GuideMe into Front (@xavier-rognon)
Merge branch 'main' of github.com:Corent1P/BaselHack-2024-GuideMe into Front (@xavier-rognon)
Merge branch 'main' of github.com:Azurioh/BaselHack-2024-GuideMe (@Azurioh)
refactor user routes and add middlewares to the routes (@Azurioh)
[Feature][~] = increase size limit in the server. (@agrand2004)
[Feature][~] = add the count of like when you like a record (@agrand2004)
Merge branch 'Front' of github.com:Corent1P/BaselHack-2024-GuideMe into Front (@xavier-rognon)
Merge branch 'main' of github.com:Corent1P/BaselHack-2024-GuideMe into Front (@xavier-rognon)
[Feature][+] = Fix the DragImage component. (@agrand2004)
[~][Merge] Fixing merge with main branch and adding AI yoga instructions feature (@Corent1P)
[+][Feature] Adding AI that generate instructions depending on yoga poses (@Corent1P)
Merge branch 'Front' of github.com:Azurioh/BaselHack-2024-GuideMe into Front (@GabinP-Epitech2027)
[+][Feat] Translate every text in English/French/German (@GabinP-Epitech2027)
Merge branch 'Front' of github.com:Corent1P/BaselHack-2024-GuideMe into Front (@xavier-rognon)
[Feature] [+] = Linking the main table to the back end (@xavier-rognon)
add missing include on guideline repository (@Azurioh)
fix docker compose building (@Azurioh)
[Feature][+] = Add title and fix the event propagation of the like button in the table (@agrand2004)
Merge pull request #17 from Azurioh/B3-6-create-simple-ai
B3 6 create simple ai (@kevinGLAENTZLIN)
Merge branch 'Front' of github.com:Corent1P/BaselHack-2024-GuideMe into Front (@agrand2004)
[Feature][+] = Change the description into markdown and add buttons to copy or download the files. (@agrand2004)
