This repository contains three distinct projects: a backend monolithic application, a frontend application, and a backend microservices architecture. Below are the detailed descriptions, setup instructions, and usage guidelines for each project.
PUs is a Java Spring Boot application designed to create a community platform for students. It includes features like the main features of a social media platform and more.
- Social Media Features: Everything you expect from a social media platform: follows, posts, interactions, stories, real time messaging and notifications, and more.
- Community Interaction: Connect with students from the same university through posts and stories.
- Major and Section Communities: Group chats based on majors and sections.
- Backend Monolithic Application
- Frontend Application
- Backend Microservices Architecture
- Contributing
- License
- Contact
- Java
- Maven
- SQL
- Clone the repository:
git clone https://github.com/pus-platform/pus
- Navigate to the project directory:
cd pus/backend
- Install dependencies:
mvn install
- Start the server:
mvn spring-boot:run
- Import the database setup:
- Import the
pus.sql
file into your SQL database.
- Import the
The frontend application is designed using react providing enhanced user experience.
- Node.js
- npm
- Navigate to the project directory:
cd pus/frontend
- Install NPM packages:
npm install
- Start the development server:
npm run dev
- React
- React Query
- Tailwind CSS
- Vite
- Flowbite React
- Lucide Icons
This project demonstrates a microservices architecture using Spring Boot, including components such as an API Gateway, Configuration Server, Discovery Server, and multiple microservices.
- API Gateway: Entry point for client requests.
- Config Server: Centralized configuration management.
- Discovery Server: Service discovery and communication management.
- User Service: Manages user information and authentication.
- Post Service: Handles posts.
- Story Service: Manages stories.
- Upload Service: File upload and storage.
- Java
- Maven
- SQL
- Docker and Docker Compose
- Build & Run each service, make sure to run discovery service first, then config service, then the others:
cd service-directory ./mvnw clean install spring-boot:run
Each service is accessed through the API Gateway on default ports:
- API Gateway:
http://localhost:8080
- Other services are configured and accessed via the API Gateway.
navigate to the root directory of the project
run docker compose up
Distributed under the MIT License. See LICENSE
for more information.
- Hasan Zawahra or via Linkedin
- Ehab Maali or via Linkedin
- Nadine AbuOdeh or via Linkedin