Skip to content

SebaB29/MyFiubaGymBro

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

140 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

πŸ‹οΈβ€β™‚οΈ MyFiubaGymBro

MyFiubaGymBro is a web platform developed as a project for FIUBA. It is designed to help students stay in shape and keep a healthy track of their habits. The system features a FastAPI backend, a React + TypeScript frontend, and a PostgreSQL database, all orchestrated with Docker and ready for development using DevContainers.

πŸ“ Table of Contents

πŸ“ Description

A detailed platform for student wellness. It uses a layered architecture (routers, dtos, services, repositories) to ensure scalability and maintainability.

πŸ“¦ Core Technologies

  • 🐍 Python + FastAPI + SQLAlchemy
  • 🐘 PostgreSQL + Alembic (Migrations)
  • βš›οΈ React + TypeScript + Vite
  • 🐳 Docker + Docker Compose
  • πŸ› οΈ DevContainer for consistent development environments.

🧱 Project Structure

.
β”œβ”€β”€ .devcontainer/  # DevContainer configuration
β”œβ”€β”€ backend/        # FastAPI source code
β”œβ”€β”€ frontend/       # React + Vite source code
β”œβ”€β”€ local-running/  # Docker Compose orchestration scripts
β”œβ”€β”€ setup.sh        # Initial setup script
└── README.md

πŸš€ Getting Started

πŸ“‹ Prerequisites

  • Docker & Docker Compose.
  • Visual Studio Code + Dev Containers extension (highly recommended).

βš™οΈ Installation

  1. Clone the repository:

    git clone git@github.com:SebaB29/MyFiubaGymBro.git
    cd myFiubaGymBro
  2. Environment Variables:
    Create a .env file in the backend/ folder:

    DATABASE_URL=postgresql://postgres:secret@db:5432/myfiubagymbro

πŸ’‘ Usage

πŸ§ͺ Local Development (DevContainer)

  1. Open the project folder in VS Code.
  2. Click "Reopen in Container" when prompted (or use Ctrl+Shift+P β†’ Dev Containers: Reopen in Container).
  3. Services will be available at:
    • Backend: http://localhost:8000
    • Frontend: http://localhost:8080

πŸ› οΈ Manual Backend Setup

cd backend
pip install -r requirements.txt
alembic upgrade head
fastapi run src/main.py --port 8000

πŸ’» Manual Frontend Setup

cd frontend
npm install
npm run dev

🐳 Docker Compose

To run everything without DevContainers:

./start.sh   # Starts all services
./stop.sh    # Stops all services

🀝 Contributing

  1. Fork the project.
  2. Create your Feature Branch (git checkout -b feature/AmazingFeature).
  3. Commit your changes (git commit -m 'Add some AmazingFeature').
  4. Push to the Branch (git push origin feature/AmazingFeature).
  5. Open a Pull Request.

πŸ‘₯ Team

Nombre Usuario de GitHub
SebastiΓ‘n Brizuela @SebaB29
Federico Solari @FedericoSolari
Luciano Gamberale @lucianogamberale
JoaquΓ­n Velurtas @joaquinvelurtas
Santiago Rocco @SantiagoRocco

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

About

πŸ‹οΈ Transforming student habits through code. A seamless, containerized fitness platform that bridges the gap between study sessions and healthy living with a modern Tech Stack.

Topics

Resources

License

Code of conduct

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors