A comprehensive workout tracking application built with Next.js and Nest.js, designed to help you monitor your fitness journey with detailed analytics and progress tracking. Nest.Js Repo: https://github.com/pqxzzz/tracking-my-workout-nest
- Secure Login/Register: Complete authentication flow with form validation
- User Management: Profile creation and management
- Protected Routes: Secure access to workout data
- Session Management: Persistent login with token-based authentication
- Create Workout Sets: Design custom workout routines with multiple exercises
- Exercise Management: Add, edit, and delete exercises with detailed specifications
- Workout Logging: Track your daily workout sessions
- Progress Tracking: Monitor your workout history and performance
- Weight Logging: Record your weight measurements over time
- Progress Charts: Visual weight progression with interactive charts
- Analytics Dashboard: Comprehensive view of your fitness metrics
- Trend Analysis: Track weight changes and patterns
- Workout Streaks: Track consecutive workout days
- Achievement System: Celebrate your fitness milestones
- Progress Visualization: Beautiful charts and graphs for data analysis
- Goal Setting: Set and track your fitness objectives
- Workout Customization: Create and modify your workout routines
- Exercise Library: Manage your personal exercise database
- Settings: Customize your fitness tracking experience
- Data Export: Access your workout and weight data
- Framework: Next.js 15.3.5 with App Router
- Language: TypeScript
- Styling: Tailwind CSS with custom components
- UI Components: Radix UI primitives
- State Management: React Context + TanStack Query
- Forms: React Hook Form with Zod validation
- Charts: Recharts for data visualization
- Icons: Lucide React
- HTTP Client: Axios
-
Clone the repository
git clone <repository-url> cd tracking-my-workout-front
-
Install dependencies
npm install # or yarn install # or pnpm install
-
Set up environment variables
cp .env.example .env.local # Configure your environment variables -
Run the development server
npm run dev # or yarn dev # or pnpm dev
-
Open your browser Navigate to http://localhost:3000
src/
βββ app/ # Next.js App Router
β βββ (auth)/ # Authentication routes
β βββ profile/ # User profile pages
β βββ workout/ # Workout tracking pages
β βββ layout.tsx # Root layout
βββ components/ # Reusable UI components
β βββ auth/ # Authentication components
β βββ Weight/ # Weight tracking components
β βββ Workout/ # Workout management components
β βββ Profile/ # Profile management components
β βββ ui/ # Base UI components
βββ context/ # React Context providers
βββ hooks/ # Custom React hooks
βββ services/ # API service layer
βββ lib/ # Utility functions
- Login/Register Forms: Secure user authentication
- Auth Context: Global authentication state management
- Protected Routes: Route protection with authentication gates
- TodayWorkoutInfo: Current workout session information
- NewDay: Start new workout sessions
- MostRecentWorkoutDay: View recent workout history
- StreakDays: Track workout consistency
- WeightInfo: Weight tracking dashboard
- WeightProgressChart: Interactive weight progression charts
- Weight Analytics: Comprehensive weight data analysis
- WorkoutTable: Manage workout routines
- ChangeWorkoutForm: Create and edit workout sets
- Exercise Management: Add, edit, and delete exercises
- Register an account or login to access the application
- Complete your profile setup in the onboarding process
- Create your first workout set with custom exercises
- Start logging workouts and track your progress
- Monitor your weight and view analytics
- Maintain your streak and achieve your fitness goals
npm run dev- Start development servernpm run build- Build for productionnpm run start- Start production servernpm run lint- Run ESLint
- TypeScript: Full type safety
- ESLint: Code linting and formatting
- Prettier: Code formatting (if configured)
- Husky: Git hooks for code quality
- Create custom workout routines with multiple exercises
- Set series, repetitions, and weight for each exercise
- Organize exercises by muscle groups
- Track workout history and progress
- Log weight measurements with timestamps
- Visual progress charts with trend analysis
- Weight goal setting and tracking
- Historical data analysis
- Track consecutive workout days
- Visual streak indicators
- Achievement celebrations
- Progress motivation
- Interactive charts for weight progression
- Workout frequency analytics
- Performance trend analysis
- Goal achievement tracking
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes (
git commit -m 'Add amazing feature') - Push to the branch (
git push origin feature/amazing-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
Start your fitness journey today! πͺ