Final Report - Keshav
Final Report - Keshav
DEVELOPMENT
INTERNSHIP REPORT
Submitted by
20070206018
BACHELOR OF ENGINEERING
in
Computer Engineering
[April, 2023-24]
Bhagwan Arihant Institute of Technology
BMEF Campus, VIP road Bharthana Vesu, Surat,
Gujarat 395007 India
CERTIFICATE
This is to certify that the internship report submitted with the internship
entitled Internship on Full Stack Web Development has been carried out by
Mr. Keshav Kumar Jha under my guidance in partial fulfilment for the
of Bhagwan Mahavir University, Surat during the academic year 2023 – 24.
DECLARATION
I declare that the Internship report submitted along with the Internship
Desai / Mr. Nikunj Thakor and that no part of this report has been directly
copied from any students report or taken from any other source, without
I express my deep sense of gratitude to Mr. Fenil Lathiya and Mr. Nikunj Thakor for
their kind cooperation and valuable guidance throughout the process of my work.
A special thanks to Mr. Nikunj Thakor for their guidance and encouragement in
carrying out this internship. I would also like to express my gratitude to the officials and
another staff member of CrawlApps Technologies who rendered their help during the
period of my internship.
The thanks to Prof. Maitry Desai and Head of Department Prof. Rauki Yadav, with
Institute of Technology, who always helped me by giving fruitful suggestions, support, and
encouragement which not only helped me in preparing this work but also in having a better
Lastly, I also extend my thanks and appreciation to my family members, my friends, and
my classmates who have played a very important role in helping and strengthening me.
20070206018
i
ABSTRACT
The scope of this document is to identify and describe the analysis carried out,
the project completed, and the experience gained as a web developer intern.
An internship in Full Stack Web Development gives the opportunity to work
in an industrial environment, learn from experts, and develop web
applications. Django, a high-level Python web framework, empowers
developers to build robust and scalable web applications efficiently, by using
Django REST Framework and integrating seamlessly with HTML, CSS, and
JavaScript for a comprehensive web development experience. During this
internship, I have worked on the practical implementation and testing of web
applications. This internship has enhanced my skills and offered me a
platform for making a significant contribution to web development.
ii
List of Figures
iii
List of Tables
iv
Abbreviations
v
Table of Contents
ACKNOWLEDGEMENT ................................................................................................ I
ABSTRACT .................................................................................................................... .II
LIST OF FIGURES ....................................................................................................... .III
LIST OF TABLES ......................................................................................................... IV
ABBREVIATION ......................................................................................................... ..V
LIST OF CONTENTS .................................................................................................. ..VI
CHAPTER 1 OVERVIEW OF THE COMPANY ....................................................... 1
1.1 HISTORY .............................................................................................................. 1
1.2 DIFFERENT PRODUCTS ..................................................................................... 1
1.3 ORGANIZATION CHART ................................................................................... 1
CHAPTER 2 OVERVIEW OF DIFFERENT PLANT ................................................ 2
2.1 WORK BEING CARRIED OUT IN EACH DEPARTMENT ................................ 2
2.2 SPECIFICATION OF EQUIPMENT USED IN DIFFERENT DEPARTMENT ..... 3
2.3 SCHEMATIC LAYOUT TO SHOW SEQUENCE OF OPERATION FOR
MANUFACTURING END PRODUCT ....................................................................... 3
2.4 DESCRIPTION OF EACH STAGE OF PRODUCTION ....................................... 4
CHAPTER 3 INTRODUCTION TO INTERNSHIP AND INTERNSHIP
MANAGEMENT ........................................................................................................... 5
3.1 INTERNSHIP SUMMARY ................................................................................... 5
3.2 PURPOSE.............................................................................................................. 5
3.3 OBJECTIVE .......................................................................................................... 5
3.4 SCOPE .................................................................................................................. 6
3.5 TECHNOLOGY AND LITERATURE REVIEW .................................................. 6
3.6 INTERNSHIP PLANNING ................................................................................... 7
3.6.1 Internship Efforts and Time ............................................................................. 7
3.6.2 Role and Responsibilities ................................................................................. 7
3.6.3 Grope Dependencies ........................................................................................ 7
3.6.4 Plan of Work ................................................................................................... 8
3.6 INTERNSHIP SCHEDULING............................................................................. 14
CHAPTER 4 SYSTEM ANALYSIS ........................................................................... 15
4.1 STUDY OF CURRENT SYSTEM ....................................................................... 15
4.2 PROBLEM AND WEAKNESS OF CURRENT SYSTEM .................................. 15
1.1 HISTORY
Products of Company:
• Multiple Shopify Stores & Apps
• Multiple Web & Mobile Applications
• Custom & Public Shopify Apps
• Project Manager: The project manager manages all the projects of all departments.
The project manager defines the scope of the project, manages resources and cost
of the project, documents the process of the project, manages the risk, and performs
the quality assurance.
DEPARTMENT
4. Testing: Testing begins when development is done. During the testing the logical
internals of the software is tested and ensures execution of all the paths and
functional behaviors.
5. Deployment: In this phase, the product is deployed in the user’s work environment.
6. Review: After deployment of the product, the last step is taking a review from the
user and if the user suggests any changes or wants to add a new module the product
again went into another increment.
INTERNSHIP MANAGEMENT
The internship was all about being adaptive to the industrial environment and
working in a team. The internship taught me a lot, about how to put my knowledge and
skill into practice, time management, communication skill, and most importantly
teamwork.
3.2 PURPOSE
3.3 OBJECTIVE
• An objective for this position should emphasize the skill you already possess in the
area and our interest in learning more. The objective of a web intern is to utilize his
skills and experience in a way that he can secure a challenging and rewarding
position as a web developer in the industry.
3.4 SCOPE
• Technology
Web: HTML, CSS, and JavaScript: HTML (Hypertext Markup Language), CSS
(Cascading Style Sheets), and JavaScript are fundamental technologies used in web
development. HTML provides the structure, CSS enhances the presentation, and
JavaScript adds interactivity and functionality to web pages.
Python: Python is a versatile, high-level programming language known for its
simplicity and readability. It is widely used in web development, data science,
artificial intelligence, and more. Python's extensive library ecosystem and clear syntax
make it a popular choice for building web applications.
Django: Django is a powerful web framework for building web applications with
Python. It follows the "Don't Repeat Yourself" (DRY) principle and emphasizes rapid
development and clean, pragmatic design. Django provides built-in features for
authentication, URL routing, database management, and more, allowing developers to
focus on building robust and scalable web applications.
• Literature Review
In the expansive domain of web development, a synergy of HTML, CSS,
JavaScript, Python, and Django stands as the cornerstone for crafting dynamic and
engaging web applications. HTML, CSS, and JavaScript form the fundamental triad,
enabling the structuring of content, the styling of elements, and the infusion of
functionality into websites. Python, renowned for its versatility and readability,
assumes a pivotal role in web development, empowering developers to efficiently
construct intricate web applications while capitalizing on its rich library ecosystem
and lucid syntax. Django, a robust Python web framework, further refines the
development process by furnishing a structured and pragmatic approach to web
application building. Equipped with Django's integrated features for authentication,
URL routing, and database management, developers are empowered to channel their
efforts towards innovating and scaling their web solutions.
Total duration of internship was three months from 15th January 2024 to 15th
April 2022. The internship was five days a week and the daily timing of the internship
was eight hours a day. In the day of inter, I have to start with taking the task from the
Team Leader and then I have to start implementing it and if necessary, I have to
perform functional and unit testing of the application, and at the end of the day I have to
submit all the tasks completed by me to Team Leader along with daily task report.
Other than that, there are other responsibilities of writing good and low complexity
code, performing functional testing and stress testing on the different devices with
different rate limits, and also submitting daily work reports.
12/03/2024 Tuesday Download & Install Git on Linux, Git Setup: Your
Name & Email, Command Line Basics.
9th
WEEK Create a Git Repository: git init, Stage & Commit
13/03/2024 Wednesday Files: git add, git commit, & git log, Ignore Files
with .gitignore
15/03/2024 Friday Pull From a Remote Repository: git pull & git
fetch, Clone a Remote Repository: git clone.
4.4.1 Does the system contribute to the overall objective of the organization?
4.4.2 Can the system be implemented using the current technology and within the
Yes, System can be implemented using the current technology and within the given
cost and schedule constraints.
4.4.3 Can the system be integrated with other system which are already in place?
JUSTIFICATION
• Hardware Require
1. CPU: Core i3 Processor minimum, Intel i5 recommended
Web frameworks does not require a higher processing power. However, with a
higher processor, whatever computing needs to be done, completes in
sufficient time, without making the device lag too much.
2. RAM: 4 GB RAM minimum, 8 GB RAM recommended
Visual studio Code is large, while using, it loads in the memory, so with a
large amount of memory, Visual studio Code runs smoothly and allocation of
heap and thread becomes easy for the system.
3. Disk: 4 GB available disk space minimum
Visual studio Code is already large in size and after installation it, size of
software extends, that why we need larger free space as compare to original
size of software.
• Software Require
1. Operating System: Windows (64-bit Microsoft Windows 8/10/11) / Mac
(MacOS 10.14 or Higher) / Linux (64-bit Linux distribution)
Operating System is required to run Software in the system. For the newer
version of the software, a higher level of OS is required.
2. Software: Visual studio Code
To create web application, we need any IDE as a development environment
that provides Build tools to build, debug, run and test web applications.
Kanban
Kanban is a framework used in agile development. It requires real-time
communication and full transparency of work. Work items are represented visually on
a kanban board, allowing team members to see the state of every piece of work any
time.
The work of all kanban teams resolves around a kanban board, a tool used to
visualize work and optimize the flow of the work among the team. Regardless of
whether a team's board is physical or digital, their function is to ensure the team's work
is visualized, their workflow is standardized, and all blockers and dependencies are
immediately identified and resolved. A basic kanban board has a three-step workflow:
To Do, In Progress, and Done. However, depending on a team's size, structure, and
objectives, the workflow can be mapped to meet the unique process of any particular
team.
us the tabular format, instead it uses a storage model that is optimized for the specific
requirements of the type of data being stored.
Relational Database:
Tables can have hundreds, thousands, sometimes even millions of rows of data.
These rows are often called records. Tables can also have many columns of data.
Columns are labeled with a descriptive name and have a specific data type. Example of
relation databases are MySQL, PostgreSQL, SQLite and SQL Server.
Non-Relational Database:
Non-relational databases, also called NoSQL databases, the most popular being
MongoDB, Cassandra, Couchbase, HBase, Redis, and Neo4j. These databases are
usually grouped into four categories: Key-value stores, Graph stores, Column stores,
and Document stores. NoSQL databases are increasingly used in big data and real-
time web applications.
CHAPTER 6 IMPLEMENTATION
The web application was implemented for all the modern web browsers using
HTML, CSS, JS & Django. The platform used for implementation of application was
Visual Studio Code.
6.2 TECHNOLOGY
CSS: CSS (Cascading Style Sheets) enhances HTML by controlling the presentation,
including layout, colors, fonts, and animations. It separates style from content,
allowing for consistent and visually appealing designs across web pages.
JS: JavaScript (JS) is a versatile scripting language that adds interactivity and
dynamic behavior to web pages. It enables functionalities like form validation,
interactive maps, animations, and real-time updates without reloading the page.
6.3 OUTCOMES
All functions of the web application are working, there are multiple pages for
password management. Let’s discuss each function screen wise.
• Home Page
• Login Page
• Signup Page
• Dashboard Page
• Logs Page
All the application were tested at the during the implementation and at the end of
the implementation, the test results were positive and all the functionality of the
application were working perfectly, but in some case, we also find some miss
behavioral of UI and Flow of execution and that will be fixed in the future increments.
CHAPTER 7 TESTING
Overall, the internship was very beneficial as I have improved my technical and
practical knowledge along with the Business skills like Teamwork, Time management,
Leadership, and lot more.
INSTITUTE MENTOR
The problem with MFA with QR Code is that it is TOTP that is it is a time-based OTP
and changes every 30 seconds or 60 minutes, so when user requests a QR code and then
wait for 30-60 seconds on that page, and then tries to register for 2FA would result in
invalid registration as there will be two different OTPs.
Solution:
If user waits for 30-60 seconds after requesting QR code, then we can remind user to
refresh the page and get another QR code, but this would affect user experience.
Limitation
Passwords that are being stored is encrypted using Fernet module from
cryptography package in python. It is a symmetric key cryptography, so the same key
needs to be for encryption as well as decryption, so we have to also store the key that
is required for encryption & decryption.
Future Enhancement
There are some UI level bugs in authentication page, that needs to be improved
for better user experience.
REFERENCES
1. https://docs.djangoproject.com/en/5.0/
2. https://cryptography.io/en/latest/fernet/
3. https://pyauth.github.io/pyotp/
4. https://pypi.org/project/qrcode/
5. https://render.com/