Tunisian Republic National Engineering Schoolof Gabes
Ministry of Higher Education Networks and Communication Engineering
and Scientific Research Engineering Department
University of Gabes Order number : ........
Web Development PROJECT REPORT
Presented to the
The National Engineering School of Gabes
by
Olfa Faidi
Platform For Jobs And Internships Searching
Mr AZAIEZ Ikbel Supervisor
Mr BenMahmoud Chaker jury member
Academic Year 2024/2025
PLAN
1 General Inroduction 1
2 Project Context 2
2.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.2 Challenges in Job Searching and Recruitment . . . . . . . . . . . . . . . . . . 2
2.3 Objectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
2.4 Description of Main Functionalities . . . . . . . . . . . . . . . . . . . . . . . 3
2.4.1 For All Users . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.4.2 For Recruiters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.4.3 For Job Seekers . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3
2.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4
3 Project Conception 5
3.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 Work environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2.1 React js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2.2 Node js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2.3 Node js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2.4 MongoDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.2.5 Postman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3 UML conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3.1 Use cases Diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.3.2 Description . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
3.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8
4 Project Realisation 10
4.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.2 Website Conception . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.2.1 Home Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
Page i
PLAN
4.2.2 Authentification : Registration . . . . . . . . . . . . . . . . . . . . . . 11
4.2.3 Authentification : Login . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.2.4 All jobs by Category . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.2.5 Recruiter dashboard : Job add page . . . . . . . . . . . . . . . . . . . 12
4.2.6 Analytics page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.2.7 Application page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
5 General Conclusion 14
Page ii
LIST OF FIGURES
3.1 React Js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
3.2 Node Js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.3 express Js . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.4 MongoDB . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
3.5 Postman . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3.6 Use Cases diagram . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
4.1 Home Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10
4.2 Registration Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.3 Login Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11
4.4 All jobs Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.5 Job Add Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12
4.6 Analytics Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
4.7 Application Page . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13
Page iii
GENERAL INRODUCTION
Chapter
1
General Inroduction
In the context of a web development project, I envisioned creating a dynamic platform for
job seekers and students searching for internships, part-time jobs, training opportunities, and
information about the latest job trends.
The idea was to develop a platform featuring job opportunities, forums, real-time chat
for information sharing, and a training space. However, due to time constraints, I focused
on completing the core functionalities of job postings and applications. I plan to expand the
platform with additional features for my personal development in the future.
For this project, I utilized MongoDB, [Link], and [Link].
Page 1
Chapter
2
Project Context
2.1 Introduction
The process of searching for jobs and internships can be overwhelming, especially for
students balancing studies and career aspirations. Existing platforms often fail to address specific
needs such as part-time roles or internships suited to students’ schedules. Recognizing this gap,
CHOUFLI-KHEDMA was conceived as a job portal tailored to these requirements.
2.2 Challenges in Job Searching and Recruitment
Job seekers often face :
• A lack of targeted job postings for students.
• Complexity of existing platform use
• Limited access to real-time updates on applications.
Recruiters, on the other hand, struggle with :
• A high volume of irrelevant applications.
• Inefficient tools for managing postings and candidates.
2.3 Objectives
The primary objective of CHOUFLI-KHEDMA is to bridge the gap between job seekers
and recruiters. Specific goals include :
— Providing a user-friendly platform to simplify job searches.
Page 2
PROJECT CONTEXT
— Providing a space in which you coud find ,jobs,internships and trainings
— Offering recruiters an intuitive interface to manage job postings and track applications.
2.4 Description of Main Functionalities
The CHOUFLI-KHEDMA platform provides a range of functionalities tailored to meet
the needs of both job seekers and recruiters. Below is a description of the core features :
2.4.1 For All Users
• Creating an Account : Users can register on the platform to create personalized accounts.
This step allows access to advanced features such as job posting, application tracking, and
customized job recommendations.
2.4.2 For Recruiters
• Adding a Job : Recruiters can post job openings by providing details such as job title,
description, location, and required skills.
• Deleting a Job : Recruiters have the ability to remove job postings once they are no
longer active or filled.
2.4.3 For Job Seekers
• Apply for a Job : Job seekers can submit applications directly through the platform,
attaching their resumes and other relevant details.
• Explore Opportunities : Users can browse job listings using various filters such as
location, type, and keywords to find positions that match their preferences.
Page 3
PROJECT CONTEXT
2.5 Conclusion
These functionalities aim to simplify the recruitment process for employers and enhance the
job search experience for candidates.
Page 4
Chapter
3
Project Conception
3.1 Introduction
In this chapter, we will delve deeper into the job-related functionalities,project conception
and explore the work environment, which is built using [Link], [Link], [Link], and MongoDB.
3.2 Work environment
3.2.1 React js
A JavaScript library for building dynamic, responsive, and user-friendly interfaces. It enables
developers to create reusable components and manage application state efficiently.
F IGURE 3.1 – React Js
3.2.2 Node js
A runtime environment that allows developers to run JavaScript on the server side. It is
known for its scalability and performance in handling asynchronous operations.
Page 5
PROJECT CONCEPTION
F IGURE 3.2 – Node Js
3.2.3 Node js
A lightweight and flexible web application framework for [Link]. It simplifies the creation
of APIs and backend services, enabling developers to handle requests and routes efficiently.
F IGURE 3.3 – express Js
3.2.4 MongoDB
A NoSQL database that stores data in a flexible, JSON-like format. It is ideal for applications
requiring scalability and real-time data access.
F IGURE 3.4 – MongoDB
Page 6
PROJECT CONCEPTION
3.2.5 Postman
Postman is a popular collaboration platform for API development and testing. It allows
developers to create, test, and document APIs through a user-friendly interface. With features
like request simulation, automated testing, and environment management, Postman simplifies
the process of ensuring APIs work efficiently and as intended.
F IGURE 3.5 – Postman
3.3 UML conception
3.3.1 Use cases Diagram
F IGURE 3.6 – Use Cases diagram
Page 7
PROJECT CONCEPTION
3.3.2 Description
Actors
— User : Can explore opportunities and recent job offers.
— Employee : Can create an account and apply for jobs.
— Recruiter : Can offer jobs and manage job postings.
Use Cases
— Explore Opportunities and Recent Job Offers (User)
— Create Account (Employee)
— Apply Job (Employee)
— Offer Job (Recruiter)
— Manage Jobs (Recruiter)
— Identification (Included in "Apply Job," "Offer Job," and "Manage Jobs")
Relationships
Include Relationship :
— "Apply Job" → "Identification"
— "Offer Job" → "Identification"
— "Manage Jobs" → "Identification"
3.4 Conclusion
In conclusion, the CHOUFLI-KHEDMA project successfully addresses the challenges faced
by job seekers and recruiters by providing an intuitive platform for job search and recruitment.
By integrating modern technologies such as [Link], [Link], [Link], and MongoDB, the
Page 8
PROJECT CONCEPTION
system offers efficient functionalities for both job seekers and recruiters, including account
creation, job application, and job posting management. The platform’s user-friendly interface,
real-time updates, and secure environment contribute to a seamless experience for all users. This
project not only enhances the recruitment process but also creates valuable opportunities for
students and professionals to explore and secure suitable job roles. Moving forward, additional
features like AI-driven recommendations and expanded job filtering options could further enhance
the platform’s capabilities.
Page 9
Chapter
4
Project Realisation
4.1 Introduction
In this chapter, we will explore the interfaces of our project and present the final demonstration.
4.2 Website Conception
4.2.1 Home Page
The home page displays all jobs organized by categories. When a category is clicked, it
shows all the jobs within that category.
F IGURE 4.1 – Home Page
Page 10
PROJECT REALISATION
4.2.2 Authentification : Registration
Users are required to create an account in order to either post jobs (for recruiters) or apply
for jobs (for job seekers).
F IGURE 4.2 – Registration Page
4.2.3 Authentification : Login
The system verifies the email credentials to ensure correct authentication for login.
F IGURE 4.3 – Login Page
4.2.4 All jobs by Category
In this page we find the list of added jobs by the recruiter.
Page 11
PROJECT REALISATION
F IGURE 4.4 – All jobs Page
4.2.5 Recruiter dashboard : Job add page
A recruiter who has created an account can access their dashboard and create a job offer.
F IGURE 4.5 – Job Add Page
4.2.6 Analytics page
The system verifies the guests who have viewed the offer and applied for it.
Page 12
PROJECT REALISATION
F IGURE 4.6 – Analytics Page
4.2.7 Application page
Users can apply for offers that match their skills, but they must have an account to submit
an application.
F IGURE 4.7 – Application Page
4.3 Conclusion
In conclusion, this chapter has provided a general description of our project and its interfaces.
Page 13
GENERAL CONCLUSION
Chapter
5
General Conclusion
By integrating modern technologies such as [Link], [Link], [Link], and MongoDB,
the system offers efficient functionalities for both job seekers and recruiters, including account
creation, job application, and job posting management. The platform’s user-friendly interface,
real-time updates, and secure environment contribute to a seamless experience for all users.
This project not only enhances the recruitment process and offer limited functionalities but also
will creates valuable opportunities for students and professionals to explore and secure suitable
job roles. Moving forward, additional features like AI-driven recommendations and expanded
job filtering options could further enhance the platform’s capabilities.
Page 14