Skip to content

Set fitness goals, track progress, and share with friends... Created at https://coslynx.com

Notifications You must be signed in to change notification settings

coslynx/Fitness-Tracker-Platform-MVP

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

54 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Fitness-Tracker-Platform-MVP

A web application to track your fitness goals and share progress with friends.

Developed with the software and tools below.

Framework: Next.js Frontend: TypeScript, React, HTML, CSS Backend: Node.js Database: PostgreSQL
git-last-commit GitHub commit activity GitHub top language

πŸ“‘ Table of Contents

  • πŸ“ Overview
  • πŸ“¦ Features
  • πŸ“‚ Structure
  • πŸ’» Installation
  • πŸ—οΈ Usage
  • 🌐 Hosting
  • πŸ“„ License
  • πŸ‘ Authors

πŸ“ Overview

This repository contains the Fitness-Tracker-Platform-MVP, a web application built with Next.js, TypeScript, React, HTML, CSS, Node.js, and PostgreSQL. It allows users to set and track fitness goals, monitor progress, and share achievements with friends.

πŸ“¦ Features

Feature Description
πŸ” User Authentication Users can securely log in and register using Google Sign-In.
🎯 Goal Setting Users can create customized fitness goals with specific targets and timelines.
πŸ“Š Progress Tracking Users can log their daily activities and track their progress against their goals.
πŸ“ˆ Data Visualization Interactive charts and graphs provide visual representations of progress.
πŸ’¬ Social Sharing Users can share their achievements and progress updates with friends within the app.
πŸ”’ Data Privacy The app prioritizes user data security and complies with relevant data privacy regulations.

πŸ“‚ Structure

Fitness-Tracker-Platform-MVP
β”œβ”€β”€ public
β”‚   β”œβ”€β”€ assets
β”‚   β”‚   β”œβ”€β”€ fonts
β”‚   β”‚   β”‚   └── ...
β”‚   β”‚   └── images
β”‚   β”‚       └── ...
β”‚   β”œβ”€β”€ favicon.ico
β”‚   └── index.html
β”œβ”€β”€ pages
β”‚   β”œβ”€β”€ api
β”‚   β”‚   β”œβ”€β”€ auth
β”‚   β”‚   β”‚   └── [...nextauth].ts
β”‚   β”‚   β”œβ”€β”€ goals
β”‚   β”‚   β”‚   β”œβ”€β”€ [id].ts
β”‚   β”‚   β”‚   └── index.ts
β”‚   β”‚   β”œβ”€β”€ users
β”‚   β”‚   β”‚   β”œβ”€β”€ [id].ts
β”‚   β”‚   β”‚   └── index.ts
β”‚   β”‚   └── activityLogs
β”‚   β”‚       └── [id].ts
β”‚   β”œβ”€β”€ _app.tsx
β”‚   β”œβ”€β”€ _document.tsx
β”‚   β”œβ”€β”€ index.tsx
β”‚   β”œβ”€β”€ login.tsx
β”‚   β”œβ”€β”€ signup.tsx
β”‚   β”œβ”€β”€ dashboard.tsx
β”‚   └── goal.tsx
β”œβ”€β”€ components
β”‚   β”œβ”€β”€ layout
β”‚   β”‚   β”œβ”€β”€ Header.tsx
β”‚   β”‚   β”œβ”€β”€ Footer.tsx
β”‚   β”‚   └── Sidebar.tsx
β”‚   β”œβ”€β”€ ui
β”‚   β”‚   β”œβ”€β”€ Button.tsx
β”‚   β”‚   β”œβ”€β”€ Card.tsx
β”‚   β”‚   β”œβ”€β”€ Input.tsx
β”‚   β”‚   β”œβ”€β”€ Modal.tsx
β”‚   β”‚   └── Loader.tsx
β”‚   β”œβ”€β”€ features
β”‚   β”‚   β”œβ”€β”€ auth
β”‚   β”‚   β”‚   β”œβ”€β”€ LoginForm.tsx
β”‚   β”‚   β”‚   └── SignupForm.tsx
β”‚   β”‚   β”œβ”€β”€ dashboard
β”‚   β”‚   β”‚   β”œβ”€β”€ GoalsList.tsx
β”‚   β”‚   β”‚   β”œβ”€β”€ RecentActivity.tsx
β”‚   β”‚   β”‚   └── AnalyticsChart.tsx
β”‚   β”‚   β”œβ”€β”€ goal
β”‚   β”‚   β”‚   β”œβ”€β”€ GoalForm.tsx
β”‚   β”‚   β”‚   β”œβ”€β”€ ActivityLogForm.tsx
β”‚   β”‚   β”‚   └── ProgressChart.tsx
β”‚   β”‚   └── social
β”‚   β”‚       └── SocialFeed.tsx
β”‚   └── common
β”‚       β”œβ”€β”€ Error.tsx
β”‚       └── Success.tsx
β”œβ”€β”€ lib
β”‚   β”œβ”€β”€ api
β”‚   β”‚   └── client.ts
β”‚   β”œβ”€β”€ hooks
β”‚   β”‚   β”œβ”€β”€ useUser.ts
β”‚   β”‚   β”œβ”€β”€ useGoal.ts
β”‚   β”‚   β”œβ”€β”€ useActivityLog.ts
β”‚   β”‚   └── useSocialFeed.ts
β”‚   β”œβ”€β”€ auth
β”‚   β”‚   └── auth.ts
β”‚   └── utils
β”‚       β”œβ”€β”€ formatters.ts
β”‚       β”œβ”€β”€ validators.ts
β”‚       β”œβ”€β”€ constants.ts
β”‚       └── helpers.ts
β”œβ”€β”€ styles
β”‚   β”œβ”€β”€ globals.css
β”‚   └── theme.ts
β”œβ”€β”€ prisma
β”‚   └── schema.prisma
β”œβ”€β”€ .env
β”œβ”€β”€ .eslintrc.js
β”œβ”€β”€ next.config.js
β”œβ”€β”€ package.json
└── README.md

