Final
Final
BACHELOR OF TECHNOLOGY
IN
INFORMATION TECHNOLOGY
DEPARTMENT OF INFORMATION
TECHNOLOGY
(Autonomous)
Sarathy Nagar, Kundrathur, Chennai-600069
OCT / NOV – 2024
1
Vision of the Institute:
To be an eminent centre for Academia, Industry and Research by imparting knowledge, relevant prac
IM1: To creates next generation leaders by effective teaching learning methodologiesand instill scientifi
IM2: To transform lives through deployment of emerging technology, novelty and sustainability.
IM3: To inculcate human values and ethical principles to cater the societal needs.
IM4: To contributes towards the research ecosystem by providing a suitable, effective platform for inte
2
DEPARTMENT OF INFORMATION TECHNOLOGY
To Excel in the emerging areas of Information Technology by imparting knowledge, relevant practices an
DM1: To provide strong fundamentals and technical skills through effective teaching learning methodologies.
DM2: To transform lives of the students by nurturing ethical values, creativity and novelty to become Entrepreneu
DM3: To habituate the students to focus on sustainable solutions to improve the quality of life and the welfare of t
DM4: To enhance the fabric of research in computing through collaborative linkages with industry and academia.
DM5: To inculcate learning of the emerging technologies to pursue higher studies leading to lifelong learning.
3
CERTIFICATE
This is to certify that the “Core Course Project” Submitted by ANTON HARRISH
A (Reg no:23IT018) is a work done by him/her and submitted during 2024- 2025
academic year, in partial fulfilment of the requirements for the
award of the degree of BACHELOR OF TECHNOLOGY in
DEPARTMENT OF
INFORMATION TECHNOLOGY, at Chennai Institute of Technology.
External Examiner
Head of the Department
4
ACKNOWLEDGEMENT
We express our gratitude to our Chairman Shri.P.SRIRAM and all trust members of
Chennai institute of technology for providing the facility and opportunity to do this
project as a part of our undergraduate course.
We are grateful to our Principal Dr.A.RAMESH, M.E, Ph.D., for providing us the
facility and encouragement during the course of our work.
We would like to extend our thanks to our Project Co-ordinator of the Mr.
V.RAMACHANDRAN, M.Tech., Department of Information Technology for his
valuable suggestions throughout this project.
We wish to extend our sincere thanks to all Faculty members of the Department of
Information Technology for their valuable suggestions and their kind cooperation for the
successful completion of our project.
We wish to acknowledge the help received from the Lab Instructors of the Department
of Information Technology and others for providing valuable suggestions and for the
successful completion of the project.
5
PREFACE
6
ABSTRACT
The site boasts an intuitive layout that allows users to easily browse
product categories, compare items, and access detailed specifications.
Leveraging Next.js’s server-side rendering capabilities, our platform
ensures SEO-friendly content that boosts visibility and drives organic
traffic.
8
Experience the future of online shopping today, and discover how easy
it is to find and purchase the gadgets you love! With our commitment
to quality and user satisfaction, we aim to become your go-to
destination for all things electronics.
9
TABLE OF CONTENTS
1. INTRODUCTION:
1.1 Project Overview
1.2 Objectives
1.3 Scope
2. LITERATURE OVERVIEW:
2.1 Theoretical Foundations
2.2 Hypothesis and Research
3. METHODOLOGY:
3.1 Front-End Technologies
3.2 Back-End Technologies
3.3 Database Management
3.4 Coding
5. DISCUSSIONS:
5.1 Interpretation Findings
5.2 Limitations of Research
6. CONCLUSION:
6.1 Conclusion
6.2 Future Scope
6.3 Research Sources
10
CHAPTER: 1
INTRODUCTION
1.1 Project Overview:
The project appears to be a web application built using Next.js with React
as the primary library for UI development, and Tailwind CSS for styling.
The project setup involves TypeScript for type safety and code
maintainability.
Key components:
1. Next.js: Version 14.2.14, a React-based framework used for server-side
rendering, static site generation, and routing
2. React and React DOM: Version 18, used to build and manage the UI
1. Client-Side
The React-based UI uses a component-based approach for modularity, handling user
11
interactions and data updates. Next.js provides routing via the `pages/` directory, enabling
12
server-side rendering (SSR) or static site generation (SSG). Tailwind CSS enables
responsive design through utility-first styling, while TypeScript ensures type safety and
maintainability.
2. Server-Side
Next.js SSR improves SEO and load times. Custom APIs can be created using serverless
functions in the `api/` directory for tasks like authentication and data fetching.
3. Build System
The project uses PostCSS for processing CSS and the TypeScript compiler for type
checking. Next.js handles bundling and optimization for faster performance.
1.2 Objectives:
The objective of this project is to build a comprehensive resume
creation platform that focuses on user experience, customization,
accessibility, and professional output. Below is a detailed breakdown
of the key points:
1. User-Friendly Interface:
The platform will provide an intuitive interface where users can
easily build, edit, and manage resumes. This user-centric design
ensures that even users with minimal technical skills can navigate and
create
resumes seamlessly.
2. Customizable Resume Templates:
A range of pre-designed templates will be available, catering to
different industries, job roles, and professional levels. These
templates will allow users to select and personalize their resumes
based on their specific needs, making the platform adaptable for
various professions.
3. Real-Time Editing and Feedback:
The platform will offer real-time editing and instant preview
13
functionality, allowing users to see changes to their resumes as
they
14
make updates. This dynamic and interactive process ensures users
can fine-tune their resumes without switching between modes.
4. PDF Export Feature:
The system will implement a PDF export option using React HTML to
PDF, which ensures the final output is professional, clean, and
correctly formatted. This feature simplifies the conversion process for
users and guarantees that their resumes are ready for submission.
5. Dark Mode for Accessibility:
To enhance accessibility, the platform will include a dark mode
option. This feature improves the user experience, especially for
individuals working in low-light environments or those who prefer
less screen glare.
6. Profile Picture Upload:
Users will have the option to upload a profile picture, adding a
personal touch to their resumes and making them more visually
appealing.
These features combine to offer a complete, accessible, and
customizable resume-building experience.
15
1.3 Scope:
1. Project Overview
The project, named Anton CCP, is a web development project that
leverages modern frontend technologies such as Next.js (version
14.2.14) for server-side rendering and React.js components. It is
designed to build high-performance, responsive web applications by
combining the power of TypeScript, PostCSS, and TailwindCSS.
2. Technology Stack
3. Dependencies
The project is built using the following main dependencies, as
highlighted in the package-lock.json:
• Next.js: Handles routing, static site generation, and API endpoints.
• React & React-DOM: Essential for building user interfaces.
• TailwindCSS: To ensure consistent design and fast styling with
pre-defined utility classes.
• PostCSS: Facilitates CSS transformations and optimizations
through plugins.
16
4. Development Environment
5. File Configurations
18
• To create a fast, responsive, and accessible web application.
• To take advantage of server-side rendering and API routes for
performance and SEO benefits.
• To ensure a seamless development experience with
TypeScript and PostCSS.
9. Future Enhancements
Future enhancements could include integrating a CMS, improving
build performance with tree-shaking, or adding more sophisticated
PostCSS plugins to handle advanced CSS features like autoprefixing
or nesting.
19
CHAPTER: 2
LITERATURE OVERVIEW
2.1 Theoretical Foundations:
In addition to SSR, Next.js also supports Static Site Generation (SSG). This
approach pre-renders pages at build time, which can be particularly useful for
product pages that do not change frequently. By generating static HTML, the
application can serve pages more quickly, providing a seamless experience for
users. For a shopping webpage, SSG can be used for pages like promotional
banners or a blog section that highlights new products or offers.
20
4. API Routes
Next.js simplifies the development of back-end services through its API routes
feature. This allows developers to create API endpoints within the
same application, making it easier to handle server-side logic, such as
user authentication, cart management, and order processing. By
consolidating the front-end and back-end in a single codebase,
developers can streamline the development process and maintain a
cohesive architecture.
5. State Management
Managing the state is crucial in a shopping application, particularly for
features like shopping carts and user sessions. Libraries like Redux or
React Context API can be integrated into Next.js to manage application
state efficiently. This is important for maintaining a consistent user
experience, where the state (such as items in the cart) persists across
different components and pages.
21
7. Styling and Theming
Styling is a critical aspect of any web application, particularly for
ecommerce sites that rely on visual appeal. Next.js supports various
styling approaches, including CSS Modules, Styled Components, and
Tailwind CSS. Tailwind CSS, in particular, promotes a utility-first
approach, allowing developers to style components directly within the
markup. This can lead to faster development cycles and a more
responsive design, essential for accommodating users on various
devices.
23
2.2 Hypothesis and Research Framework:
1. Introduction
2. Hypothesis
3. Theoretical Framework
4. Research Design
6. Data Analysis
7. Implications
8. Conclusion
25
CHAPTER: 3
METHODOLOGY
3.1 Front-End Technologies:
React:
React is a JavaScript library that was developed by Facebook for building dynamic and
responsive user interfaces, particularly for single-page applications (SPAs). Its primary
strength lies in creating reusable UI components that simplify development and enhance
maintainability. React adopts a declarative programming paradigm, enabling developers
to define how the UI should appear at any given state, allowing React to efficiently
manage and update the rendering process.
React's component-based architecture allows for modular development, where individual
UI components can be designed and reused across the platform, making the codebase
more organized and scalable. It employs a virtual DOM, which optimizes UI updates by
first updating a virtual representation of the UI. This leads to faster and more efficient
rendering, as only the parts of the real DOM that need updating are modified.
In the development of the Resume Builder Website, React's ability to efficiently handle
state changes and interactions is crucial. With additional tools like React Router for
managing routes and navigation, the platform offers a seamless experience for users.
Overall, React's flexibility, performance optimization, and large community support make
it an ideal choice for building modern, dynamic web applications.
Bootstrap:
Bootstrap is a front-end framework that provides developers with pre-built CSS and
JavaScript components for designing responsive, mobile-first websites. It helps in creating
a uniform design across the Resume Builder Website, offering a range of customizable
templates for layout, typography, buttons, and forms. Bootstrap's grid system ensures the
website is fully responsive, adapting to different screen sizes and device types, enhancing
accessibility for users.
The use of Bootstrap streamlines the development process by offering components that
are easy to implement and customize, reducing the need to write extensive custom CSS
26
from
27
scratch. With Bootstrap, the Resume Builder features a professional, consistent look
across all devices, improving the user experience.
Chakra UI:
Chakra UI is a modern React-based component library designed for building accessible,
responsive websites. It provides customizable and pre-built components that follow best
practices for usability and accessibility. Chakra UI was integrated into the Resume
Builder project to enhance the user interface and ensure ease of customization for
different user preferences, such as dark mode.
The ability to toggle between light and dark modes is essential in improving the
accessibility of the Resume Builder platform, ensuring it can be comfortably used in
varying lighting conditions. Chakra UI's responsive design principles also ensure that the
Resume Builder remains visually appealing and easy to use across a wide range of
devices.
Node.js:
Node.js is an open-source, cross-platform JavaScript runtime that allows developers to run
JavaScript on the server side. It is built on Chrome’s V8 JavaScript engine and is
particularly suited for building scalable, real-time applications. The Resume Builder
Website leverages Node.js for handling server-side logic, enabling efficient data
management, user authentication, and communication between the front end and back end.
Node.js’ event-driven, non-blocking I/O model allows it to handle multiple user requests
simultaneously, making it highly efficient for real-time editing and interaction features,
28
such as previewing resumes as users make changes. Additionally, Node.js’s rich
ecosystem of libraries and modules, available through npm (Node Package Manager),
simplifies the process of adding advanced features to the application.
Express.js:
Express.js is a minimalist web application framework for Node.js, designed to streamline
the process of building web applications and APIs. The framework’s simplicity and
flexibility make it an ideal choice for building the backend of the Resume Builder
Website. Express.js facilitates routing, middleware support, and handling HTTP requests,
allowing for efficient communication between the frontend and backend. It supports a
wide range of middleware, enabling easy integration of features like user authentication,
form validation, and error handling. In the Resume Builder project, Express.js is used to
manage user data, process file uploads for profile pictures, and handle PDF export
requests.
MongoDB:
MongoDB is a NoSQL database known for its scalability, flexibility, and high
performance, making it an ideal choice for managing the Resume Builder Website’s user
data. MongoDB stores data in BSON (Binary JSON), which allows for flexible,
document-based storage, making it easier to handle various data structures such as user
profiles and resumes.
Key features of MongoDB in this project include:
1. Document-Oriented Structure: MongoDB’s schema-less design allows for
flexible data modeling, storing user data and resume templates in a structured yet
adaptable format. This flexibility is especially useful when dealing with diverse
data formats, such as text, images, and documents.
2. Scalability: The platform's ability to handle large volumes of data and traffic
29
through horizontal scaling makes it suitable for potential future expansions of the
Resume Builder. MongoDB’s sharding capabilities allow for distributing data
across
30
multiple servers, ensuring high availability and performance even as the user base
grows.
3. Real-Time Data Handling: MongoDB’s high performance is leveraged in real-
time resume creation and preview features, enabling users to see updates instantly
as they modify their resumes.
4. Robust Querying Capabilities: MongoDB offers a powerful query language that
supports filtering, sorting, and aggregating data. This is particularly beneficial
when implementing search functionalities, allowing users to efficiently retrieve
saved resumes or profile information.
By integrating MongoDB, the Resume Builder Website benefits from a database solution
that is highly flexible, scalable, and capable of supporting real-time interactions.
This methodology section provides a detailed overview of the front-end, back-end, and
database technologies used in the Resume Builder project, highlighting their roles and
advantages in building an efficient, user-friendly platform.
31
CHAPTER: 4
RESULTS AND FINDINGS
4.1 Results Overview:
The development of the Resume Builder Website adheres to several fundamental
principles to deliver a seamless, user-friendly, and professional experience. The following
key design principles were employed to ensure optimal usability, accessibility, and
performance:
1. User-Centric Design:
o Intuitive Navigation: The Resume Builder website ensures a simple and
efficient navigation experience by incorporating a clean layout with clear
menus and buttons. Users can easily locate functionalities such as editing,
uploading a profile picture, or exporting resumes in real-time.
o Accessibility: The platform has been designed with inclusivity in mind,
incorporating features like alt text for images, high contrast color schemes,
and keyboard navigation to cater to users with diverse needs, including those
with disabilities. The dark mode enhances accessibility in low-light
environments.
2. Responsive Design:
o Mobile Optimization: The website is fully responsive, ensuring an optimal
experience on various devices, including smartphones, tablets, and desktops.
Whether users are editing their resumes on the go or from a larger screen,
the interface adapts fluidly to different screen sizes, maintaining
functionality and aesthetic appeal.
3. Visual Hierarchy:
o Clear Call-to-Actions (CTAs): Buttons such as “Save,” “Download as
PDF,” and “Upload Image” are emphasized using a combination of size,
positioning, and contrasting colors, guiding users to take the necessary
actions easily.
o Information Prioritization: Key sections such as personal details, work
experience, and educational background are clearly distinguished through
effective use of headings, spacing, and typography, helping users organize
32
and edit their resumes efficiently.
4. Consistent Branding:
33
o Unified Aesthetics: The design of the website follows a cohesive branding
style, using consistent color schemes, fonts, and iconography throughout the
platform. This approach not only enhances the website's professionalism but
also instills trust and familiarity among users, reinforcing the brand identity
of the Resume Builder.
5. Speed and Performance:
o Fast Load Times: To ensure a smooth and efficient user experience, the
website is optimized for speed. The use of compressed images, minimized
CSS and JavaScript files, and efficient rendering of content ensures quick
loading times. This is critical in reducing bounce rates and keeping users
engaged throughout the resume creation process.
These principles have led to the creation of a highly functional, user-friendly platform that
meets the needs of a diverse range of users, enabling them to create professional resumes
quickly and efficiently while enjoying an intuitive, aesthetically pleasing interface.
34
35
CHAPTER: 5
DISCUSSIONS
5.1 Interpretation of Findings:
When analysing the results of the Resume Builder Website, we can focus on several key
aspects including functionality, performance, security, and user experience. The findings
are presented in a structured manner, highlighting areas of success and potential for
improvement:
1. Functionality:
o Basic Operations: The core functionalities of the Resume Builder website,
such as creating, editing, and exporting resumes, operate as expected. Users
can seamlessly upload profile pictures, customize resume templates, and
view real-time previews of their resumes.
o Error Handling: Appropriate error messages are generated when users fail
to complete required fields or upload an invalid file format for their profile
picture. This enhances user guidance and ensures smoother interactions.
o Data Validation: Input fields are validated to prevent errors during form
submission, ensuring that all necessary information such as name, email, and
work experience is provided correctly.
2. Performance:
o Response Times: The website responds quickly to user interactions, such as
real-time editing and PDF export, thanks to efficient rendering with React.
However, performance could be further optimized for users with slower
internet connections or older devices.
o Load Testing: The platform has demonstrated stability during user testing,
handling multiple users interacting simultaneously without significant lag or
crashes. However, further load testing in high-traffic scenarios could be
useful to ensure scalability. o Efficiency of Rendering: React’s virtual
DOM enhances the website's rendering performance, ensuring that only the
components that have changed are re-rendered, leading to faster updates and
smoother interactions.
3. Security:
36
o Authentication: Currently, user authentication is not implemented, but as
the project evolves, adding login features for personalized resume
management would enhance the security and privacy of user data.
o Data Protection: The website is designed to handle data locally within the
user's browser, but securing data transfers (especially for features like cloud
storage or account-based services) should be considered for future updates.
o Input Sanitization: Input fields are properly sanitized to prevent injection
attacks, ensuring the integrity of user data.
4. User Experience:
o User Interface (UI): The website offers an intuitive and visually appealing
user interface. The real-time preview feature is highly appreciated as it
allows users to see changes instantly, enhancing the overall user experience.
o Mobile Optimization: The platform performs well across various devices,
including smartphones, tablets, and desktops. The responsiveness of the
design ensures that users have a consistent and accessible experience on any
device.
o Export Functionality: The PDF export feature works effectively, allowing
users to download high-quality, well-formatted resumes. However, testing
for varied layouts and templates could be expanded to ensure consistency
across all designs.
5. Best Practices:
o Component-Based Architecture: The website adheres to React’s
component-based architecture, ensuring modularity, scalability, and
maintainability. This structure allows for easy updates and the addition of
new features in the future.
o Version Control: Though the website is in its initial phase, version control
through Git is implemented, allowing for smooth collaboration and tracking
of changes.
o Logging and Monitoring: While basic testing has been conducted, further
monitoring and logging mechanisms can be implemented to track user
behavior, identify potential issues, and optimize performance.
Recommendations:
37
• Implement user authentication for a more personalized experience and enhanced
security.
• Conduct additional load testing to ensure that the platform remains responsive
under high traffic.
• Continuously optimize the PDF export feature to support more diverse resume
templates.
• Add logging and monitoring to track performance and gather insights for further
improvements.
5.2 Limitations of Research:
1. Sample Size and Diversity:
o Limited User Testing: Initial testing was conducted on a small group of
users, which may not represent the full spectrum of potential users,
especially across different industries and regions.
o Geographic Constraints: Most testing occurred locally, limiting the
diversity of the user base. A more geographically varied group could provide
better insights into global usability.
2. Data Collection Methods:
o User Feedback: Feedback gathered was primarily through informal
interviews and user testing, which may not fully capture all potential
usability issues or edge cases.
o Reliance on Analytics: While basic analytics tools were used to track user
interactions, more detailed qualitative feedback could provide deeper
insights into the user experience.
3. Timeframe of Study:
o Short Testing Period: The testing period was relatively short, meaning
longer-term usability trends, such as how frequently users return to update
resumes, could not be fully assessed.
o Project Iterations: As the website is still in development, new features are
being added. Findings may evolve as the project is updated and more users
engage with it over time.
4. Technical Limitations:
38
o Initial Infrastructure: Some features, such as cloud-based storage for
resumes or user accounts, have not yet been integrated. This limits the
ability to fully test the platform's potential scalability and advanced user
management features.
o Third-Party Integrations: Certain third-party integrations, such as using
cloud services for saving resumes or integration with LinkedIn, are not yet
implemented, which may limit user satisfaction for professional use cases.
5. External Factors:
o Changing User Preferences: The job market is constantly evolving, and
user preferences for resume formats and designs may change over time,
impacting the relevance of current templates.
o Technological Advancements: As new web technologies are released, the
website may need to evolve to stay competitive and meet modern standards
for web applications.
By recognizing these limitations, the website can be improved over time to meet the needs
of a broader and more diverse user base. Regular updates, feedback collection, and
performance assessments will help the platform grow into a more robust and widely-used
tool for creating professional resumes.
39
CHAPTER: 6
CONCLUSION
6.1 Conclusion:
The Shoppy Website project has provided valuable insights into user preferences,
usability patterns, and areas for improvement. Through detailed analysis of functionality,
user experience, and market needs, we have identified strengths and challenges within the
platform.
Key Findings:
1. User Engagement: The website demonstrated high engagement, with users
appreciating the real-time preview and PDF export features, highlighting
opportunities for enhanced user retention strategies.
2. Popular Features: Certain functionalities, such as image uploads and resume
customization, emerged as popular among users, suggesting avenues for further
feature development and template expansion.
3. Usability Issues: While the user interface was generally easy to navigate, some
pain points were identified in terms of performance on slower networks and the
lack of user authentication features, indicating areas for enhancement.
4. User Feedback: Feedback revealed a generally positive user experience, with
some suggestions for improvements, particularly regarding the variety of resume
templates and mobile responsiveness.
40
3. Performance Improvements: Improving loading times and PDF export efficiency
will enhance the overall user experience, particularly for users on lower-end
devices or slower networks.
Recommendations:
• Implement A/B testing for new features such as resume templates and themes to
better understand user preferences.
• Focus on user authentication and security enhancements to increase data privacy
and allow for a more personalized experience.
• Explore internationalization options to support users from different linguistic
backgrounds.
Books:
1. "Learning React" by Alex Banks and Eve Porcello
2. "JavaScript: The Good Parts" by Douglas Crockford
3. "Fullstack React: The Complete Guide to ReactJS and Friends" by Accomazzo,
Murray, and Lerner
4. "CSS Secrets" by Lea Verou
5. "The Road to React" by Robin Wieruch
Websites:
1. GeeksforGeeks.com – For tutorials on React, JavaScript, and web development
fundamentals.
2. Javatpoint.com – For in-depth explanations of full-stack development concepts.
3. W3schools.com – For foundational guides on HTML, CSS, and JavaScript.
41