Intrenship Report....
Intrenship Report....
Example 1.
Key Indicators:
Risk Assessment:
Example 2.
Key Indicators:
Risk Assessment:
• The email uses trusted names (Wipro, Skill India) to gain attention, but there is no
real verification.
• They are creating urgency by using words like “Final Call.”
• The link can steal information or ask for payment later.
• This kind of email can lead to data theft or fake job traps.
Example 1.
Permissions Requested:
• Access to contacts
• Access to camera and microphone
• Access to location
Potential Impact:
• Instagram mainly needs camera and mic for stories or reels, but it also asks for
contacts.
• Contact access is not necessary for using the app.
• It can read my contact list and suggest friends or send invites without permission.
• This can create privacy risk and unwanted exposure of my phonebook.
Example 2.
Permissions Requested:
• Access to contacts
• Access to location
• Access to storage and media files
Potential Impact:
• Spotify is only for listening to music, but it asks for contacts and location.
• Contacts permission is not needed to play songs.
• Location may be used for ads or local suggestions, but still not necessary.
• These permissions can lead to data collection, targeted ads, or privacy issues.
YouTube Shorts
• Teenagers
• Jobless or low-income users
• People looking for easy money or entertainment
Conclusion:
This is a manipulative and risky advertisement. It can trap users in gambling behavior.
These ads should carry proper warnings and be regulated more strictly.
Observation:
Potential Vulnerabilities:
1. Ad Privacy Settings
• Path: Chrome → Settings → Privacy and Security → Cookies and Site Data
• Description:
I enabled the option to block third-party cookies.
• Impact:
This stops advertisers and other websites from following me across different sites. It
helps protect my online activity from being tracked.
Steps Taken:
Result:
• Country: India 🇮🇳
• ISP: Google
• No unknown or third-party DNS servers were found.
My Understanding:
• Since the servers are trusted (Google) and located in India, this means my DNS
traffic is not leaking.
• My browsing data is going safely through the expected servers.
My Understanding:
• HTTP websites are not secure and sometimes don’t even open properly.
• The browser may block them or show an error.
• HTTPS websites use encryption and show a padlock. They are safe to use.
Zero Trust is a security model that means no user or device is trusted by default — even if
it is inside the organization.
It checks every login, every access request, and uses verification at every step.
• Every student and teacher will have to login with proper ID and password
• Access to different resources (like admin data, results, fees) will be role-based
• Even if someone is connected to the college Wi-Fi, they can't access everything freely
• Every system and database will be protected with multi-factor authentication
(MFA)
Conclusion:
Incident Summary
In 2022, a deepfake video of Elon Musk was used in a cryptocurrency scam.
In the video, Musk was shown promoting a fake investment scheme where people were told
that if they send money in crypto, they would receive double in return.
The video looked very real. It used his voice, face, and speaking style through AI
technology.
Type Solution
Use deepfake detection tools that analyze face movements, voice glitches, and
Technical
inconsistencies
Regulatory Make strict cyber laws for people who make and share deepfake scams
Awareness Run campaigns to educate people on how to spot fake videos
Conclusion:
Deepfake scams are very dangerous because they look real and easy to believe.
They affect public trust and can damage reputation or cause money loss.
We need strong technology and legal rules to stop this growing threat.
A company named “InfoSecure Pvt. Ltd.” had a sales employee named Ravi.
Ravi got angry after being rejected for a promotion.
He copied client data and pricing info to a pen drive and shared it with a rival company for
money.
This led to a huge financial loss and loss of client trust for InfoSecure.
Technical Countermeasure:
• Data Loss Prevention (DLP) software – It can detect and block sensitive data from
leaving the company through USB, email, or cloud.
• Employee Awareness Program – Teach staff about company rules, loyalty, and
legal consequences of data theft. Also include stress & grievance handling.
SECTION C: IMPLEMENTATION STRATEGY & CYBER HYGIENE
PLANNING
Conclusion:
Following small hygiene steps like password safety, data backup, and USB control can
prevent big cyber incidents. Regular training keeps everyone aware and alert.
Frequency:
Mediums Used:
📝 Feedback Mechanism:
Conclusion:
Insider threats are dangerous because they come from trusted people.
To stop them, companies need both technical tools and employee training.
Regular audits, access control, and awareness can help prevent such incidents.
SECTION D: PROFESSIONAL AWARENESS & CREATIVE CONTRIBUTION
GEETA UNIVERSITY
PANIPAT
(CS3244)
DEPARTMENT OF
LABORATORY: Front end Development – 2 Lab SEMESTER: 2nd
School CA
PAGE
S.No. LIST OF EXPERIMENT DATE SIGN.
NO.
Apply a multi-column layout to an e-commerce product
page, enhance it using Bootstrap components, and apply
1.
custom styles to improve its visual appeal and user
experience.
Create a dynamic chessboard where the user inputs the
board size, and the board displays # for black squares and
2.
* for white squares, utilizing advanced JavaScript features
and DOM.
Design an admission form using Bootstrap 5, fetch the
3. submitted data using DOM methods, and display the data
in a Bootstrap 5 table format below the form.
How can you set up a Git repository, make commits, work
with branches, merge changes, clone a repository, push
4.
updates, use a .gitignore file, view the history, and
collaborate on a project using Git?
Create a movie search application where users can search
5.
for movies by title and see details about them.
Create a basic calculator that can perform simple
6.
arithmetic operations.
Create a quiz app in React that allows users to answer
7.
questions, track scores, and display results dynamically.
How can I develop a blog platform with multiple pages
8. using React Router, complete with state management and
styled components?
Build a task management application with React, allowing
9.
users to add, edit, delete, and mark tasks as completed.
Build a weather application using React that fetches data
10. from an API and displays current weather information
dynamically.
GEETA UNIVERSITY, PANIPAT
Experiment Tittle: Apply a multi-column layout to an e-commerce product EXPER. No.1
page, enhance it using Bootstrap components, and apply custom styles to
improve its visual appeal and user experience. PAGE No.
DEPARTMENT OF CSE LABORATORY: Front end Development – 2 Lab (Code) SEMESTER: 2nd
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<link href="https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css"
rel="stylesheet" integrity="sha384-
EVSTQN3/azprG1Anm3QDgpJLIm9Nao0Yz1ztcQTwFspd3yD65VohhpuuCOmLASjC"
crossorigin="anonymous">
<style>
.img{
height:800px;
width:1400px;
.img-cl{
height: 300px;
width: 300px;
.div{
display: flex;
justify-content: center;
}
.anchor{
border-radius: 50%;
.div22
background-color: black;
color: white;
.nav{
height: 50px;
width: 50px;
</style>
</head>
<body>
<div class="container">
<div class="container-fluid">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcRb7gOBDP2ul4Vo1RVe23qG_Xic8Yg4Mzbokw&s" class="nav"
alt="">
<span class="navbar-toggler-icon"></span>
</button>
<li class="nav-item">
</li>
<li class="nav-item">
</li>
Dropdown
</a>
<li><hr class="dropdown-divider"></li>
</ul>
</li>
<li class="nav-item">
</li>
</ul>
<form class="d-flex">
</div>
</div>
</nav>
<div class="carousel-indicators">
</div>
<div class="carousel-inner">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcTyHHBdMncv5dB2VHDfKvR4KwOJ4qXkhC68Bg&s" class="img"
alt="...">
</div>
<div class="carousel-item">
<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTv-
FVJb3t7zVchJ5AGnO61RO53-Hv23wzTZA&s" class="img" alt="...">
</div>
<div class="carousel-item">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcRRW2IXTGq8GvzRF2CL5ypy8YJgqkNfJjGZgg&s" class="img"
alt="...">
</div>
</div>
<span class="visually-hidden">Previous</span>
</button>
<span class="visually-hidden">Next</span>
</button>
</div>
<br>
<br>
<div class="container-fluid">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcRb7gOBDP2ul4Vo1RVe23qG_Xic8Yg4Mzbokw&s" class="nav"
alt="">
<span class="navbar-toggler-icon"></span>
</button>
</li>
<li class="nav-item">
</li>
Brand
</a>
<li><hr class="dropdown-divider"></li>
</ul>
</li>
Color
</a>
</ul>
</li>
Season
</a>
<li><hr class="dropdown-divider"></li>
</ul>
</li>
<li class="nav-item">
</li>
</ul>
<form class="d-flex">
</form>
</div>
</div>
</nav>
<br>
<br>
<br>
<div class="row">
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcTYhwXjamoJxQyaPd_r69AfC5Oddnr5_3EYrw&s" class="img-cl"
alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcT2giUrf6u56mbrs67DHJZynT6XKxoVEMb_FA&s" class="img-cl"
alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcRBIGF3VuqoNCjwvfM4KMZZac9WFrrMliR_Gg&s" class="img-cl"
alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcT9Go_R5dpCZNLREsx4Sz9yPbg1fi84lLkCLw&s" class="img-cl"
alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
</div>
<br>
<br>
<br>
<div class="row">
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcRsOftFtF8H1J-
6AhhzEIU5c7MrE60ryHWMYA&s" class="img-cl" alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcQ8uJgvSyOsFooJJE4yHzGTcFFU7mqQvXGsOw&s" class="img-cl"
alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcTOfMXer8gOgpUXC7PujnVh2fH2GGUfen1tUw&s" class="img-
cl" alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcR9HyLR_corIOPkHZH78L_WjJzdD1pVb3OCPQ&s" class="img-cl"
alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
</div>
<br>
<br>
<br>
<div class="row">
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcTZ-
mk6GQsrs0tTnbnlCQN2vrYrnExBTcl6aw&s" class="img-cl" alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcQtBP8vLfs2EZMOHSxnBCVZlzu5h6XqpwuZjQ&s" class="img-cl"
alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcRjGBzTHxbKqiYhN2xDq9njMicjFEOlfeMolw&s" class="img-cl"
alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcSoPF0wOLRaPdMXMxLvgcF5VUtycqRVYb_pPA&s" class="img-
cl" alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
</div>
<br>
<br>
<br>
<div class="row">
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcTPtaXxTdGt1rGh8T6ZAmF9Q2jmr4ZXBfo6cQ&s" class="img-cl"
alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcSAB1cARAs_QsTZDUBZmg-
BvfDiig6wzzHDBA&s" class="img-cl" alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQj4S-
yq8ibi365xmX5YR7NrX0vdtRqaKdo3Q&s" class="img-cl" alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
<div class="col-md-3">
<div class="card">
<img src="https://encrypted-
tbn0.gstatic.com/images?q=tbn:ANd9GcSI1qfr04ZEDDMfnSUSbzWp_5nLgJSPPBwZbA&s" class="img-cl"
alt="">
<div class="card-body">
Lorem ipsum, dolor sit amet consectetur adipisicing elit. Aperiam, vel!
</div>
<div class="card-footer">
<p>1000$</p>
</div>
</div>
</div>
</div>
<br>
<br>
<br>
<br>
<div class="div">
<ul class="pagination">
</ul>
</div>
<br>
<br>
</div>
<div class="div22">
<div class="row">
<div class="col-md-3">Lorem ipsum dolor sit amet consectetur adipisicing elit. Ea est harum
accusantium eum? Eligendi, pariatur ex dignissimos in itaque numquam voluptatum dolorum accusamus
fugiat nihil totam consequuntur ad unde ipsa at iure doloribus. Repellendus aspernatur porro, fugit
neque aperiam in molestiae magni placeat maxime! Laudantium tenetur alias velit expedita
praesentium.</div>
<div class="col-md-3">Lorem ipsum dolor sit amet consectetur adipisicing elit. Ea est harum
accusantium eum? Eligendi, pariatur ex dignissimos in itaque numquam voluptatum dolorum accusamus
fugiat nihil totam consequuntur ad unde ipsa at iure doloribus. Repellendus aspernatur porro, fugit
neque aperiam in molestiae magni placeat maxime! Laudantium tenetur alias velit expedita
praesentium.</div>
<div class="col-md-3">Lorem ipsum dolor sit amet consectetur adipisicing elit. Ea est harum
accusantium eum? Eligendi, pariatur ex dignissimos in itaque numquam voluptatum dolorum accusamus
fugiat nihil totam consequuntur ad unde ipsa at iure doloribus. Repellendus aspernatur porro, fugit
neque aperiam in molestiae magni placeat maxime! Laudantium tenetur alias velit expedita
praesentium.</div>
<div class="col-md-3">Lorem ipsum dolor sit amet consectetur adipisicing elit. Ea est harum
accusantium eum? Eligendi, pariatur ex dignissimos in itaque numquam voluptatum dolorum accusamus
fugiat nihil totam consequuntur ad unde ipsa at iure doloribus. Repellendus aspernatur porro, fugit
neque aperiam in molestiae magni placeat maxime! Laudantium tenetur alias velit expedita
praesentium.</div>
</div>
</div>
<script src="https://cdn.jsdelivr.net/npm/[email protected]/dist/js/bootstrap.bundle.min.js"
integrity="sha384-MrcW6ZMFYlzcLA8Nl+NtUVF0sA7MsXsP1UyJoMp4YLEuNSfAP+JcXn/tWtIaxVXM"
crossorigin="anonymous"></script>
</body>
</html>
Experiment No-1
Objective: Book Review Blog, you have to create a simple blog page to display the contents of blog with pictures,
you have to complete the required tasks.
HTML CODE:
OUTPUT
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
body {
padding: 20px;
input, button {
padding: 8px;
margin-right: 10px;
font-size: 16px;
#board {
display: grid;
margin-top: 20px;
gap: 0;
font-family: monospace;
.cell {
width: 30px;
height: 30px;
display: flex;
align-items: center;
justify-content: center;
font-size: 20px;
.black {
background-color: black;
color: white;
.white {
background-color: white;
color: black;
</style>
</head>
<body>
<button onclick="generateChessBoard()">Generate</button>
<div id="board"></div>
<script>
generateChessBoard=()=>{
if(isNaN(size) || size<1){
return;
}
board.innerHTML="";
cell.classList.add('cell');
cell.classList.add(isBlack ? "black":"white")
board.appendChild(cell);
};
</script>
</body>
</html>
GEETA UNIVERSITY, PANIPAT
Experiment Tittle: Design an admission form using Bootstrap 5, fetch the EXPER. No.3
submitted data using DOM methods, and display the data in a Bootstrap 5 table
format below the form. PAGE No.
DEPARTMENT OF CSE LABORATORY: Front end Development – 2 Lab (Code) SEMESTER: 2nd
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Document</title>
</head>
<body>
<div class="container">
<h2>Admission Here</h2>
<div class="row">
<div class="col-md-12">
<div class="card">
<div class="card-body">
<div class="mb-3">
</div>
<div class="mb-3">
</div>
<div class="mb-3">
</div>
<div class="mb-3">
</div>
<div class="mb-3">
</div>
<div class="mb-3">
</div>
<div class="mb-3">
</div>
<div class="mb-3">
<option value="CSE">CSE</option>
<option value="Management">Management</option>
<option value="Pharmacy">Pharmacy</option>
<option value="BBA">BBA</option>
<option value="BCA">BCA</option>
</select>
</div>
<div class="mb-3">
<datalist id="city">
<option value="Sonipat">
<option value="Panipat">
<option value="Gohana">
<option value="Murthal">
<option value="Narela">
<option value="Rohtak">
<option value="Ambala">
<option value="Chandigarh">
</datalist>
</div>
<div class="mb-3">
<datalist id="state">
<option value="Assam">Assam</option>
<option value="Bihar">Bihar</option>
<option value="Chhattisgarh">Chhattisgarh</option>
<option value="Goa">Goa</option>
<option value="Gujarat">Gujarat</option>
<option value="Haryana">Haryana</option>
<option value="Jharkhand">Jharkhand</option>
<option value="Karnataka">Karnataka</option>
<option value="Kerala">Kerala</option>
<option value="Maharashtra">Maharashtra</option>
<option value="Manipur">Manipur</option>
<option value="Meghalaya">Meghalaya</option>
<option value="Mizoram">Mizoram</option>
</datalist>
</div>
<div class="mb-3">
<div class="form-check">
</label>
</label>
</label>
</div>
</div>
<hr>
<hr>
<hr>
<table class="table">
<thead>
<th>First Name</th>
<th>Last Name</th>
<th>Age</th>
<th>Email</th>
<th>City</th>
<th>State</th>
<th>Address</th>
<th>Phone No</th>
<th>DOB</th>
</thead>
<tbody id="display">
</tbody>
</table>
</form>
</div>
</div>
</div>
</div>
</div>
<script>
document.getElementById("admissionForm").addEventListener("submit", function(event) {
event.preventDefault();
if (Fname === "" || Lname === "" || email === "" || phone === "" || age === "" || dob === "" || address ===
"" || city === "" || state === "") {
return;
display.innerHTML += `
<tr>
<td>${Fname}</td>
<td>${Lname}</td>
<td>${age}</td>
<td>${email}</td>
<td>${city}</td>
<td>${state}</td>
<td>${address}</td>
<td>${phone}</td>
<td>${dob}</td>
</tr>
`;
document.getElementById("admissionForm").reset();
});
</script>
</body>
</html>
GEETA UNIVERSITY, PANIPAT
Experiment Tittle: How can you set up a Git repository, make commits, work EXPER. No.4
with branches, merge changes, clone a repository, push updates, use a
.gitignore file, view the history, and collaborate on a project using Git? PAGE No.
DEPARTMENT OF --- Front end Development – 2 Lab (Code) SEMESTER: 2nd
mkdir project-name
cd project-name
git init
cd repository
2. Make Commits
Steps:
Switch to it:
Or combine both:
git checkout -b feature-branch
4. Merge Changes
5. Clone a Repository
6. Push Updates
# Example .gitignore
node_modules/
.env
*.log
Then commit it
8. View History
See what’s been done so far in your project.
9. Collaborate on a Project
<!DOCTYPE html>
<html lang="en">
<head>
<title>Basic Calculator</title>
<style>
body {
display: flex;
justify-content: center;
align-items: center;
height: 100vh;
background: #f0f0f0;
.calculator {
background: white;
padding: 20px;
border-radius: 10px;
.calculator input {
width: 100%;
font-size: 24px;
margin-bottom: 10px;
padding: 10px;
text-align: right;
border-radius: 5px;
}
.buttons {
display: grid;
gap: 10px;
.buttons button {
padding: 15px;
font-size: 18px;
cursor: pointer;
border: none;
background: #eee;
border-radius: 5px;
.buttons button:hover {
background: #ddd;
.buttons .equal {
background: #4caf50;
color: white;
}
.buttons .equal:hover {
background: #45a049;
.buttons .clear {
background: #f44336;
color: white;
.buttons .clear:hover {
background: #e53935;
</style>
</head>
<body>
<div class="calculator">
<div class="buttons">
<button onclick="appendValue('7')">7</button>
<button onclick="appendValue('8')">8</button>
<button onclick="appendValue('9')">9</button>
<button onclick="appendValue('/')">÷</button>
<button onclick="appendValue('4')">4</button>
<button onclick="appendValue('5')">5</button>
<button onclick="appendValue('6')">6</button>
<button onclick="appendValue('*')">×</button>
<button onclick="appendValue('1')">1</button>
<button onclick="appendValue('2')">2</button>
<button onclick="appendValue('3')">3</button>
<button onclick="appendValue('-')">−</button>
<button onclick="appendValue('0')">0</button>
<button onclick="appendValue('.')">.</button>
<button onclick="calculate()">=</button>
<button onclick="appendValue('+')">+</button>
</div>
</div>
<script>
function appendValue(value) {
display.value += value;
function clearDisplay() {
display.value = '';
function calculate() {
try {
display.value = eval(display.value);
} catch {
display.value = 'Error';
</script>
</body>
</html>
cd blog-platform
2. Project Structure
/src
/components
Header.js
BlogList.js
BlogPost.js
/pages
Home.js
Post.js
/context
BlogContext.js
App.js
We’ll use React Router to set up routing in our app. You will need two pages: the Home page to list all blog posts
and a Post page to show a detailed view of a single blog post.
App.js
function App() {
return (
<Router>
<BlogProvider>
<Header />
<Switch>
</Switch>
</BlogProvider>
</Router>
);
Use Context API to store and manage the state for the blog posts.
context/BlogContext.js
id: 1,
},
{
id: 2,
},
]);
return (
{children}
</BlogContext.Provider>
);
};
pages/Home.js
function Home() {
return (
<div>
</div>
);
components/BlogList.js
App.jsx
padding: 20px;
`;
margin: 10px 0;
padding: 10px;
border-radius: 5px;
background-color: #f9f9f9;
`;
function BlogList() {
const { posts } = useBlog();
return (
<BlogListWrapper>
{posts.map((post) => (
<BlogItem key={post.id}>
<Link to={`/post/${post.id}`}>
<h2>{post.title}</h2>
</Link>
</BlogItem>
))}
</BlogListWrapper>
);
pages/Post.js
padding: 20px;
`;
const PostContent = styled.div`
margin-top: 20px;
`;
function Post() {
const { id } = useParams();
if (!post) {
return (
<PostWrapper>
<h1>{post.title}</h1>
<PostContent>{post.content}</PostContent>
</PostWrapper>
);
components/Header.js
padding: 10px;
background-color: #333;
color: white;
text-align: center;
`;
function Header() {
return (
<HeaderWrapper>
<h1>Blog Platform</h1>
<nav>
Home
</Link>
</nav>
</HeaderWrapper>
);
PAGE No.
DEPARTMENT OF --- LABORATORY: Front end Development – 2 Lab (Code) SEMESTER: 2nd
function App() {
};
);
setTasks(updatedTasks);
};
setTasks(updatedTasks);
};
const toggleTaskCompletion = (id) => {
);
setTasks(updatedTasks);
};
return (
<div className="App">
<h1>Task Manager</h1>
<TaskList
tasks={tasks}
editTask={editTask}
deleteTask={deleteTask}
toggleTaskCompletion={toggleTaskCompletion}
/>
</div>
);
setTaskText(e.target.value);
};
if (taskText.trim()) {
addTask(taskText);
setTaskText("");
};
return (
<div>
<input
type="text"
value={taskText}
onChange={handleChange}
placeholder="Enter task"
/>
</div>
);
return (
<div>
<ul>
{tasks.map((task) => (
<Task
key={task.id}
task={task}
editTask={editTask}
deleteTask={deleteTask}
toggleTaskCompletion={toggleTaskCompletion}
/>
))}
</ul>
</div>
);
if (isEditing) {
editTask(task.id, newText);
setIsEditing(!isEditing);
};
deleteTask(task.id);
};
toggleTaskCompletion(task.id);
};
return (
{isEditing ? (
<input
type="text"
value={newText}
/>
):(
<span>{task.text}</span>
)}
<button onClick={handleToggleCompletion}>
</button>
<button onClick={handleEditClick}>
</button>
<button onClick={handleDeleteClick}>Delete</button>
</li>
);
.App {
text-align: center;
input {
margin: 5px;
padding: 8px;
button {
margin: 5px;
padding: 8px;
cursor: pointer;
ul {
list-style-type: none;
padding: 0;
li {
margin: 10px 0;