πŸ’» Installation

πŸ”§ Prerequisites

  • Node.js
  • npm
  • Docker

πŸš€ Setup Instructions

  1. Clone the repository:
    • git clone https://github.com/coslynx/Fitness-Tracker-Platform-MVP.git
  2. Navigate to the project directory:
    • cd Fitness-Tracker-Platform-MVP
  3. Install dependencies:
    • npm install

πŸ—οΈ Usage

πŸƒβ€β™‚οΈ Running the MVP

  1. Start the development server:
    • npm run dev
  2. Open your browser and navigate to http://localhost:3000.

βš™οΈ Configuration

Adjust configuration settings in .env.

πŸ“š Examples

  • πŸ“ Example 1: Create an account using Google Sign-In and set your first fitness goal.
  • πŸ“ Example 2: Track a workout session and see your progress towards your goal.
  • πŸ“ Example 3: Share your latest achievement with friends on the social feed.

🌐 Hosting

πŸš€ Deployment Instructions

  1. Build the application:
    • npm run build
  2. Deploy to Vercel:

πŸ”‘ Environment Variables

  • DATABASE_URL: Your PostgreSQL database URL.
  • GOOGLE_CLIENT_ID: Your Google Sign-In Client ID.
  • GOOGLE_CLIENT_SECRET: Your Google Sign-In Client Secret.

πŸ“œ License & Attribution

πŸ“„ License

This MVP is licensed under the GNU AGPLv3 license.

πŸ€– AI-Generated MVP

This MVP was entirely generated using artificial intelligence through CosLynx.com.

No human was directly involved in the coding process of the repository: Fitness-Tracker-Platform-MVP

πŸ“ž Contact

For any questions or concerns regarding this AI-generated MVP, please contact CosLynx at:

🌐 CosLynx.com

Create Your Custom MVP in Minutes With CosLynxAI!