Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/coslynx/fittrack-ejrd48

Project: Core Functionality Prototype for Seamless User Experience. Created at https://spectra.codes, which is owned by @Drix10
https://github.com/coslynx/fittrack-ejrd48

code-generation developer-tools devops expressjs fitness-community fitness-motivation fitness-tracker goal-setting machine-learning mvp nextjs nodejs postgresql progress-tracking react social-fitness software-development tailwindcss workout-tracking zustand

Last synced: 16 days ago
JSON representation

Project: Core Functionality Prototype for Seamless User Experience. Created at https://spectra.codes, which is owned by @Drix10

Awesome Lists containing this project

README

        




FitTrack-ejrd48


Web application for fitness enthusiasts to track their progress, set goals, and share their achievements.


Developed with the software and tools below.



Framework: Next.js
Frontend: Javascript, HTML, CSS
Backend: Node.js
LLMs: Custom, Gemini, OpenAI



git-last-commit
GitHub commit activity
GitHub top language

## ๐Ÿ“‘ Table of Contents
- ๐Ÿ“ Overview
- ๐Ÿ“ฆ Features
- ๐Ÿ“‚ Structure
- ๐Ÿ’ป Installation
- ๐Ÿ—๏ธ Usage
- ๐ŸŒ Hosting
- ๐Ÿ“„ License
- ๐Ÿ‘ Authors

## ๐Ÿ“ Overview
The repository contains a Minimum Viable Product (MVP) called "FitTrack-ejrd48" that provides a comprehensive solution for fitness enthusiasts to effectively track their fitness goals, monitor their progress, and celebrate their achievements with their social network. This web application will enable users to set personalized fitness goals, record their workouts and progress, and share their achievements with friends and family. The application is built using modern web technologies, including HTML, CSS, JavaScript, and the Next.js framework with a Node.js backend and a PostgreSQL database.

## ๐Ÿ“ฆ Features
| | Feature | Description |
|----|--------------------|--------------------------------------------------------------------------------------------------------------------|
| โš™๏ธ | **Architecture** | The codebase follows a modular architectural pattern with separate directories for different functionalities, ensuring easier maintenance and scalability. |
| ๐Ÿ“„ | **Documentation** | The repository includes a README file that provides a detailed overview of the Minimum Viable Product (MVP), its dependencies, and usage instructions.|
| ๐Ÿ”— | **Dependencies** | The codebase relies on various external libraries and packages such as React, uuid, esbuild, and eslint, which are essential for building and styling the UI components, and handling external services.|
| ๐Ÿงฉ | **Modularity** | The modular structure allows for easier maintenance and reusability of the code, with separate directories and files for different functionalities such as background, components, and content.|
| ๐Ÿงช | **Testing** | Implement unit tests using frameworks like Jest or React Testing Library to ensure the reliability and robustness of the codebase. |
| โšก๏ธ | **Performance** | The performance of the system can be optimized based on factors such as the browser and hardware being used. Consider implementing performance optimizations for better efficiency.|
| ๐Ÿ” | **Security** | Enhance security by implementing measures such as input validation, data encryption, and secure communication protocols.|
| ๐Ÿ”€ | **Version Control**| Utilizes Git for version control with GitHub Actions workflow files for automated build and release processes.|
| ๐Ÿ”Œ | **Integrations** | Interacts with browser APIs, external services through HTTP requests, and includes integrations with speech recognition and synthesis APIs.|
| ๐Ÿ“ถ | **Scalability** | Design the system to handle increased user load and data volume, utilizing caching strategies and cloud-based solutions for better scalability. |

## ๐Ÿ“‚ Structure

