Timeout Palestra
The platform for the Timeout gym. An iOS and Android app with workout plans, exercise videos, diets and personal-trainer bookings, plus a dashboard for the staff.

Timeout puts the gym on your phone: every member has their own plan, the exercise videos and their personal trainer just a booking away. The staff run everything from a web dashboard. The project has three parts: the mobile app, the dashboard and the backend.
The app
- Workout plans tailored to each member, with supersets and a video for every exercise. You can also train by freely picking the body areas to work on.
- Diets assigned by the staff.
- Personal trainers: pick a trainer, see their free slots and book. Bookings can be cancelled and annotated, and stay in your history.
- Notifications and home-screen content updated by the gym.
- Memberships and payments with Stripe.
The dashboard
A Flutter web app where the staff manage users, exercises, plans, diets, media, notifications, pricing and personal trainers, including their calendars and availability.
Backend and infrastructure
A Node.js and Express API on MongoDB, with Firebase for authentication and push notifications and a GoHighLevel integration for the trainers' calendars. Within the team I focused on containerising the dashboard and backend with Docker, putting them behind Traefik, managing them with Portainer, and the GitLab CI/CD pipelines with automatic deployment.




