ConnectIn is a LinkedIn-style professional networking application that allows users to create profiles, manage connections, and interact with other professionals. The application features user role management, job listings, private messaging, and collaborative filtering for personalized content recommendations.
-
User Roles:
- π Admin: Manages users, views their profiles, and exports data (JSON, XML).
- π€ Regular User: Can register, create profiles, add work experience, education, connect with others, post articles, and apply for jobs.
-
Key Pages:
- π Home: Users can publish posts and view a timeline based on an algorithm that recommends content using Matrix Factorization Collaborative Filtering.
- π Network: Users manage connections and search for others.
- πΌ Jobs: Job recommendations based on user skills and history. Users can create or apply for job posts.
- π¬ Chats: Private messaging between connected users.
- π Notifications: View connection requests and reactions to user posts.
- π Profile: Manage personal details, professional experience, and skills.
- βοΈ Settings: Change email or password.
-
Admin Features:
- View all registered users and export their data in JSON or XML formats.
-
π§ Algorithmic Recommendations:
- Posts: Personalized content recommendations based on user reactions, connections, and post views.
- Jobs: Levenshtein Distance algorithm compares user skills with job titles for recommendations.
- Navigate to
/backend
and install dependencies:mvn clean install
- Start the backend server:
mvn spring-boot:run
- The backend runs on port
8443
. Set up the database credentials inapplication.yml
.
- The backend runs on port
- Navigate to
/frontend
and install dependencies:npm install
- Start the frontend server:
npm start
- The frontend runs on port
3000
.
- The frontend runs on port
Because of the self-signed certificate, the browser will throw warnings, to disable insecure localhost warnings in Chrome by navigating to:
chrome://flags/#allow-insecure-localhost
The application is accessible at:
https://localhost:3000
ConnectIn was developed as a secure, scalable application designed to simulate a professional networking environment. π‘