Manoj Internship
Manoj Internship
INTERNSHIP REPORT ON
of
BACHELOR OF TECHNOLOGY
in
By
CHITTOOR-517127, A.P.
(2024-2025)
                                      i
SREENIVASA INSTITUTE OF TECHNOLOGY AND MANAGEMENT STUDIES
                                 CHITTOOR-517127, A.P.
                               (Autonomous – NBA Accredited)
          (Approved by AICTE & Affiliated to JNTUA, Ananthapuramu)
CERTIFICATE
                                             ii
                       STUDENT’S DECLARATION
                                         iii
INTERNSHIP CERTIFICATE
          iv
                            ACKNOWLEDGEMENT
       A Project of this magnitude would have not been possible without the guidance
and co-ordination of many people. I am fortune in having top quality people to help,
support and guide me in every step towards my goal. I’m very much grateful to the
Chairman Sri K. Ranganadham, Garu for his encouragement and stalwart support. I
also extremely indebted to the Secretary Sri D.K. Badri Narayana, Garu for his constant
support.
      I express my sincere thanks to our Academic Advisor Dr. K. L. Narayana.,
MTech., Ph.D., further, I would like to express my profound gratitude to our principal
Dr. N. Venkatachalapathi, MTech., Ph.D., for providing all possible facilities
throughout the completion of my project work.
       I express my sincere thanks to our Dean (Academics), Dr. M. Saravanan, M.E.,
Ph.D., further I express my sincere thanks to Head of the Department Dr.
R. Karunia Krishna Priya MTech., Ph.D. Associate Professor for his co-operation
and valuable suggestions towards the completion of project work.
       I express my sincere thanks to my guide Mrs. P. Leelavathi, M.Tech., Assistant
Professor for offering me the opportunity to do this work under his guidance.
       I express my sincere salutation to all other teaching and non-teaching staff of our
department for their direct and indirect support given during my project work. Last but
not the least. I dedicate this work to my parents and the Almighty who have been with
me throughout and helped me to overcome the hard times.
                                              v
                                  ABSTRACT
                                            vi
                         INDEX
1 INTRODUCTION
2 FPROJECT DESCRIPTION
                               vii
                                 CHAPTER – 1
                              INTRODUCTION
                                           1
1.2 INTRODUCTION TO FULL STACK WEB DEVELOPMENT
DEFINITION:
Full Stack Web Development refers to the end-to-end development of web applications,
covering both the front-end (client-side) and back-end (server-side) technologies. It
involves building responsive user interfaces, implementing server logic, and managing
databases to deliver complete and functional web applications. A full stack developer
possesses the skills to handle all layers of development, ensuring smooth integration and
high performance across the web stack.
   4. Version Control & Deployment – Using Git for version control and deploying
       applications using services like GitHub, Vercel, or Heroku.
Frontend Development
    Key Features: UI layout, responsiveness, DOM manipulation, animations, state
      management.
      Technologies Used: HTML5, CSS3, JavaScript, React.js, Vue.js, Bootstrap,
       GSAP, Three.js.
Backend Development
      Key Features: API creation, server logic, authentication, database interaction.
      Technologies Used: Node.js, Express.js, Python (Django/Flask), RESTful APIs,
       JWT.
                                             2
Database Management
     Key Features: Data storage, retrieval, schema design, relationships, and
      performance optimization.
     Technologies Used: MongoDB, PostgreSQL, Mongoose ORM.
Tools & Deployment
     Key Features: Version control, CI/CD, testing, and live deployment.
                                            3
                                    CHAPTER - 2
                           PROJECT DESCRIPTION
Features
   1. Smooth scroll navigation between sections (Home, About, Skills, Projects,
        Contact).
Setup
 Use internal <style> and <script> blocks to keep it all in one file.
UI Enhancements
                                                4
      Smooth scroll behavior and animated headers.
Deployment
                                             5
