Professional Documents
Culture Documents
Lund Spoofing
Lund Spoofing
INTERNSHIP REPORT
BACHELOR OF ENGINEERING
in
COMPUTER SCIENCE & ENGINEERING
Submitted By:
AAQIB KHAN
4MW20CS107
CERTIFICATE
This is to certify that Aaqib khan bearing USN 4MW20CS107 is a bonafide student of
Shri Madhwa Vadiraja Institute of Technology and Management, Bantakal Udupi, and has
undergone one months internship at Qliclabs, Mangalore from 14 Febraury 2024 to
15 March 2024. This internship report has been approved as it satisfies the academic
requirement in respect of the internship prescribed by the Visvesvaraya Technological
University Belagavi during the year 2023-2024
External Viva
Name of the Examiner Signature with date
1.
2.
ACKNOWLEDGEMENT
_
It is with great satisfaction and euphoria that I am submitting the Internship Report
on “WEB DEVELOPMENT PROJECT INTERNSHIP ”. I have
Completed it as a part of the curriculum of Visvesvaraya Technological University,
Belagavi in partial fulfillment of the requirements for the VIII Semester of Bachelor
Of Engineering in Computer Science & Engineering.
I am using this opportunity to express my deepest gratitude and special thanks to the Mr.
Rupesh Shetty, who in spite of being extraordinarily busy with his duties, took time out
to hear, guide and keep me on the correct path and allowing me to carry out my project at
their esteemed organization and extending during the training. I would also like to thank Ms.
Savitha A Shenoy , Assistant professor, Department of CSE, for her extended support. Lastly, I
take this opportunity to offer our regards to all of those who have supported us directly or
indirectly in the successful completion of this project work.
I perceive as this opportunity as a big milestone in my career development. I will strive to use
gained skills and knowledge in the best possible way, and I will continue to work on their
improvement, in order to attain desired career objectives.
AAQIB KHAN
4MW20CS107
i
ABSTRACT
ii
INTERNSHIP CERTIFICATE
lOMoARcPSD|41335687
TABLE OF CONTENTS
CONTENT PAGE NO
Approval i
Abstract ii
Table of content iii
List of figure iv
CHAPTER PAGE NO
V
lOMoARcPSD|41335687
VI
lOMoARcPSD|41335687
LIST OF FIGURES
VIII
©Daffodil International University
CHAPTER 1
INTRODUCTION
1.1 Introduction
PHP was developed by Ramus Ledford. It is a freeware. It is also a weakly typed, free
from language. PHP has since evolved into a powerful server-side markup language
with syntax that resembles a mix between Perl and C. PHP is a server-side scripting
language designed specifically for the web. Within an HTML page, we can embed PHP
code that will be executed each time the page is visited.HTML generate the web page
with the static text and images. However, the need evolved for dynamic web base usage.
These dynamic usages are facilities by PHP [1].
Other tasks that PHP is especially good at are database access, disk access, networking
and text manipulation. PHP is an excellent alternative to such similar programming
solutions as Microsoft’s proprietary scripting engine ASP and Allayer’s rather
expensive Cold fusion. As mentioned before, PHP is a cross-platform language.
Finally, PHP is easy. If you know C or Perl, learning PHP is a cinch. The language is a
mix between the two, taking the best features from both. Plus, PHP adds features to
solve common problems that programmers often encounter when programming for the
web.
1.2 Objectives
The objective of the web development is to handle the entire activity of a website. The
software keeps track of all the information about the entire website. The system
contains database where all the information will be stored safely.
1
lOMoARcPSD|41335687
1.3 Motivation
In desktop base website creating system is easy to understand. Since I accept Internship
it seems to me I am beginner and primary level to learn web development, so it is easy
and interested to learn and create. Further this project is related of student and I am
introducing to its circumstances so it service technology is under of the understand
mine. Its technology is so interested and charming and easy to build a project by fully
PHP, HTML, CSS, MYSQL.
2
2
Dept. of CSE, SMVITM
3
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
to run including libraries, system tools, code, and runtime. Using Docker we can quickly deploy and
scale applications into any environment and know our code will run. Docker revolutionizes the
traditional approach by enabling the encapsulation of applications and their dependencies into
portable, lightweight containers. This facilitates seamless deployment across different environments,
ensuring consistency and reliability.
Docker’s popularity stems from its ability to streamline development workflows, enhance
collaboration, and accelerate the delivery of software products. As I delved into Docker’s core
concepts and functionalities through hands-on tutorials, I realized its potential to revolutionize the
way modern applications are developed, tested, and deployed. From containerizing projects to
managing multiple services with Docker Compose and optimizing resource utilization, I discovered
the power of Docker in creating scalable, resilient, and agile software solutions .
Concurrently, I embarked on a journey into the world of version control with Git, a distributed version
control system that underpins collaborative software development. Git is an orce distributed
version control system. It is designed to handle minor to major projects with high speed and
efficiency. It empowers developers to track changes, manage codebase versions, and coordinate work
effectively within teams. From initializing repositories to branchid
4
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
merging branches, Git provides a robust framework for managing codebase evolution and ensuring
project integrity.
Git is a free and open-source distributed version control system designed to handle projects with
speed and efficiency. Real-life projects generally have multiple developers working in parallel and
the code in Git keeps changing as more code is added by developers.
The integration of platforms like GitHub amplifies Git's collaborative capabilities, facilitating
seamless code review, feedback exchange, and collaborative development workflows. Through
guided tutorials and practical exercises, I honed my Git skills, recognizing its pivotal role in modern
software development practices. Git's ability to facilitate parallel development, code sharing, and
version history management underscores its indispensability in agile, iterative software development
environments.
Complementing my exploration of Docker and Git, I explored relational database management with
PostgreSQL. PostgreSQL stands as a robust, open-source database management system renowned
for its reliability, performance, and extensive feature set. As I navigated through structured tutorials
and hands-on exercises, I gained proficiency in designing, querying, and managing databases using
PostgreSQL.
5
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
Free to download.
Highly extensible.
Secure.
Highly Reliable.
Understanding fundamental concepts such as schema design, data manipulation, and indexing
provided a solid foundation for effective data storage and retrieval strategies. Moreover, integrating
PostgreSQL with Docker environments offered valuable insights into deploying and managing
database services within containerized infrastructures, highlighting its significance in comprehensive
application development and deployment practices. PostgreSQL's support for ACID transactions,
JSONB data type, and extensibility further underscore its suitability for a wide range of use cases,
from small-scale applications to large-scale enterprise systems.
During the second week of my internship, I immersed myself in Django, a potent web framework for
Python. I learned to set up and configure Django projects, laying the groundwork for dynamic web
applications. Updating existing Dockerfiles to accommodate Django Admin was a notable highlight,
enhancing our project management capabilities. Additionally, I understood the importance of
RESTful APIs, understanding their design principles and serialization methods. Creating unit tests
further solidified my understanding, ensuring the reliability and functionality of our Django
applications.
Model - The data you want to present, usually data from a database
View - A request handler that returns the relevant template and content - based on the request
from the user
6
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
Template - A text file (like an HTML file) containing the layout of the web page, with logic
on how to display the data.
URL Routing: Django utilizes URL patterns defined in the urls.py file to map incoming URLs to
corresponding views. This allows for clean and organized URL handling, enhancing the
maintainability of the application.
Routing the request to the appropriate view function based on URL patterns.
7
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
Implementing class-based views, we crafted methods to handle CRUD operations, allowing for the
retrieval and creation of student records. URL endpoints were then configured to enable access to
these views, facilitating interaction with the API.
Testing the API's functionality was crucial, and we employed CURL commands to validate GET
requests for retrieving student information and POST requests for adding new student entries.
During the third week of my internship, I focused on advancing my logic building skills by delving
into web scraping using Python. I successfully developed scripts to scrape data from various sources
and stored it efficiently in a Postgres database. Additionally, I integrated these scripts into Django
views, enabling seamless integration of scraped data into our web application. Furthermore, I
explored different types of extractors to enhance data extraction capabilities, and I honed my
debugging and profiling skills in Python to ensure the robustness and efficiency of our scraping
processes.
8
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
Django admin interface. Finally, I verified the functionality by triggering the scraping process
through the created view and checking the extracted data in the admin panel. This integration
streamlines the process of scraping and viewing the data within the Django admin interface,
enhancing the overall usability and management of the application.
Task Scheduling and Execution: Celery allows tasks to be scheduled and executed
asynchronously, improving performance and scalability.
9
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
Distributed Task Processing: It supports multiple worker nodes for distributed task
processing, enhancing efficiency and throughput.
Task Prioritization and Retries: Celery provides features for prioritizing tasks and handling
retries in case of failures, ensuring robustness and reliability.
Scalability: With support for distributed processing and task queues, Celery scales seamlessly
to handle large workloads.
Monitoring and Management Tools: Celery offers monitoring and management tools for
tracking task progress, debugging, and performance optimization.
To use Celery, a message transport, or broker, is required to handle message creation and
transport. RabbitMQ is a popular choice for this purpose due to its reliability, flexibility, and
scalability. Key features of RabbitMQ include reliability, flexible routing, clustering, highly
available queues, and a management UI.
Job: Job is nothing but task which contains meta information required to run task.
Job Logs: This contains logs which helps us to track asynchronous task.
10
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
Chapter 3
OUTCOMES
Overall, I had a great internship experience at UniCourt India. My mentor and people manager
helped me navigate different workflows and get through challenging circumstances. I got a chance
to develop my interpersonal abilities from one to one meetings and discussion, which are highly
transferable across fields and jobs, in addition to honing my technical talents. I was able to develop
my leadership and teamwork abilities by taking on leadership responsibilities all throughout.
Practical experience working with tools and technologies: As an intern I have got an
opportunity to gain hands-on experience working with Docker, Containerizing the
project, its Python implementation and data storage in PostgreSQL database. This
experience helped me develop skills in best coding practices and efficient data
retrieval & storage.
Increased problem-solving skills: Every problem is unique and thus required a new
programming logic. Thus being as an intern I got an opportunity to keep on optimizing
my own code until its efficient and understandable enough to tackle with multiple
such problem.
11
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
Dockerizing a project involves having required base files such as docker-compose and dockerfiles
wherein we specify the configuration of out container. Also we can have our python scripts which
can be executed in the VM environment while a docker project is up.
12
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
The Django admin site allows us to interact with the database by means of graphical user
interface. The admin site required a super user who can access the site based on the provide
credential. The login page of Django admin site looks similar to the below reference.
The admin site displays all the available models in the project, listed at the left navigation section,
during the internship I have worked on student details management system and hence the below
figure shows a Students model list in the navigation section.
13
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
The stored data in the models could be viewed by navigating through the model, that shown the
graphical representation of saved details as shown in the below figure.
14
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
Chapter 4
CONCLUSION
Through hands-on experience and guided mentorship, I've not only expanded my technical skill set
but also honed my problem-solving abilities, communication skills, and collaborative mindset. The
internship has provided me with a solid foundation to continue my journey in the field of software
development with confidence and enthusiasm.
I'm grateful for the support and guidance provided by the team at Mangalore Infotech, particularly
my mentor, Mr. Sidharth, whose expertise and encouragement have been invaluable throughout
this journey. As I embark on the next phase of my career, I carry with me the lessons learned and
the experiences gained during this internship, confident in my ability to tackle new challenges and
contribute meaningfully to the world of technology.
15
Dept. of CSE, SMVITM
Django-Powered Student Information on Docker
REFERENCES
16
Dept. of CSE, SMVITM