This guide walks you from a blank machine to a fully running FocusFlow instance. You’ll clone the repository, install dependencies, wire up your Firebase project, and authenticate as a coach, athlete, or admin — all in under five minutes.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/piratta/gymApp/llms.txt
Use this file to discover all available pages before exploring further.
Clone the repository
Pull the FocusFlow source code from GitHub and move into the project directory.
Configure environment variables
Copy the provided example file to Open
.env and fill in your credentials. The three variables control AI features, OAuth callbacks, and Google Workspace sign-in..env and replace the placeholder values:.env
Set up Firebase
FocusFlow reads its Firebase configuration from
firebase-applet-config.json in the project root. You need a Firebase project with Firestore (Native mode) and Authentication (Anonymous + Google providers) enabled.- Go to console.firebase.google.com and create a new project.
- Navigate to Build → Firestore Database and create a database in Native mode.
- Navigate to Build → Authentication → Sign-in method and enable both Anonymous and Google providers.
- Go to Project settings → General → Your apps, register a Web app, and copy the
firebaseConfigobject values intofirebase-applet-config.json:
firebase-applet-config.json
Start the development server
Launch FocusFlow on port 3000, bound to all interfaces so it’s reachable from other devices on the same network.The app will be available at http://localhost:3000.
Log in
On the login screen, enter credentials for an existing user or create a new one through the Admin Dashboard.The default seed user that ships with a fresh Firestore database is:
Log in as admin to create your first coach account, then log in as that coach to add athlete (client) accounts. Roles available in the system are
| Role | Username | Password |
|---|---|---|
| Admin | admin | admin |
coach, client, and admin.If no active Firebase user session is found on startup, FocusFlow automatically signs in anonymously via Firebase Authentication. This means you can open the app immediately — even before configuring real Firebase credentials — and explore the full UI with seed data. The anonymous session satisfies Firestore security rules, so all read and write operations work as expected while you finish setting up your project.