InternAtlas is a web platform designed to streamline the internship search process for university students. It connects students with relevant internship opportunities, allows companies to manage their postings, and enables admins to maintain the platformβs integrity by overseeing activities and verifying organizations. Our goal is to make internships more accessible, organized, and student-friendly.
- Students can search and filter internships based on various criteria.
- Students can track the status of their internship applications.
- Companies can register, post internship opportunities, and manage applications.
- Admins can approve/reject company profiles, delete inappropriate content, and generate reports.
- Integration with external APIs (e.g., LinkedIn Jobs, Maps) for enhanced experience.
-
Clone the repository
git clone https://github.com/YourUsername/internatlas.git cd internatlas -
Install dependencies
npm install react-bootstrap npm install bootstrap npm install react-router-dom npm install react-icons npm install d3 npm install bootstrap-icons npm install bcrypt npm install multer
-
Start the development server
npm start
- Sign Up / Log In β Create an account or log in with your credentials.
- Browse Internships β Navigate to the homepage to explore available internship opportunities.
- Search & Filter β Use the search bar and filters (e.g., location, opportunity type, company) to find relevant internships.
- Apply β Click on a specific opportunity and hit βApplyβ to submit your application.
- Track Applications β Monitor the status of your submitted applications.
- Ratings & Reviews - Read feedback from fellow students about their internship experiences and contribute by writing your review to help others.
- Register Your Company β Sign up and fill out your company profile. Wait for admin approval.
- Post Opportunities β After approval, post new internships and manage listings.
- Review Applications β View student applications and contact candidates if needed.
- Update Existing Opportunity β Edit any posted internship by selecting it from the list, updating its details, and saving the changes.
- View & Respond to Reviews β Check student feedback on your internships and respond directly through your dashboard.
- Dashboard Access β Log in to view all admin functionalities.
- Approve/Reject Company Profiles β Review submitted company registrations for approval.
- Manage Content β Delete inappropriate company profiles, internship postings, ratings, or applications.
- Generate Reports β Access analytics and generate reports on platform activity.
-
Admin:
-
Username:
aisha -
Password:
aisha123 -
Username:
joud -
Password:
joud123
-
-
Company:
- Username:
Aramco - Password:
Aramco123
- Username:
-
Student:
-
Username:
NoufAlqahtani -
Password:
Nouf123 -
Username:
OmarAlharbi -
Password:
Omar123
-
{
"username": "string",
"password": "string"
}
- **200 OK: Successfully logged in.
- **400 Bad Request: Missing username or password.
- **401 Unauthorized: Invalid username or password.
{
"message": "Login successful",
"userType": "student",
"userId": "12345",
"username": "johndoe",
"fullName": "John Doe",
"email": "johndoe@example.com"
}
{
"userType": "student",
"fullName": "string",
"username": "string",
"email": "string",
"password": "string",
"confirmPassword": "string",
"university": "string",
"major": "string",
"location": "string"
}
{
"userType": "company",
"companyName": "string",
"companySector": "string",
"companyUsername": "string",
"companyEmail": "string",
"companyPassword": "string",
"companyConfirmPassword": "string",
"companyDescription": "string",
"verificationFile": "/uploads/path/of/the/file/",
"Logo": "/uploads/path/of/the/file/",
"registrationStatus": "pending"
}
- 200 OK: Registration successful.
- 400 Bad Request: Missing fields or invalid input.
Description: Submits an application for an internship. This endpoint handles both contact and general information.
{
"studentId": "string",
"internshipId": "string",
"contactInformation": {
"fullName": "string",
"email": "string",
"phone": "string",
"linkedin": "string",
"location": "string",
"gpa": "string",
"university": "string",
"major": "string",
"resume": "path/of/file"
},
"generalInformation": {
"availability": "Yes",
"fullTimeInterest": "Yes",
"relocation": "Yes",
"whyInterested": "string",
"skills": "string",
"careerGoals": "string"
}
}
- 201 Created: Application submitted successfully.
- 400 Bad Request: Missing required fields or invalid data.
{
"message": "Application submitted successfully!",
"applicationId": "abc123"
}
- 200 OK: Internship details.
{
"title": "Software Engineering Internship",
"company": "TechCorp",
"location": "Remote",
"qualifications": "Bachelor's in Computer Science",
"responsibilities": "Develop software solutions"
}
{
"title": "Updated Internship Title",
"description": "Updated Description",
"location": "Updated Location",
"qualifications": "Updated Qualifications",
"responsibilities": "Updated Responsibilities"
}
- 200 OK: Internship updated successfully.
- 400 Bad Request: Invalid data or missing required fields.
| Name | Role |
|---|---|
| Joud Alsayid | Team Member |
| Rawan Asiri | Team Member |
| Aryam Alshehri | Team Member |
| Danah Alotaibi | Team Member |
| Aishah Algharib | Team Member |