MergeResult 2024 08 02 09 30 26
MergeResult 2024 08 02 09 30 26
on
FULL STACK WEB DEVELOPMENT INTERNSHIP
A report submitted in partial fulfillment of the requirements for the Award of Degree of
BACHELOR OF TECHNOLOGY
In
By
KAKARLA CHAITANYA
ANANTAPURAMU-515002
2024-2025
I
CERTIFICATE
This is to certify that the internship entitled “FULL STACK WEB DEVELOPMENT
INTERNSHIP” is bonafide work of KAKARLA CHAITANYA, bearing admission number
21001A0551, submitted to the faculty of Computer Science and Engineering in partial
fulfillment of requirements for the award of the degree of BACHELOR OF TECHNOLOGY
in COMPUTER SCIENCE AND ENGINEERING, JNTUA College of Engineering,
Ananthapuramu, at Slash Mark IT startup.
Dr. P Chenna Reddy M.S, M.Tech, Ph.D Dr. K. F. Bharati M.Tech., Ph.D
Dept. of Computer Science & Engg. Dept. of Computer Science & Engg.
Anantapuramu-515002 Anantapuramu-515002
II
DECLARATION
KAKARLA CHAITANYA
Reg. No. 21001A0551
Place: Ananthapuramu
Date:
III
INTERNSHIP CERTIFICATE
IV
ACKNOWLEDGEMENT
I would like to thank our guide Dr. P Chenna Reddy M.S, M.Tech, Ph.D for guiding me
throughout the preparation of this Internship and for correcting me wherever required.
I’m greatly indebted to Dr. K.F. Bharati M.Tech Ph.D, Head of the Computer Science and
Engineering Department. Her advice, assistance and patience are greatly appreciated for
providing outstanding facilities for completion of project.
With gratitude,
KAKARLA CHAITANYA
Reg. No. 21001A0551
V
ABSTRACT
Throughout the internship, I was involved in all stages of the software development
lifecycle. On the front-end, I designed and implemented responsive user interfaces using
HTML, CSS, and JavaScript. The back-end development involved using PHP to handle
server side logic, manage database interactions, and ensure smooth communication between
the client and server. MySQL was employed for efficient data storage, retrieval, and
management.
The Food Delivery Web Application was equipped with essential features such as user
registration and authentication, allowing for secure login and food ordering.
VI
TABLE OF CONTENTS
1 Introduction 1-3
2 Background 4-6
4 Results 15-19
5.1 Conclusion 20
6 References 22
VII
Chapter-1
Introduction
A summer internship in full-stack web development offers a comprehensive learning
experience for individuals looking to enhance their skills in both front-end and back-end
development. This type of internship is ideal for those who aspire to become proficient in
creating complete web applications, from designing user interfaces to managing server-side
logic.
Interns will learn to use HTML, CSS, and JavaScript to create visually appealing and
user-friendly interfaces. They will also get hands-on experience with modern front-end
frameworks and libraries like React. Interns will learn to manage databases, handle server
logic, and ensure seamless communication between the client and server. They will gain
experience working with databases like MySQL. They will learn to design database schemas,
write queries, and manage data efficiently. Understanding version control systems like Git is
crucial. Interns will learn how to collaborate on code using platforms like GitHub or GitLab.
A full-stack web development internship enhances technical skills by gaining
proficiency in a wide range of technologies used in web development. Interns build a
portfolio of projects that demonstrate their ability to create functional web applications. They
also connect with professionals in the field, which can lead to job opportunities and career
growth, increasing employability by gaining practical experience and demonstrating
commitment to learning and growth.
My internship took place at Slash Mark IT startup, IT services and IT consulting
company based in Delhi, India. The company was founded in 2023 and has since growing
large day to day competing with other startup industries in India.
1.2 Scope:
1
Full stack development is an expansive field within software development that
encompasses the creation and maintenance of both the front-end and back-end components of
web applications. As technology evolves, the scope of full stack development continues to
grow, providing numerous opportunities and applications across various industries.
- Work on different parts of the development process, including front-end design, back-
end programming, and database integration.
- Switch between tasks as needed, providing valuable support across different phases of
the project lifecycle.
Wide Range of Technologies:
- Developing and maintaining online stores, shopping carts, payment gateways, and
inventory management systems.
- Creating secure banking applications, trading platforms, and financial analytics tools.
- Developing supply chain management systems, tracking tools, and warehouse
management software.
- Creating streaming services, gaming platforms, and social media applications.
Career Opportunities:
2
- To enhance proficiency in both front-end and back-end technologies.
- To gain a comprehensive understanding of the end-to-end process of web application
development.
- To apply theoretical knowledge in a real-world setting through hands-on projects.
- To develop skills in HTML, CSS, JavaScript and handling Databases
- To develop strong problem-solving and debugging skills.
- To learn and adhere to industry best practices in full stack development.
- To gain experience and understanding the requirements of a project.
- To prepare for a career in full stack development by gaining relevant experience and
skills.
My internship at Slash Mark IT startup spanned two months, from May 13 to July
06, 2024. The program was structured around a major project in the Full Stack Development
domain. As a full stack development intern, my roles and responsibilities included both front-
end and back-end development tasks. On the front-end, I designed and implemented user
interfaces using HTML, CSS, and JavaScript, ensuring responsive and user-friendly designs.
On the back-end, I developed server-side logic using PHP and managed databases with
MySQL. I created and integrated APIs to connect the front-end with the backend services.
Chapter-2
3
Background
The Food Delivery Web Application project aimed to address the limitations of
traditional online booking methods by providing a secure and efficient electronic platform.
The initial phase of the project involved understanding the requirements and challenges
associated with online booking, including security, scalability, and user experience. Key
activities included are:
Requirement Analysis:
Gathering and analysing requirements from stakeholders, including the need for
secure authentication, user-friendly interfaces, real-time vote counting, and robust data
storage.
Functional Requirements:
Functional requirement of the system describes what the system does like Browser
compatibility, Responsive to all devices and Viewing all the necessity information.
User Registration: Customers should be able to create accounts using email or social
media credentials.
Login and Authentication: Users must securely log in using their credentials, with
options for password resets.
Menu Browsing: Customers can browse restaurant menus, filter items by cuisine, and
search for specific dishes.
Ordering: Users can add items to their cart, customize orders (e.g., add notes), and
proceed to checkout.
Payment Processing: The system supports various payment methods (e.g., credit
cards, PayPal) and ensures secure transactions.
Order Tracking: Real-time order tracking for customers and delivery personnel,
including estimated delivery times.
4
Delivery Management: Delivery person receive orders, use navigation tools, and
efficiently reach customers.
Non-Functional Requirements
A non-functional requirement describes how the system performs a certain function.
Non-functional requirements generally specify the system’s quality attributes or
characteristics. Books follows properties such as reliability, usability, storage
occupancy, performance, and response time.
Performance: The system is responsive and scalable, with fast loading times and the
ability to handle peak traffic.
Security: Data is encrypted during transmission, and user privacy is protected,
complying with data privacy laws (e.g., GDPR).
Reliability: Minimal downtime and graceful error handling to ensure a smooth user
experience.
Usability: The user interface is intuitive, user friendly, and accessible to different
abilities.
Mobile Responsiveness: The platform is designed to perform well and be accessible
on various devices, including smartphones and tablets.
Availability: The system is available 24/7, with accessible customer support for issue
resolution and inquiries.
Load Balancing: Load balancing mechanisms distribute user requests evenly to
prevent server overload.
System Requirement Specification:
- Scripting Languages: HTML, JavaScript.
- Styling Language: CSS.
- Server side Language: PHP
- IDE: Visual studio code, XAMPP
- Hardware Requirements specification:
Processor: i3 or i5 or i7
Hard Disk: Greater than 250GB
Ram: 2 GB
5
2.2 Methodologies and Approaches:
Front-End Design: Developing responsive user interfaces using HTML, CSS, and
JavaScript. Ensuring a seamless user experience across different devices and browsers.
Back-End Development: Implementing server-side logic using PHP. This included handling
user authentication, adding items into cart and order confirming.
Database Design: Designing a relational database schema in MySQL to manage user data,
order details and menu items. Ensuring efficient data retrieval and storage.
Unit Testing: Writing unit tests for individual components to ensure they function correctly in
isolation.
Integration Testing: Testing the interaction between different components to identify and
resolve any issues.
Deployment: Deploying the application to a staging environment for final testing before
moving to production. Using version control systems like Git for managing code changes.
6
Chapter-3
Internship Work
Problem Statement
Design the front-end for a food delivery platform with features like restaurant listings,
menus, order placement, tracking, reviews, and user notifications using advanced CSS,
JavaScript, and a front-end framework like React. Implement user authentication, restaurant
management, order processing, geolocation services, and database integration for user data,
restaurants, orders, and reviews.
User-Friendly Interface:
Design an intuitive and visually appealing interface for customers to browse menus,
place orders, and track deliveries.
Implement a streamlined process for users to select food items, customize orders, and
complete payments.
Create an efficient backend system for managing restaurant menus, orders, and delivery
logistics.
Reliable Delivery System:
7
Develop a system for assigning and managing delivery drivers, including route
optimization and real-time updates.
Scalability:
Design the application architecture to handle increasing numbers of users, orders, and
restaurants as the platform grows.
Frameworks:
HTML:
HTML known as Hyper Text Mark-up Language, the authoring language used to
create documents on the World Wide Web. HTML defines the structure and layout of a Web
document by using a variety of tags and attributes.
In this application I used html to create web pages like Home page, About page, Menu
page and Add Cart Page and Payment Page. A user friendly web pages are designed by using
html language.
CSS:
CSS stands for Cascading Style Sheets. It describes how HTML elements are to be
displayed onscreen or in other media.
In this project, additional CSS was used when further customization on the site was
required. Sometimes, the theme does not work as per the requirement of the user so to meet
the requirement of the user additional CSS was used. To add in the icons, to scale the logo
properly, change the font size of the specified content, to add a specific call out box, or style
just a section of a post differently CSS was used. The theme option does provide certain
features but to add the features according to the client’s requirement additional CSS was
applied.
JAVASCRIPT:
8
JavaScript (sometimes abbreviated JS) is a prototype-based scripting language that is
dynamic, weakly typed. JavaScript is a client-side scripting language meaning that JavaScript
code is written into an HTML page.
In this Food Ordering Web Application, JavaScript is used to maintain the number of
items customer added to the cart and to check whether a particular item is in cart or not. All
the things like adding an item to the cart and deleting an item form the cart , Placing
order ,Payment Verification is done by using JavaScript.
Express.js is a small framework that works on top of Node.js web sever functionality
To simplify it’s APIs and add helpful new features.Nodes.js itself is not a framework, But
rather a JavaScript runtime environment that allows developers to execute all the JavaScript
code on the sever side.
For this application I created node.js file for each action like About page, Cart page
Checkout page, index page, Product page, Payment page, Thank you page. By using this Files
the administrator can maintain the whole website actions and can change or modify The
contents in the web page.
XAMPP:
XAMPP is a free and open-source cross-platform web server solution stack package
developed by Apache Friends, consisting mainly of the Apache HTTP Server, MariaDB
database, and interpreters for scripts written in the PHP and Perl programming languages.
Since most actual web server deployments use the same components as XAMPP, it makes
transitioning from a local test server to a live server possible. XAMPP's ease of deployment
means a WAMP or LAMP stack can be installed quickly and simply on an operating system
by a developer, with the advantage a number of common add-in applications such as
WordPress and Joomla! can also be installed with similar ease using Bitnami. Browser
compatibility on a website involves ensuring that the site works properly and looks consistent
across different web browsers. This can be achieved through various techniques such as
cross-browser testing, using vendor prefixes, or writing fallback code to account for older
browser versions. It's important to test your site in multiple browsers to ensure it functions
9
correctly for all users regardless of their preferred browser choice. Additionally, staying up-
to-date with new browser releases can help you avoid any potential compatibility issues down
the line.
SQL:
In this Online Food Ordering Website, I created some tables to maintain and retrieve
the data effectively. I created orders table which contains the data related to the customers
like id, name, phone number, city, email, date, address, product ids, status, cost, etc. And I
created another table payments which contains the data of customer like order-id, transaction-
id, date of order, etc. products table is created to maintain the details of the items in a
restaurant, it contains the product-id, type of item like veg item or non-veg item and that item
is available or not. I used some functions to update the data immediately whenever a new
item is added or removed from the data.
The implementation of the Food Delivery Web Application project involved several
systematic steps, from initial planning to final deployment.
Defining Objectives: Established the main objectives of the Food Delivery Web Application,
such as secure user authentication, ordering food items and data integrity.
10
Choosing Technologies: Selected HTML, CSS, JavaScript, Bootstrap for front-end, PHP for
back-end, MySQL for database management, and Git/GitHub for version control.
HTML Structure: Developed the HTML structure for the main pages, including the home
page, registration page, login page, menu page, and admin page.
CSS Styling: Used CSS and Bootstrap to style the web pages, ensuring a responsive and
consistent design across devices.
Server-Side Scripting: Written PHP scripts to handle server-side logic, including user
authentication, menu management, and handling orders.
Database Integration: Connecting PHP scripts to the MySQL database to perform CRUD
operations (Create, Read, Update, Delete).
APIs and AJAX: Used PHP to create APIs for asynchronous data fetching and update the
user interface without reloading the page using AJAX.
User Authentication: Implementing secure user registration and login functionality with
password hashing and session management.
Input Validation: Ensured all user inputs are validated and sanitized to prevent SQL
injection and XSS attacks.
Unit Testing: Written unit tests for individual components to ensure they work correctly in
isolation.
Integration Testing: Testing the interactions between different components to identify and
fix any issues.
Initializing Git Repository: Creating a Git repository and committing the initial project
structure.
11
Each phase, from planning to deployment, is crucial for building a secure, scalable, and
user friendly application. By leveraging HTML, CSS, JavaScript, Bootstrap, PHP, MySQL,
Git, and GitHub, a robust Food Delivery Web Application that meets the project's
requirements and goals was developed. This Food Delivery Web Application project utilized a
comprehensive set of technologies to develop a secure, responsive, and user-friendly web
application. Each technology played a critical role in different aspects of the project, from
creating the user interface to managing server-side logic and database interactions. The use of
Visual Studio Code as the IDE, XAMPP as the local development server, and Git/GitHub for
version control and collaboration ensured a smooth and efficient development process.
12
Chapter-4
Results
The culmination of the full stack web development internship was marked by the
successful completion of Food Delivery Web Application.
This project aimed to develop a secure, user-friendly, and responsive web application
that enables users to order their food online.
Functional Website
The primary objective was to create a fully functional Food Delivery Web Application that
allows users to register, log in, add items to cart, and order their food. This objective was
successfully achieved. The system provides a seamless user experience from registration to
ordering and confirming their orders, ensuring that each step is intuitive and secure.
Users can create an account and log in securely. Passwords are hashed before being stored in
the database to protect against data breaches. Admin can edit the details of any user/candidate
through Admin Login.
Responsive Design
Using HTML, CSS, and Bootstrap, the application was designed to be fully responsive. This
ensures that the system is accessible and functional across a wide range of devices.
A well-structured database schema was designed to store users, admin, and food items data.
PHP scripts were developed to handle Create, Read, Update, and Delete operations, ensuring
data integrity and consistency.
Version Control
Git and GitHub were used to manage the project’s version control and facilitate collaboration.
A Git repository was initialized, and the project structure was committed to GitHub.
13
Figure 4.1.1 User Login
14
Figure 4.1.4 List of Restaurants
15
Figure 4.1.7 Admin updating the user profiles
16
Figure 4.1.10 Restaurant details storage
17
Chapter-5
Conclusions and Future work
Conclusions:
In conclusion, the development and implementation of Food Delivery Web Application
have marked a significant milestone in addressing the evolving needs of both consumers and
restaurants in the modern food industry. This project has successfully harnessed technology
to create a seamless and convenient platform for ordering food online.
The food delivery web application project has achieved significant milestones by
delivering a fully functional and user-friendly platform. The application successfully
integrates a dynamic front-end with a robust back-end, providing a seamless experience for
users to browse menus, place orders, make payments, and track deliveries in real-time. Key
features such as secure authentication, comprehensive menu management, real-time order
tracking, and payment integration have been effectively implemented, resulting in a reliable
and scalable solution.
In sum, this E-Commerce Food Ordering Website represents a significant leap in the
digital transformation of the food industry. It not only caters to the ever-growing demand for
online food ordering but also empowers restaurants to thrive in this competitive landscape.
Despite the success of the initial implementation, there are several areas for future
enhancement to further improve the application's functionality and user experience. The
following outlines potential future work:
18
2. Order Customization:
o Introduce options for users to customize their orders with special instructions or
modifications to menu items.
o Develop reward systems for frequent users, such as loyalty points, discounts,
and special offers to increase user engagement and retention.
o Enable users to share their orders and experiences on social media platforms,
increasing the application's visibility and user engagement.
o Continuously update and improve security protocols to protect user data and
transactions, staying ahead of potential threats and vulnerabilities.
o Allow users to rate their orders and provide feedback on dishes and delivery
experiences, helping to maintain high standards and improve service quality.
By addressing these future enhancements, the food delivery web application can
continue to evolve, offering even more value to its users and stakeholders. The project's
foundation provides a solid platform for continuous improvement, ensuring it remains
competitive and responsive to user needs in the ever-evolving food delivery market.
19
References
The successful completion of the “Food Delivery Web Application” project during my
internship relied on a variety of resources, both technical and academic. These references
provided valuable insights, best practices, and foundational knowledge necessary for the
development and implementation of the project.
- AICTE portal
https://www.aicte-india.org/
- Slash Mark IT Startup LinkedIn
https://www.linkedin.com/company/slash-mark/
- HTML and CSS: Design and Build Websites by Jon Duckett
This book served as a comprehensive guide to HTML and CSS, providing
foundational knowledge on creating structured and styled web pages. It covered the
latest standards and best practices, which were essential for developing a user-friendly
and responsive interface for the Food Delivery Web Application.
- Learning PHP, MySQL & JavaScript by Robin Nixon
This book provided a holistic view of web development with PHP and MySQL, along
with JavaScript for client-side scripting. It helped bridge the gap between different
technologies and integrate them effectively in the project.
- GitHub Documentation (official documentation)
https://docs.github.com/en
20
Weekly Overview
Week-1
Week-2
Week-3
21
2024
29-05- Wednesday Introduction to JavaScript, basic syntax
2024
30-05- Thursday DOM manipulation
2024
31-05- Friday Form validation to the registration form using JavaScript
2024
01-06- Saturday JavaScript validation for the login form
2024
Week-4
Week-5
22
2024
14-06- Friday Basic PHP scripts for handling form submissions
2024
15-06- Saturday PHP scripts for user registration
2024
Week-6
Week-7
23
2024
Week-8
24