Ilovepdf Merged
Ilovepdf Merged
A
INTERNSHIP REPORT
ON
1BH22CS410
Conducted at
AIROBOSOFT
CERTIFICATE
This is to certify that the Internship report on “ FULL STACK WEB DEVELOPMENT”
carried out by VISHAL KUMAR SHARMA [1BH22CS410] the Bonafide student of
Bangalore Technological Institute, Bengaluru in partial fulfillment for the award of
Bachelor of Engineering in Computer Science and Engineering of Visvesvaraya
Technological University, Belagavi during the academic year 2024 -2025. Thus, it is
certified that all corrections/suggestions indicated for Internal Assessment have been
incorporated in the report. The Internship report has been approved, as it satisfies the academic
requirements in the respect of the Internship report prescribed for the said degree.
EXAMINERS
Name of examiners Signature with date
1…………………… …………………….
2………………….... …………………….
BANGALORE TECHNOLOGICAL INSTITUTE
(An ISO 9001:2015 Certified Institute)
Kodathi Village, Varthoor Hobli, Bangalore East Tq, Bangalore Urban District,
Bangalore-560035, Karnataka.
principal@btibangalore.org www.btibangalore.org
Phone: 7090404050
DECLARATION
I, VISHAL KUMAR SHARMA the student of fourth year Computer Science And
Engineering, Bangalore Technological Institute, Bangalore, hereby declare the Internship in
domain “ FULL STACK WEB DEVELOPMENT” has been independently carried out by
me under the guidance of “Mr. Rathikantha Majhi”, Assistant Professor, Department of
Computer Science and Engineering, Bangalore Technological Institute, Bengaluru and
Submitted in partial fulfillment of the requirements for the award of the degree in Bachelor of
Engineering in Computer Science and Engineering of the Visvesvaraya Technological
University, Belagavi during the academic year 2024 – 2025.
I also declare that to the best of my knowledge and believe the work reported here does not
form part of any other Internship on the basis of which a degree or award was conferred on an
early occasion of this by any other.
Place: Bangalore
Date:
I heartly extend my words of gratitude to the Internship Coordinator Mr. Rathikantha Majhi, for
her valuable advice, encouragement and suggestion given us in the course of our Internship
work.
I would like to express our immense gratitude to HOD Dr. Sreeramareddy G M, for his
unfailing encouragement and suggestion given to us in course of Internship work.
I would like to take opportunity to express our gratitude to the Principal Dr. H S Nanda, for
giving us this opportunity to enrich our knowledge.
I am grateful to the President Dr. Prabhakara Reddy A and Secretary, Sri. C L Gowda for
having provided us with a great infrastructure and well – furnished labs.
Finally, a note of thanks to the Department of Computer Science and Engineering, both
teaching and non – teaching staff for their co-operation extended to us.
Last but not the least, I acknowledge the support and feedback of our parents, guardians and
friends, for their indispensable help always.
I
ABSTRACT
II
INDEX
Acknowledgment I
Abstract II
Content III
List of Figures IV
CONTENT
SL. NO CHAPTER PAGE NO.
1 Internship 1-2
1.1 Internship Statement 1
1.2 Objective of Internship 2
1.3 Scope of Internship 2
2 Introduction 3-5
2.1 Frontend development 3
2.2 Backend development 4
3 Company Profile 6-8
3.1 Company overview 6
3.2 Work Culture 8
3.3 Number of Working Per Day 8
4 Work Scheduling 9-12
5 Tasks Performed 13-27
6 Project 28-42
7 Conclusion 43
7.1 Limitations 44
7.2 Future enhancements 44
APPENDIX 46
Appendix-Snapshots 46
III
LIST OF FIGURES
IV
INTERNSHIP-IV 2024-25
CHAPTER 1
INTERNSHIP
1.1 Internship statement:
The rise in global competition has prompted organizations to devise strategies to have a
talented and innovative workforce to gain a competitive edge. Developing an internship
policy is an impactful strategy for creating a future talent pool for the industry. The
internship (a form of experiential learning) program helps fresh pass–outs in gaining
professional know-how and benefits corporate sectors. The internship also enhances the
student’s employability skills passing out from Technical Institutions.
The following list provides a brief illustrative overview of the knowledge, skills, work
habits, and character traits commonly associated with 21st-century skills and to be acquired
by graduates:
(1) Critical thinking, problem-solving, reasoning, analysis, interpretation, synthesizing
information.
(2) Scientific literacy and reasoning, the scientific method.
(3) Research skills and practices, interrogative questioning.
(4) Creativity, artistry, curiosity, imagination, innovation, personal expression.
(5) Information and communication technology (ICT) literacy, media and internet literacy,
data interpretation, and analysis, computer programming.
(6) Oral and written communication, public speaking and presenting, listening.
(7) Economic and financial literacy, entrepreneurialism.
(8) Global awareness, multicultural literacy, humanitarianism.
(9) Environmental and conservation literacy, ecosystems understanding.
(10) Civic, ethical, and social-justice literacy.
(11) Leadership, teamwork, collaboration, cooperation, facility in using virtual workspaces.
(12) Perseverance, self-direction, planning, self-discipline, adaptability, initiative.
(13) Health and wellness literacy, including nutrition, diet, exercise, and public health and
safety.
The internship experience will augment the outcome-based learning process and inculcate
various attributes mentioned above in a student in line with the graduate
CHAPTER 2
INTRODUCTION
Full Stack Development refers to the development of both front end (client side) and back
end (server side) portions of web applications.Full Stack web developers have the ability to
design complete web applications and websites. They work on the frontend, backend,
database, and debugging of web applications or websites.
Technology Related to Full Stack Development
Front-end Development
It is the visible part of website or web application which is responsible for user experience.
The user directly interacts with the front end portion of the web application or website.
2.1 FRONT-END TECHNOLOGIES
The front end portion is built by using some languages which are discussed below:
• HTML: HyperText Markup Language (HTML) is the standard language for
creating the structure of web pages. It helps define the layout of content using
elements enclosed within tags. HTML forms the backbone of any website by
organizing content such as headings, paragraphs, links, and images.
• CSS: Cascading Style Sheets (CSS) is a stylesheet language used for describing the
presentation of a web page written in HTML. It enhances the visual appearance of
web pages by applying styles such as colors, fonts, spacing, and layouts,
independently of the HTML structure.
• Node.js:
Node.js is a cross-platform, open-source JavaScript runtime environment that
executes JavaScript code outside a web browser. It is event-driven, non-blocking,
and ideal for building fast, scalable server-side applications. It enables developers
to use a single programming language (JavaScript) for both client-side and server-
side development.
• Express.js:
Express.js is a minimal and flexible Node.js web application framework that
provides a robust set of features for web and mobile applications. It simplifies the
creation of server-side logic, routing, middleware handling, and API endpoints.
• MongoDB:
MongoDB is a document-oriented NoSQL database used for high-volume data
storage. It stores data in flexible, JSON-like documents, making it easier to work
with data structures and scale applications horizontally. MongoDB works
seamlessly with Node.js through libraries like Mongoose, enabling developers to
perform CRUD operations efficiently.
• Git:
Git is a distributed version control system that tracks changes in source code and
facilitates collaboration among developers. It ensures efficient code management,
history tracking, and parallel development via branches.
• GitHub:
GitHub is a cloud-based hosting platform for version control using Git. It supports
team collaboration, pull requests, issue tracking, and integration with CI/CD tools
for streamlined development and deployment workflows.
• VSCode:
VS Code is a lightweight and powerful source-code editor that supports
development in multiple programming languages. It offers intelligent code
completion, debugging tools, terminal integration, extensions, and version control
support, making it the preferred IDE for full stack developers.
• JSON-Based Communication: Both frontend and backend share JSON format for
seamless data transfer, reducing transformation overhead.
CHAPTER 3
COMPANY PROFILE
3.1 Company Overview
AiRobosoft, founded by Syed Asad Ahmed in Bangalore, India, stands as a pioneering
organization that integrates software development, robotics, and electric vehicle (EV)
manufacturing into a single visionary enterprise. Established with a mission to serve society
through innovation and technological adaptability, AiRobosoft continually strives to create
sustainable and intelligent solutions to meet the evolving demands of the modern world.
Our core focus lies in the fusion of emerging technologies such as Artificial Intelligence,
Cloud Computing, Machine Learning, Embedded Systems, and the Internet of Things
(IoT). By harnessing these technologies, AiRobosoft develops intelligent software,
automated robotic systems, and environment-friendly electric vehicles to address real-
world challenges and enhance quality of life.
AiRobosoft’s strength lies in its robust R&D capabilities and cross-functional teams that
work across domains to bring groundbreaking ideas to fruition. From advanced AI systems
to cloud-based platforms and custom robotics solutions, AiRobosoft caters to clients
ranging from startups to large-scale enterprises, offering bespoke solutions tailored to their
specific business needs.
We are also committed to educating and upskilling future professionals. Through hands-
on training modules, we offer internship opportunities that focus on both theory and real-
time industrial projects, allowing participants to apply their knowledge in practical,
impactful ways.
Products/Services by AiRobosoft:
Services Offered:
● Custom Software Development
● AI & Machine Learning Solutions
● Embedded Systems Integration
● Cloud-Based Application Development
● Internet of Things (IoT) Implementation
● Data Analytics & Business Intelligence
● Data Visualization and Reporting
● OLAP Cube Analysis
● Data Warehousing
● Data Cleansing & Integration
Products:
● EV Robotics Units – Smart, AI-integrated electric vehicles for various sectors
● AI-based Robotics Systems – Automation tools for industries and smart infrastructure
● Cloud Intelligence Platforms – Scalable, secure, and efficient SaaS applications
Training Program
Interns are treated as contributors, not observers, and their curiosity is nurtured through
open communication, knowledge sharing, and hands-on guidance. The friendly
environment at AiRobosoft ensures that doubts are addressed promptly and that
continuous feedback fuels ongoing improvement.
Live demo sessions, hands-on technical workshops, and access to pre-recorded content
ensure that interns receive a comprehensive learning experience beyond traditional
classroom boundaries.
CHAPTER 4
WORK SCHEDULE
WEEK 1
HTML:
HyperText Markup Language (HTML) is the standard markup language used to create
and structure content on the World Wide Web. It was developed by Tim Berners-Lee in
1991 and has since evolved to become the backbone of web development. HTML uses a
system of tags and attributes to define the structure and layout of a web page, including
elements such as headings, paragraphs, links, images, lists, tables, and forms. These tags are
enclosed in angle brackets and usually come in pairs, with an opening tag and a closing tag.
HTML5, the latest version of the language, introduced new elements and attributes that
support multimedia content, semantic structures, and improved accessibility, as well as
APIs for enhanced functionality and interactivity. HTML5 also brought significant
improvements in mobile web performance and browser compatibility. By providing the
fundamental framework for web pages, HTML works in conjunction with CSS (for styling)
and JavaScript (for interactivity) to create dynamic and visually appealing web experiences.
WEEK 2
CSS:
Cascading Style Sheets (CSS) is a stylesheet language integral to the presentation layer
of web documents written in HTML or XML. It was introduced by the World Wide Web
Consortium (W3C) in December 1996 to provide a clear separation between content and
presentation, enabling more flexible and maintainable web design. CSS allows developers
to control the layout, color, fonts, and overall visual aesthetics of web pages. Over time,
CSS has evolved through various versions, with CSS2 released in 1998, bringing enhanced
capabilities such as absolute, relative, and fixed positioning of elements, and CSS3, initiated
in 1999, modularizing the language to allow for incremental updates and the addition of
features like transitions, animations, and grid layouts. Core concepts of CSS include
selectors, which target HTML elements for styling, properties that define specific stylistic
attributes, and values that specify the characteristics of those attributes. CSS supports
responsive design techniques, ensuring web pages render well on a variety of devices and
screen sizes, making it indispensable for modern web development.
WEEK 3 & 4
JAVASCRIPT:
JavaScript is a dynamic, high-level programming language that is widely used for web
development. Initially created by Brendan Eich at Netscape in 1995, JavaScript has evolved
to become a core technology of the World Wide Web, alongside HTML and CSS. It allows
developers to create interactive and responsive web pages by manipulating the Document
Object Model (DOM), handling events, and performing asynchronous operations.
JavaScript can be executed directly in the browser, making it essential for client-side
scripting, but it is also used on the server side with environments like Node.js. Its versatility
and ease of integration with other web technologies have led to a vast ecosystem of libraries
and frameworks, such as React, Angular, and Vue.js, which further simplify and enhance
web development. As a prototype-based, multi-paradigm language, JavaScript supports
object-oriented, imperative, and functional programming styles, providing developers with
flexibility in coding. This adaptability, combined with continuous enhancements and
widespread support, ensures that JavaScript remains a pivotal language in the world of
modern web development.
WEEK 5 &6
TAILWINDCSS:
Tailwind CSS is a modern utility-first CSS framework that enables developers to build
custom user interfaces quickly and efficiently. Unlike traditional CSS frameworks like
Bootstrap, Tailwind provides low-level utility classes that allow developers to style
elements directly in the HTML without writing custom CSS. This approach promotes rapid
development, consistency, and ease of maintenance. Developed by Adam Wathan and first
released in 2017, Tailwind CSS has gained massive popularity due to its flexibility and
responsiveness. Its design system encourages a mobile-first approach, with built-in support
for dark mode, state variants, and responsive design utilities. With tools like @apply,
variants, and theme customization, Tailwind CSS provides powerful configuration
capabilities, making it a top choice for developers aiming for design precision and
component reusability in modern web applications.
WEEK 7 &8
REACTJS:
React.js is a declarative, component-based JavaScript library developed by Facebook for
building interactive user interfaces. Released in 2013, React simplifies the process of
developing complex UIs by breaking them down into reusable components. It utilizes a
Department of CSE, BTI, Bangalore-35 Page 10
INTERNSHIP-IV 2024-25
virtual DOM to optimize rendering performance, ensuring that updates to the UI are fast
and efficient. With React, developers can manage application state effectively using hooks
like useState, useEffect, and context. Its unidirectional data flow enhances predictability
and debugging. React is widely adopted in both small and large-scale applications due to
its flexibility, vast ecosystem, and seamless integration with libraries such as Redux, React
Router, and others. Its focus on component reusability and performance has made it one of
the most powerful tools in front-end web development today.
WEEK 9
REDUX-TOOLKIT:
Redux Toolkit is the official, recommended way to write Redux logic, offering a
standardized and simplified approach to managing global state in React applications.
Introduced by the Redux team, it addresses common pain points such as boilerplate code
and complex reducer setups. Redux Toolkit provides essential utilities like createSlice,
configureStore, and createAsyncThunk that streamline the creation of actions, reducers, and
asynchronous logic. It encourages the use of the "ducks" pattern by organizing logic in a
modular, maintainable structure. With built-in support for Immer.js, it allows developers to
write immutable update logic in a mutable style. Redux Toolkit improves developer
productivity by offering an opinionated setup, devtools integration, and seamless
TypeScript support, making it ideal for scalable and maintainable state management.
WEEK 10 & 11
NODEJS:
Node.js is an open-source, cross-platform JavaScript runtime environment that allows
developers to execute JavaScript code outside of a web browser. Built on Chrome's V8
JavaScript engine, Node.js was created by Ryan Dahl in 2009 and is designed for building
scalable network applications. It uses an event-driven, non-blocking I/O model that makes
it lightweight and efficient — perfect for data-intensive real-time applications. Node.js is
widely used for server-side development, offering access to the filesystem, databases, and
other back-end services. With its vast npm ecosystem, developers can leverage thousands
of open-source libraries to accelerate development. Node.js empowers full-stack
development using JavaScript across both front-end and back-end, streamlining workflows
and enhancing productivity.
WEEK 12
EXPRESS:
Express.js is a minimal and flexible Node.js web application framework that provides
robust features for building single-page, multi-page, and RESTful APIs. Created by TJ
Holowaychuk in 2010, Express simplifies the process of routing, middleware integration,
and HTTP request handling, making it the de facto standard server framework for Node.js.
Its unopinionated nature allows developers the freedom to structure their applications as
needed while still benefiting from a suite of powerful tools. Express supports template
engines, static file serving, and efficient error handling, and it's often used with MongoDB
and Mongoose in the ME*N stack. Its speed, simplicity, and vast middleware ecosystem
make Express.js a cornerstone technology for modern web and API development
WEEK 13 & 14
MONGODB:
MongoDB is a powerful, document-oriented NoSQL database designed for high
performance, high availability, and easy scalability. Released in 2009 by MongoDB Inc., it
stores data in flexible, JSON-like BSON documents, which allows for dynamic schema
design. This flexibility is ideal for applications with evolving data structures. MongoDB
supports advanced querying, indexing, and aggregation capabilities, enabling efficient data
retrieval and manipulation. With features like replica sets for high availability and sharding
for horizontal scalability, it is well-suited for large-scale distributed systems. MongoDB
integrates seamlessly with Node.js applications using the official MongoDB driver or
Mongoose ODM, making it a popular choice in full-stack JavaScript development.
WEEK 15
GIT&GITHUB:
Git is a distributed version control system developed by Linus Torvalds in 2005 to
manage source code efficiently. It allows developers to track changes, collaborate on
codebases, and maintain the integrity of project history. Git operates locally, enabling fast
commits, branching, and merging, which simplifies parallel development workflows.
GitHub, on the other hand, is a cloud-based platform for hosting Git repositories, offering
collaboration features like pull requests, issues, project boards, and CI/CD pipelines.
Together, Git and GitHub form the backbone of modern software development practices,
promoting team collaboration, open-source contributions, and streamlined deployment .
CHAPTER 5
TASKS PERFORMED
HTML
HyperText Markup Language (HTML) is the standard markup language used to create and
structure content on the World Wide Web. It was developed by Tim Berners-Lee in 1991
and has since evolved to become the backbone of web development. HTML uses a system
of tags and attributes to define the structure and layout of a web page, including elements
such as headings, paragraphs, links, images, lists, tables, and forms. These tags are enclosed
in angle brackets and usually come in pairs, with an opening tag and a closing tag. HTML5,
the latest version of the language, introduced new elements and attributes that support
multimedia content, semantic structures, and improved accessibility, as well as APIs for
enhanced functionality and interactivity. HTML5 also brought significant improvements in
mobile web performance and browser compatibility. By providing the fundamental
framework for web pages, HTML works in conjunction with CSS (for styling) and
JavaScript (for interactivity) to create dynamic and visually appealing web experiences.
HTML stands for Hyper Text Markup Language
HTML is the standard markup language for creating Web pages
HTML describes the structure of a Web page
HTML consists of a series of elements
HTML elements tell the browser how to display the content
1. Document Structure
<!DOCTYPE html>
Declares the document type and version of HTML being used (HTML5 in this case).
<html lang="en">
<!-- Page content goes here -->
</html>
The root element that contains all the other HTML elements.
<head>
<title>Page Title</title>
</head>
Contains meta-information about the document, such as the title, character set, and links
to stylesheets.
<title>Page Title</title>
Sets the title of the web page, which appears in the browser’s title bar or tab.
<body>
<!-- Main content goes here -->
</body>
Contains the content of the web page, such as text, images, and links.
2. Text Formatting
<h1>This is a heading</h1>
<h2>This is a subheading</h2>
<h3>This is a smaller heading</h3>
defines headings, with <h1> being the largest and <h6> the smallest.
<p>This is a paragraph of text.</p>
Defines a paragraph.
<strong>This text is bold and important.</strong>
Defines bold text, usually used to indicate strong importance.
<em>This text is italicized and emphasized.</em>
Defines italic text, typically used to emphasize text.
Line one<br>
Line two
Inserts a line break.
<hr>
Creates a horizontal rule or line.
3. Lists
<ul>
<li>Item 1</li>
<li>Item 2</li>
</ul>
Defines an unordered (bulleted) list.
<ol>
<li>First item</li>
<li>Second item</li>
</ol>
Defines an ordered (numbered) list.
here...</textarea>
Defines a multi-line text input field.
<select name="options">
<option value="option1">Option 1</option>
<option value="option2">Option 2</option>
</select>
Defines a drop-down list.
7. Meta Information
<meta charset="UTF-8">
<meta name="description" content="A brief description of the page">
Provides metadata about the HTML document, such as the character set or a description.
CSS
What is CSS?
Cascading Style Sheets (CSS) is a stylesheet language integral to the presentation layer of
web documents written in HTML or XML. It was introduced by the World Wide Web
Consortium (W3C) in December 1996 to provide a clear separation between content and
presentation, enabling more flexible and maintainable web design. CSS allows developers
to control the layout, color, fonts, and overall visual aesthetics of web pages. Over time,
CSS has evolved through various versions, with CSS2 released in 1998, bringing enhanced
capabilities such as absolute, relative, and fixed positioning of elements, and CSS3, initiated
in 1999, modularizing the language to allow for incremental updates and the addition of
features like transitions, animations, and grid layouts. Core concepts of CSS include
selectors, which target HTML elements for styling, properties that define specific stylistic
attributes, and values that specify the characteristics of those attributes. CSS supports
responsive design techniques, ensuring web pages render well on a variety of devices and
screen sizes, making it indispensable for modern web development.
CSS is a language used to describe the presentation of a document written in HTML or
XML. It controls how elements are displayed on the screen, including their layout, colours,
fonts, and more.
CSS Syntax:
CSS is written in a specific syntax that includes:
• Selectors: Targets HTML elements you want to style.
Descendant Selector: Targets elements that are nested within other elements.
div p {
color: green;
}
2. CSS Properties
Some common CSS properties include:
Color and Background:
color: #333;
background-color: #f0f0f0;
Fonts:
font-family: Arial, sans-serif;
font-size: 14px;
font-weight: bold;
Text:
text-align: center;
text-decoration: underline;
Box Model: Controls the size and spacing of elements.
width: 200px;
height: 100px;
margin: 10px;
padding: 15px;
border: 1px solid #000;
3. CSS Layouts
Box Model: Each element is a box with margins, borders, padding, and content.
Flexbox: A layout model for designing responsive layouts.
.container {
display: flex;
justify-content: space-between;
}
Grid: A two-dimensional layout model for creating complex layouts.
.grid-container {
display: grid;
grid-template-columns: repeat(3, 1fr);
gap: 10px;
}
4. Responsive Design
Media queries allow you to apply styles based on the device’s characteristics, such as
screen width.
@media (max-width: 600px) {
.container {
padding: 10px;
}
}
5. Applying CSS
CSS can be applied in three ways:
1. Inline Styles: Directly in the HTML element.
<p style="color: blue;">Hello World!</p>
JAVASCRIPT
JavaScript is a versatile and widely-used programming language primarily known for
interactivity to web pages. It allows you to manipulate the DOM (Document Object
Model),handle events, and create dynamic content.
1. Variables: Used to store data values.
let name = 'John'; // 'let' declares a block-scoped variable
const age = 30; // 'const' declares a constant
Data Types: Common types include strings, numbers, booleans, objects, and arrays.
let isActive = true; // Boolean
resolve('Data received');
}, 1000);
});
promise.then(data => {
console.log(data);
}).catch(error => {
console.error(error);
});
Async/Await: Syntactic sugar for handling promises more easily.
async function fetchData() {
try {
let response = await fetch('https://api.example.com/data');
let data = await response.json();
console.log(data);
} catch (error) {
console.error('Error fetching data:', error);
}
}
fetchData();
8. Objects and Arrays
• Objects: Collections of key-value pairs.
let person = {
name: 'John',
age: 30,
greet() {
return `Hello, my name is ${this.name}`;
}
};
Arrays: Ordered lists of values.
let numbers = [1, 2, 3, 4, 5];
numbers.forEach(number => {
console.log(number);
});
REACT
1. React code:
import React, { useState, useEffect } from 'react';
import axios from 'axios';
function App() {
const [users, setUsers] = useState([]);
const [newUser, setNewUser] = useState({ name: '', email: '' });
const [editUser, setEditUser] = useState(null);
// Delete a user
const handleDelete = (id) => {
axios.delete(`http://localhost:5000/api/users/${id}`)
.then(() => {
setUsers(users.filter(user => user._id !== id));
})
.catch(error => console.error('Error deleting user:', error));
};
// Edit a user
const handleEdit = (user) => {
setEditUser(user);
setNewUser({ name: user.name, email: user.email });
};
return (
<div>
<h1>User Management</h1>
<form onSubmit={handleSubmit}>
<input
type="text"
name="name"
value={newUser.name}
<ul>
{users.map(user => (
<li key={user._id}>
<span>{user.name} - {user.email}</span>
<button onClick={() => handleEdit(user)}>Edit</button>
<button onClick={() => handleDelete(user._id)}>Delete</button>
</li>
))}
</ul>
</div>
);
}
Nodejs
2. Node code:
// Connect to MongoDB
mongoose.connect('mongodb://localhost:27017/userDB', { useNewUrlParser: true,
useUnifiedTopology: true })
.then(() => console.log('Connected to MongoDB'))
.catch(error => console.error('MongoDB connection error:', error));
// API Routes
// DELETE a user
app.delete('/api/users/:id', async (req, res) => {
try {
await User.findByIdAndDelete(req.params.id);
res.status(204).send();
} catch (err) {
res.status(400).send('Error deleting user');
}
});
PROJECT
1. Login-Page
2. Hero Section
import React from 'react'
import "./Hero.css"
import hand_icon from "../../assets/hand_icon.png"
import arrow_icon from "../../assets/arrow_icon.png"
import men from "../../assets/p8.webp"
const Hero = () => {
return (
<div className='hero'>
<div className="hero-left">
<h2>Best Deals ! Best Prices !</h2>
<div className="hero-hand-icon">
<p>New</p>
<img src={hand_icon} alt="" height="60px" />
Department of CSE, BTI, Bangalore-35 Page 29
INTERNSHIP-IV 2024-25
</div>
<p>collections</p>
<p>for everyone</p>
<div className="hero-latest-btn">
<div>Latest Collection</div>
<img src={arrow_icon} alt="" height="30px"/>
</div>
</div>
<div className="hero-right">
<img src={men} alt="" height="400px" />
</div>
</div>
)
}
export default Hero
3. Cart Section
4. Product Display
import React, { useContext } from 'react'
import "./ProductDisplay.css"
import star_icon from "../../assets/star_icon.png"
import star_dull_icon from "../../assets/star_dull_icon.png";
import { ShopContext } from '../../Context/ShopContext';
const ProductDisplay = (props) => {
const { product } = props;
const {addTocart} = useContext(ShopContext);
return (
<div className='productdisplay'>
<div className="productdisplay-left">
<div className="productdisplay-img-list">
<img src={product.image} alt="" height="150px" />
<img src={product.image} alt="" height="150px" />
<img src={product.image} alt="" height="150px" />
</div>
<div className='productdisplay-img'>
<img className='productdisplay-main-img' src={product.image} alt="" height="300px"
/>
</div>
</div>
<div className="productdisplay-right">
<h1>{product.name}</h1>
<div className="productdisplay-right-star">
<img src={star_icon} alt="" height="20px" />
<img src={star_icon} alt="" height="20px" />
5. Items
useEffect(() => {
dispatch(getSavedIdeas() as any);
}, [dispatch]);
const stats = [
{
name: 'Total Ideas',
value: ideas.length,
icon: Brain,
color: 'bg-blue-500'
},
{
name: 'Pitch Decks',
value: ideas.filter(idea => idea.pitchDeckContent).length,
icon: FileText,
color: 'bg-green-500'
if (loading) {
return (
<div className="flex items-center justify-center min-h-screen">
<div className="animate-spin rounded-full h-12 w-12 border-t-2 border-b-2
border-indigo-500"></div>
</div>
);
}
Department of CSE, BTI, Bangalore-35 Page 35
INTERNSHIP-IV 2024-25
return (
<div className={`min-h-screen ${darkMode ? 'bg-gray-900' : 'bg-gray-50'} py-
12`}>
<div className="max-w-7xl mx-auto px-4 sm:px-6 lg:px-8">
<div className="text-center">
<h1 className={`text-3xl font-bold ${darkMode ? 'text-white' : 'text-gray-
900'}`}>
Welcome back, {user?.name}!
</h1>
<p className={`mt-2 text-lg ${darkMode ? 'text-gray-300' : 'text-gray-600'}`}>
Your startup journey dashboard
</p>
</div>
<button
onClick={() => navigate('/saved-ideas')}
{user?.isPremium && (
<button
onClick={() => navigate('/investors')}
className={`p-6 rounded-lg shadow-sm text-left hover:shadow-md
transition-shadow ${
darkMode ? 'bg-gray-800 hover:bg-gray-700' : 'bg-white hover:bg-gray-50'
}`}
>
<Star className="h-8 w-8 text-yellow-600 mb-3" />
<h3 className={`text-lg font-medium ${darkMode ? 'text-white' : 'text-gray-
900'}`}>
Investor Directory
</h3>
<p className={`mt-2 text-sm ${darkMode ? 'text-gray-300' : 'text-gray-
500'}`}>
Browse our curated list of investors
</p>
</button>
)}
</div>
</div>
CHAPTER 6
CONCLUSION
My internship experience in Full Stack Web Development using the MERN stack
(MongoDB, Express.js, React.js, and Node.js) has been an incredibly rewarding journey.
It offered me a deep and practical understanding of modern web application development,
encompassing both client-side and server-side technologies. By working with React.js for
building dynamic and responsive user interfaces, and Node.js with Express.js for creating
efficient backend services, I developed a solid foundation in building scalable and
maintainable full-stack applications.
6.1 LIMITATIONS
Free Tier Restrictions: PDF downloads for pitch decks locked behind paywall may
frustrate free users.
Static Pitch Decks: Auto-generated decks may lack customization depth (e.g.,
branding, animations).
4. Scalability Challenges
Lean Canvas Complexity: Draggable/resizable blocks may lag with large datasets
or low-end devices.
• Version Control & History: Track changes and revert to previous versions of
pitch decks/canvases.
APPENDIX
SNAPSHOTS