Welcome to the P18 Fitness Web App! This application is a comprehensive fitness platform designed to provide users with a range of workout programs, personalized training, and progress tracking. Whether you're a beginner or an experienced fitness enthusiast, P18 Fitness is here to help you stay on top of your fitness journey.
- Sign Up / Login: Users can create an account or log in using their credentials.
- Profile Management: Users can personalize their profile by adding their name, profile picture, and fitness goals.
- YouTube Integration: Access a range of YouTube workout videos directly in the app.
- Custom Video List: Sorted by days (e.g., Day 1, Day 2, etc.), users can watch and complete videos in sequence.
- Progress Tracking: Watch videos and track progress using a visual progress bar. Videos are marked as completed after watching.
- Weekly Programs: Users can follow daily workout plans categorized by week (e.g., Week 1, Week 2, etc.), including different types of workouts such as upper body, lower body, HIIT, and more.
- Completion & Feedback: Once users complete a workout, they can mark it as "completed" and submit feedback.
- Progress Points: Users earn points for completing each workout and achieving milestones.
- Leaderboards: View rankings based on points earned from completed workouts.
- Users can leave feedback on each video via a comment box, which is sent to an email for tracking.
- The app is designed to be fully responsive, ensuring a smooth user experience on desktop, tablet, and mobile devices.
- For added security, users can enable 2FA for their account to protect sensitive data.
- Admins can manage videos, monitor user progress, and send email notifications about new content or updates.
Before starting, ensure you have the following installed on your system:
- Node.js
- Laravel 11 (For backend setup)
- Composer
- Clone the repository
git clone https://github.com/yourusername/p18-fitness.git cd p18-fitness Install dependencies For backend:
bash Copy code composer install For frontend:
bash Copy code npm install Set up environment variables Copy .env.example to .env and set the necessary environment variables:
bash Copy code cp .env.example .env php artisan key:generate Set up the database
Configure your database in the .env file (e.g., MySQL, SQLite). Run migrations: bash Copy code php artisan migrate Run the development server For Laravel backend:
bash Copy code php artisan serve For frontend (with Laravel Mix):
bash Copy code npm run dev Access the application Open your browser and navigate to:
arduino Copy code http://localhost:8000 Technology Stack Frontend:
HTML, CSS, JavaScript Vue.js (for dynamic components) Tailwind CSS (for styling) Alpine.js (for interactive elements) Backend:
Laravel 11 MySQL (Database) Laravel Passport (Authentication) Mailgun (Email Notifications) Contribution Guidelines We welcome contributions! If you'd like to help make P18 Fitness even better, please follow these guidelines:
Fork the repository. Create a new branch for each significant change. Make your changes and commit them. Write tests for new features or bug fixes. Submit a pull request with a clear description of your changes. License This project is licensed under the MIT License - see the LICENSE.md file for details.