```
โ”œโ”€โ”€ pages
โ”‚ โ”œโ”€โ”€ api
โ”‚ โ”‚ โ””โ”€โ”€ auth
โ”‚ โ”‚ โ””โ”€โ”€ [...nextauth].js
โ”‚ โ”œโ”€โ”€ _app.js
โ”‚ โ”œโ”€โ”€ index.js
โ”‚ โ”œโ”€โ”€ dashboard
โ”‚ โ”‚ โ””โ”€โ”€ page.js
โ”‚ โ”œโ”€โ”€ goals
โ”‚ โ”‚ โ””โ”€โ”€ page.js
โ”‚ โ”œโ”€โ”€ workouts
โ”‚ โ”‚ โ””โ”€โ”€ page.js
โ”‚ โ”œโ”€โ”€ social
โ”‚ โ”‚ โ””โ”€โ”€ page.js
โ”‚ โ””โ”€โ”€ profile
โ”‚ โ””โ”€โ”€ page.js
โ”œโ”€โ”€ components
โ”‚ โ”œโ”€โ”€ Header.js
โ”‚ โ”œโ”€โ”€ Footer.js
โ”‚ โ”œโ”€โ”€ GoalCard.js
โ”‚ โ”œโ”€โ”€ WorkoutCard.js
โ”‚ โ”œโ”€โ”€ ProgressChart.js
โ”‚ โ”œโ”€โ”€ SocialFeed.js
โ”‚ โ”œโ”€โ”€ LoginForm.js
โ”‚ โ”œโ”€โ”€ SignupForm.js
โ”‚ โ”œโ”€โ”€ UserProfile.js
โ”‚ โ””โ”€โ”€ UserGoal.js
โ”œโ”€โ”€ utils
โ”‚ โ”œโ”€โ”€ helpers.js
โ”‚ โ””โ”€โ”€ constants.js
โ”œโ”€โ”€ prisma
โ”‚ โ””โ”€โ”€ schema.prisma
โ”œโ”€โ”€ .env
โ”œโ”€โ”€ tailwind.config.js
โ”œโ”€โ”€ postcss.config.js
โ”œโ”€โ”€ next.config.js
โ””โ”€โ”€ tsconfig.json

```

## ๐Ÿ’ป Installation
### ๐Ÿ”ง Prerequisites
- Node.js
- npm
- Docker

### ๐Ÿš€ Setup Instructions
1. Clone the repository:
- `git clone https://github.com/spectra-ai-codegen/FitTrack-ejrd48.git`
2. Navigate to the Minimum Viable Product (MVP) directory:
- `cd FitTrack-ejrd48`
3. Install dependencies:
- `npm install`

## ๐Ÿ—๏ธ Usage
### ๐Ÿƒโ€โ™‚๏ธ Running the Minimum Viable Product (MVP)
1. Start the development server:
- `npm start`
2. Open your browser and navigate to [http://localhost:3000](http://localhost:3000).

### โš™๏ธ Configuration
Adjust configuration settings in `config.js` or `.env`.

### ๐Ÿ“š Examples
- ๐Ÿ“ **Example 1**: Setting a fitness goal
- Go to the `goals` page.
- Select the type of goal (e.g., weight loss, muscle gain).
- Enter the target value and deadline.
- Click "Set Goal" to save the goal.
- ๐Ÿ“ **Example 2**: Logging a workout
- Go to the `workouts` page.
- Select the type of exercise (e.g., cardio, strength training).
- Enter the duration and intensity level.
- Click "Log Workout" to save the workout.
- ๐Ÿ“ **Example 3**: Sharing a fitness achievement
- Go to the `social` page.
- Click "Create Post" to share a workout achievement, progress update, or motivational message.
- Select your audience (e.g., friends, followers).
- Click "Post" to share the update.

## ๐ŸŒ Hosting
### ๐Ÿš€ Deployment Instructions

#### Heroku
1. Install the Heroku CLI:
- `npm install -g heroku`
2. Login to Heroku:
- `heroku login`
3. Create a new Heroku app:
- `heroku create`
4. Deploy the code:
- `git push heroku main`

### ๐Ÿ”‘ Environment Variables
- `DB_HOST`: Database host
- `DB_USER`: Database user
- `DB_PASS`: Database password

## ๐Ÿ“œ API Documentation
### ๐Ÿ” Endpoints
- **GET /api/users**: Retrieves a list of users.
- **POST /api/users**: Creates a new user.
- **GET /api/goals**: Retrieves a list of goals for a user.
- **POST /api/goals**: Creates a new goal for a user.
- **GET /api/workouts**: Retrieves a list of workouts for a user.
- **POST /api/workouts**: Logs a new workout for a user.

### ๐Ÿ”’ Authentication
Use JWT tokens for authentication.

### ๐Ÿ“ Examples
- `curl -X GET http://localhost:3000/api/users`

## ๐Ÿ“œ License
This Minimum Viable Product (MVP) is licensed under the [GNU AGPLv3](https://choosealicense.com/licenses/agpl-3.0/).

## ๐Ÿ‘ฅ Authors
- **Author Name** - [Spectra.codes](https://spectra.codes)
- **Creator Name** - [DRIX10](https://github.com/Drix10)


๐ŸŒ Spectra.Codes


Why only generate Code? When you can generate the whole Repository!



Developer: Drix10
Website: Spectra.codes
Backed by: Google, Microsoft & Amazon for Startups
Finalist: Backdrop Build v4