The project was designed to create a social media platform tailored to fitness lovers. The platform allows users to share their fitness journeys, and workouts through a Java-based Spring Boot REST API and a React-based client web application. The application highlights React-based user-friendliness and simplicity, catering to individuals with varying levels of technical expertise.
- Media Sharing: Users can upload photos showcasing their fitness activities.
- Workout Status Updates: Users can share updates on their current workout status with predefined templates.
- Workout Plan Sharing: Users can share and customise their workout plans.
- Interaction: Users can like and comment on posts.
- Profiles: Users can view and follow other profiles, displaying all fitness-related posts and activities.
- Backend: Spring Boot, Spring Security, OAuth 2.0
- Frontend: React
- Database: MongoDB
- Version Control: Git, GitHub
- Java Development Kit (JDK) 11 or later
- Node.js and npm
- MySQL or other relational database
-
Clone the repository:
git clone https://github.com/Yeshmantha/Fitness-Social-Media-Platform.git
-
Navigate to the backend directory:
cd Fitness-Social-Media-Platform/paf-backend
-
Update the
application.properties
file with your database credentials.spring.data.mongodb.uri=your_mongodb_uri spring.data.mongodb.database=your_database_name
-
Build and run the Spring Boot application:
./mvnw spring-boot:run
- Navigate to the frontend directory:
cd Fitness-Social-Media-Platform/paf-frontend
- Install the dependencies:
npm install
- Start the React application:
npm start
To run tests for the application:
- Navigate to the backend directory:
cd Fitness-Social-Media-Platform/paf-backend
- Run the tests:
./mvnw test
- Navigate to the frontend directory:
cd Fitness-Social-Media-Platform/paf-frontend
- Run the tests:
npm test
- Fork the repository.
- Create your feature branch:
git checkout -b feature/YourFeature
- Commit your changes:
git commit -m 'Add some feature'
- Push to the branch:
git push origin feature/YourFeature
- Open a pull request.