SOURCE CODE
<!DOCTYPE html>
<html lang="en">
<head>
<title>My Portfolio</title>
 <link
href="https://fonts.googleapis.com/css2?family=Poppins:wght@300;600&display=swa
p" rel="stylesheet">
<script src="https://cdnjs.cloudflare.com/ajax/libs/gsap/3.12.2/gsap.min.js"></script>
<style>
scroll-behavior: smooth;
 header {
  background:
  #222; color: #fff;
  padding: 1rem
  2rem; position:
  fixed; width:
  100%;
  top: 0;
  z-index: 1000;
  display: flex;
  justify-content: space-
  between; align-items: center;
                                             6
}
header nav a {
 margin-left: 1rem;
 text-decoration:
 none; color: #fff;
 font-weight: 500;
section {
 padding: 100px
 20px; min-height:
 100vh; display:
 flex;
 flex-direction:
 column; justify-
 content: center;
}
.hero {
.hero h1 {
 font-size: 3rem;
 margin-bottom:
 1rem;
}
.section-title {
 font-size:
 2rem;
 margin-bottom:
 1rem; text-align:
 center;
}
                                         7
 background: #f5f5f5;
.projects .card {
 background: #fff;
 border-radius:
 10px;
 box-shadow: 0 5px 15px
 rgba(0,0,0,0.1); margin: 1rem auto;
 padding: 1rem;
 max-width:
 500px;
}
.contact form {
 max-width:
 400px; margin: 0
 auto; display:
 flex;
 flex-direction: column;
.contact button {
 padding: 0.75rem;
 background:
 #6e8efb; color:
 white;
 border: none;
 border-radius:
 5px;
                                       8
  cursor: pointer;
  font-weight:
  bold;
 }
footer {
  text-align: center;
  padding: 1rem;
  background:
  #222; color:
  white;
 }
</style>
</head>
<body>
<header>
<nav>
<a href="#hero">Home</a>
<a href="#about">About</a>
<a href="#projects">Projects</a>
<a href="#contact">Contact</a>
</nav>
</header>
                                        9
  <h1>Hi, I'm a Web Developer</h1>
<h2 class="section-title">Projects</h2>
<div class="card">
<p>A simple, interactive task manager with a clean UI and responsive layout.</p>
  </div>
  gsap.utils.toArray("section").forEach(section
  => { gsap.from(section, {
    scrollTrigger: {
     trigger: section,
     start: "top
     80%",
    },
y: 50,
opacity: 0,
duration: 0.8,
ease: "power2.out"
});
});
</script>
</body>
</html>
                                             10
SAMPLE OUJTPUT
                 11
2.1.2 Task 2: Online Learning Platform
Description
       This task involves creating a simple yet elegant online learning interface where
users can watch video lessons and track their progress. The focus is on a responsive video
layout, user feedback through progress indicators, and an engaging learning experience.
Features
   2. Click-to-play functionality
   3. Progress tracking with completed lesson badges
Setup
UI Enhancements
Deployment
 Hosted on GitHub Pages or Netlify with accessible design and clean code
                                              12
SOURCE CODE
<!DOCTYPE html>
<html lang="en">
<head>
 <link
href="https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&display=swap"
rel="stylesheet">
<style>
:root {
--bg-light: #f0f2f5;
--bg-dark: #1a1a2e;
--text-light: #1a1a1a;
--text-dark: #f5f5f5;
--accent: #6e8efb;
body {
   background: var(--bg-light);
   color: var(--text-light);
   transition: all 0.3s ease-in-out;
  }
                                             13
body.dark {
background: var(--bg-dark);
color: var(--text-dark);
header {
.toggle-mode {
 padding: 0.5rem
 1rem; border: none;
 background: #fff;
 color: #333;
 font-weight: 600;
 border-radius:
 6px; cursor:
 pointer;
}
.container {
 display: flex;
 flex-wrap:
 wrap; padding:
 2rem;
                                          14
 gap: 2rem;
.video-player {
 flex: 2;
 min-width: 300px;
 background: var(--card-
 light); border-radius: 20px;
 box-shadow: 0 8px 20px
 rgba(0,0,0,0.15); padding: 1rem;
 transition: 0.3s ease;
body.dark .video-player {
 background: var(--card-
 dark); backdrop-filter:
 blur(10px);
}
iframe {
  width:
  100%;
 height: 400px;
 border: none;
 border-radius:
 12px;
}
.lesson-list {
  flex: 1;
  display: flex;
  flex-direction: column;
                                    15
 gap: 1rem;
.lesson {
 background: var(--card-light);
 padding: 1rem;
 border-radius: 12px;
 cursor: pointer;
 box-shadow: 0 4px 10px
 rgba(0,0,0,0.1); transition: 0.2s ease;
 display: flex;
 justify-content: space-
 between; align-items: center;
}
.lesson:hover {
transform: translateY(-3px);
.lesson.completed {
  background:
  #6e8efb; color:
  white;
}
body.dark .lesson {
 background: var(--card-
 dark); backdrop-filter:
 blur(10px);
}
                                           16
 body.dark .lesson.completed {
  background: #a777e3;
 }
</style>
</head>
<body>
 function playVideo(index) {
  document.getElementById('videoFrame').src =
  lessons[index];
// Mark as completed
});
 function toggleDarkMode() {
  document.body.classList.toggle("dark");
 }
</script>
</body>
</html>
                                            17
SAMPLE OUTPUT
                18
2.1.3 Task 3: Real-Time Collaborative Document Editor
       This task focuses on building a web-based document editor that simulates
collaborative editing in real-time. Users can write, save, delete, and revisit documents
within a modern, intuitive interface. The goal is to mimic real-time collaboration with a
professional UI/UX standard.
Features
Step-by-Step Process
2. Setup
      HTML structure includes: title input, document editor, toolbar
3. UI Enhancements
      Added dark mode toggle
                                              19
4. Testing
      Validate save/load/delete across reloads
      Test on multiple screen sizes
      Check typing and formatting behavior
                                             20
SOURCE CODE
<!DOCTYPE html>
<html lang="en">
<head>
 <link
href="https://fonts.googleapis.com/css2?family=Poppins:wght@400;600&display=swa
p" rel="stylesheet">
<style>
:root {
--bg-light: #f0f2f5;
--bg-dark: #1a1a2e;
--text-light: #1a1a1a;
--text-dark: #f5f5f5;
--accent: #6e8efb;
body {
  background: var(--bg-light);
  color: var(--text-light);
  transition: all 0.3s ease-in-
                                              21
 out;
}
#docTitle {
 width:
 100%;
 font-size: 1.5rem;
 margin-bottom:
 1rem; padding:
 0.5rem; border:
 none;
 border-radius: 8px;
 background:
 rgba(255,255,255,0.9); font-
 weight: bold;
}
.editor {
 width:
 100%;
 height: 300px;
 border: none;
 outline: none;
 font-size:
 1rem;
 padding:
 1rem;
 border-radius: 12px;
 resize: none;
 background:
 rgba(255,255,255,0.9); color:
 inherit;
}
                                 22
body.dark {
background: var(--bg-dark);
color: var(--text-dark);
header {
.toggle-mode {
 padding: 0.5rem
 1rem; border: none;
 background: #fff;
 color: #333;
 font-weight: 600;
 border-radius:
 6px; cursor:
 pointer;
}
.container {
 padding:
 2rem;
 max-width: 1000px;
 margin: auto;
                                          23
}
.editor-tools
 { display:
 flex; gap:
 1rem;
 flex-wrap:    wrap;
 margin-bottom:
 1rem;
}
.editor-tools button {
 padding: 0.5rem
 1rem; border: none;
 border-radius:
 8px; font-weight:
 600; cursor:
 pointer;
 background: var(--accent);
 color: white;
}
.editor-box {
 background: var(--card-
 light); border-radius: 16px;
 padding: 1rem;
 box-shadow: 0 8px 20px rgba(0,0,0,0.15);
body.dark .editor-box {
 background: var(--card-
 dark); backdrop-filter:
 blur(10px);
                                        24
}
#docTitle {
 width:
 100%;
 font-size: 1.5rem;
 margin-bottom:
 1rem; padding:
 0.5rem; border:
 none;
 border-radius: 8px;
 background:
 rgba(255,255,255,0.9); font-
 weight: bold;
}
.editor {
 width:
 100%;
 height: 300px;
 border: none;
 outline: none;
 font-size:
 1rem;
 padding:
 1rem;
 border-radius: 12px;
 resize: none;
 background:
 rgba(255,255,255,0.9); color:
 inherit;
}
body.dark #docTitle,
body.dark .editor {
 background: rgba(255,255,255,0.1);
                                      25
   color: white;
.footer {
   margin-top:
   1rem; font-size:
   0.85rem; display:
   flex;
   justify-content: space-between;
select {
   padding: 0.4rem;
   border-radius:
   6px; font-weight:
   500;
  }
</style>
</head>
<body>
<header>
</header>
<div class="container">
<div class="editor-tools">
                              -
                              .
                              ' Save</button>
  <button onclick="saveDoc()">⬛
                                           26
                                _ Delete</button>
  <button onclick="deleteDoc()">넢̄
                    괚
                    ‘ Recent Docs</option>
   <option value="">)
</select>
</div>
<div class="editor-box">
<div class="footer">
</div>
</div>
</div>
<script>
 // Update count
 editor.addEventListener('input', ()
 => { const text = editor.value;
  charCount.textContent = `${text.length} characters`;
                                            27
 });
function saveDoc() {
  localStorage.setItem(`doc-${title.value}`, editor.value);
  updateRecent();
  alert("Document saved!");
 // Load doc
 function
 loadDoc() {
   const val =
   recent.value; if (val) {
    title.value = val;
   editor.value = localStorage.getItem(`doc-
   ${val}`); editor.dispatchEvent(new
   Event('input'));
  }
updateRecent();
</script>
</body>
</html>
                                                 28
SAMPLE OUTPUT
                29
2.1.4 Task 4: Interactive Map Location Saver
   This task involves building a modern Map App where users can search and save
specific locations. Users can mark, save, revisit, delete, and edit locations directly on the
map. The interface is fully responsive and visually enhanced, combining powerful
mapping capabilities (via LeafletJS) and persistent local storage, all packed into one sleek
HTML file.
Features
Step-by-Step Process
2. Setup
      Embed LeafletJS for open-source interactive maps
                                               30
3. Enhancements
      Responsive layout for mobile/tablet
4. Testing
      Check map interaction, saving, editing, and deleting
                                             31
SOURCE CODE
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link rel="stylesheet"
href="https://unpkg.com/leaflet@1.9.4/dist/leaflet.css"/>
 <link
href="https://fonts.googleapis.com/css2?family=Poppins:wght@400;700
&display=swap" rel="stylesheet">
<style>
     flex-direction:
     column; height:
     100vh; overflow:
     hidden;
 }
 .container {
  display: flex;
  flex: 1;
                                          32
    overflow: hidden;
    z-index: 1;
.sidebar {
 flex: 1;
 background: rgba(15, 20, 40,
 0.9); backdrop-filter:
 blur(20px); padding: 1.2rem;
 overflow-y: auto;
h2 {
    font-weight: 700;
    margin-bottom:
    1rem; font-size:
    1.6rem; color:
    #61dafb;
    text-shadow: 0 0 5px #61dafb80;
input, button {
 width: 100%;
 padding: 0.8rem;
 margin-bottom:
 1rem; border-radius:
 12px; border: none;
 font-size: 1rem;
font-family: 'Poppins';
input {
                                             33
    background: rgba(255,255,255,0.08);
    color: #fff;
    border: 1px solid rgba(255,255,255,0.1);
button {
button:hover {
ul {
    list-style: none;
    margin-top:
    1rem; overflow-
    y: auto; flex: 1;
}
li {
    background:
    rgba(255,255,255,0.05); margin-
    bottom: 0.5rem;
    padding: 0.6rem;
    border-radius:
    10px; display: flex;
    justify-content: space-
    between; align-items: center;
    transition: background 0.3s ease;
                                               34
}
li:hover {
background: rgba(255,255,255,0.08);
.loc-text {
  flex: 1;
  margin-right: 10px;
  color: #fff;
}
.loc-text[contenteditable] {
  outline: none;
}
.btn-small {
    background: rgba(255,255,255,0.12);
    color: #fff;
    border: none;
    padding: 0.4rem
    0.6rem; font-size:
    0.8rem;
    border-radius:
    6px; margin-left:
    5px; cursor:
    pointer;
}
.btn-small:hover {
  background:
  #6c63ff;
}
.animate-marker {
@keyframes bounce {
                                             35
     0% { transform: translateY(0); }
     100% { transform: translateY(-
     8px); }
 }
</style>
</head>
<body>
<div class="container">
<div id="map"></div>
<div class="sidebar">
         ’艗
     <h2>艔`艓
           ' Map Explorer PRO+</h2>
<ul id="savedList"></ul>
</div>
</div>
<script src="https://unpkg.com/leaflet@1.9.4/dist/leaflet.js"></script>
<script>
 L.tileLayer('https://{s}.tile.openstreetmap.fr/hot/{z}/{x}/{y}.png', {
  attribution: '© OpenStreetMap contributors'
 }).addTo(map);
                                             36
 function addAnimatedMarker(latlng, name =
  '') { if (marker) map.removeLayer(marker);
  marker = L.marker(latlng, {
function loadSaved() {
let li = document.createElement('li');
   let span =
   document.createElement('span');
   span.className = 'loc-text';
   span.contentEditable = true;
   span.textContent = place.name;
   span.onblur = () => {
    saved[index].name = span.textContent;
    localStorage.setItem('places', JSON.stringify(saved));
   };
   let goBtn =
   document.createElement('button');
   goBtn.className = 'btn-small';
   goBtn.textContent = 'Go';
   goBtn.onclick = () => {
    map.setView([place.lat, place.lng],
    13);
    addAnimatedMarker([place.lat, place.lng], place.name);
loadSaved();
</script>
</body>
</html>
                                            37
SAMPLE OUTPUT
                38
                                   CHAPTER – 3
                             PROJECT SUMMERY
1. Portfolio Website
Summary:
   This Portfolio Website showcases the developer’s personal projects, skills, and
achievements through a visually dynamic and interactive interface. It leverages modern
web animation libraries like GSAP or Three.js to deliver a stunning user experience.
Key Features:
• Smooth page transitions using GSAP or Three.js.
• Animated sections for projects, skills, and contact info.
• Responsive and mobile-friendly design.
• Clean, professional layout tailored for personal branding.
                                               39
Node.js/Python and MongoDB/PostgreSQL, it provides seamless syncing and rich
editing tools.
Key Features:
• Real-time collaboration and auto-syncing.
• Create, edit, save, delete, and view recent documents.
• In-document editing with enhanced UI/UX.
• Fully responsive interface with backend integration.
                                             40
                                   CONCLUSON
                                            41
                              REFERENCES
2. W3Schools
   Tutorials and examples for web technologies including frontend and backend
   basics.
   https://www.w3schools.com/
5. PostgreSQL Documentation
   Open-source relational database system reference. https://www.postgresql.org/docs/
6. MongoDB Manual
   Documentation for MongoDB operations and integration.
   https://www.mongodb.com/docs/manual/
9. Three.js
   JavaScript 3D library used to create immersive web experiences. https://threejs.org/
                                         42
PHOTOS
   43
44