Table of Contents
Level Up allows users to generate and customize workouts, track personal bests and calculate performance metrics. Users can save workouts and interact with their fitness community.
- Mobile-First Design: Optimized interface for seamless use on mobile devices.
- User Authentication: Secure login and registration using JWT.
- CRUD Operations: Create, read, update, and delete functionalities and delete functionalities for managing user data.
- RESTful API: Built with Node.js and Express for efficient data handling.
- File Upload: Upload and store files using AWS S3 and Multer.
- Search Functionality: Users can search through the database with specific filters.
- View and Manage Workouts: Browse detailed workout results, edit, or delete personal entries.
- Engage with Posts: Like, comment, and share workout results in the feed.
- Discover Workouts: Generate random workouts for variety.
- Filter by Type: Find specific workouts using filter options.
- Track your Progress: Review personal workout history at any time.
For more examples, please go to the Use Cases
- Backend: Deployed on Render for efficient server-side handling and scalability.
- Frontend: Deployed on Netlify for fast and reliable static site hosting.
- Database: Managed with MongoDB Atlas for a scalable and secure database solution.
npm install npm@latest -g
Make sure you have the following prerequisites before proceeding with the installation:
- Node.js (version 14 or above)
- MongoDB
-
Clone the repository: Clone the repository to your local machine using the following command:
git clone https://github.com/yourusername/your-repository.git
-
Install NPM packages: First, navigate to both the app and API directories and install the required dependencies.
cd app npm install
cd api npm install
-
Configure the .env file: Create a .env file in both the api and app directories and configure it with the necessary API keys, database URLs, etc.
api/.env PORT = 8080 JWT_SECRET = XXX MONGODB_URL= mongodb://localhost:XXXX/levelup app/.env VITE_API_URL=8080
-
Run the App (Frontend):
npm run dev
-
Run the API (Backend)
npm start
- Edit user profile
- Add photo/avatar
- Implement analytics to calculate weights and repetitions based on personal bests
- Allow users to customize workouts
- Add single movement tracking to achievements
- Display progress graphs
- Calculate and display personal records (PR)
See the open issues for a full list of proposed features and known issues.
- Debora Garcia: Debi312