Css Microproject
Css Microproject
Downloaded by ARYAVARDHAN
Studocu is not sponsored or endorsed by any college or university
Downloaded by ARYAVARDHAN
MAHARASHTRA STATE BOARD OF TECHNICAL EDUCATION
MICRO PROJECT
Academic year: 2022-23
Enrolment No.:2000930039
Downloaded by ARYAVARDHAN
MAHARASHTRA STATE BOARD OF TECHNICAL
EDUCATION
Certificate
Seal of
Institution
Downloaded by ARYAVARDHAN
Annexure - I
Downloaded by ARYAVARDHAN
6.0 Name of Team Members with Roll No:
Krishna Patel
01 1840
Downloaded by ARYAVARDHAN
Final Micro Project Report
Annexure- II
1.0 Rationale: The aim is to help the student to attain the following industry identified competency
through various teaching learning experiences.
Sr.
Name of resources/Material Specifications Qty Remarks
No.
Processor: i3
1. Computer 1
RAM: 4.00 GB
2. Microsoft Word Word -2016
3. Printer Hp Laser Jet 1
4. Book/Site name
Downloaded by ARYAVARDHAN
Rubrics for Assessment of Micro-Project
Annexure - III
Downloaded by ARYAVARDHAN
Annexure- IV
2 Literature Survey .
Information Collection
3 Completion of the
Target as per project
proposal
4 Analysis of Data and
representation
5 Quality of
Prototype/Model/Conte
nt
6 Report Preparation
(B) Individual Presentation/Viva Out of 4
7 Presentation .
8 Viva
Downloaded by ARYAVARDHAN
Weekly Activity Sheet
Downloaded by ARYAVARDHAN
ExpendiTur
e Tracker
WebsiTe
SubjecT: ClienT Side ScripTing
Downloaded by ARYAVARDHAN
(CSS) Name: DhruTi Kamlesh PaTil
Roll Number:1841
Downloaded by ARYAVARDHAN
Table of Contents
I. Acknowledgements 1
II. Introduction 2
III. Languages used 4
IV. About our website 8
V. HTML Code 9
VI. CSS Code 10
IX. JS Code 13
X. Screenshots 16
XI. Conclusion 20
XII. References 21
Downloaded by ARYAVARDHAN
ACKNOWLEDGEMENT
I feel very proud to say that due to keen knowledge of members of our group, it
was very easy for me to learn a lot of knowledge regarding
Expense Tracker Website in JavaScript
I am greatly thankful to our principal Mr. Nagnath Kavhale the Head of
Department / First Year Co-ordinator Prof. Parvez Vaghela. We express our
sincere thanks to Prof. Parvez Vaghela (Subject In-Charge) for his support and
guidance because of which we successfully completed our project. I have been
highly benefitted by this project and have gained a lot of knowledge about
Expense Tracker Website in JavaScript
Downloaded by ARYAVARDHAN
INTRODUCTION
Most people have a habit of writing down their expenses. The problem with
paper receipts is that it’s easy to lose and can even be affected by natural
calamitites. By immediately uploading these into an expense tracker app, you
save space and time instead of having to dig through a shoebox full of receipts
come tax time.
In this day and age, when expenses are going through the roof, it has become
crucial that you learn to make your money work for you so that you can create a
nest egg for the future.
An expense tracker allows you to monitor and categorize your expenses across
your daily expenses. This website offer calculating your expenses with the
reasons of expenses
Downloaded by ARYAVARDHAN
What are the benefits of tracking expenses?
With a daily expense manager, you will be able to allocate money to
different priorities and this will also help you cut down on unnecessary
spending. As a result, you will be able to save and be able to keep worry
at bay. A daily money tracker helps you budget your money so that you
use it wisely.
If you are not using an expense tracker, you are missing out on the ability
to manage your finances wisely and effortlessly. You will end up
spending money without even realising it, and your daily expenses will
go through the roof. On the other hand, if you use a money manager app,
you will be aware when and why you are spending money and how much
you spend.
If you don’t check your spending and create a budget, you will have no
control whatsoever on your money. Instead, money will control you, and
you will either have perpetual lack of funds or you will end up steeped in
debt. A money manager app helps you decide between short-term and
long- term spending.
Downloaded by ARYAVARDHAN
LANGUAGES USED FOR
DEVELOPING EXPENSE TRACKER
WEBSITE
HTML
CSS
JavaScript
HTML
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
<body>: The <body> tag defines the document's body. The <body>
element contains all the contents of an HTML document, such as
headings, paragraphs, images, hyperlinks, tables, lists, etc. Note:
There can only be one <body> element in an HTML document.
Downloaded by ARYAVARDHAN
Header tags: Header tags, also known as heading tags, are used to
separate headings and subheadings on a webpage. They rank in order
of importance, from H1 to H6, with H1s usually being the title.
Header tags improve the readability and SEO of a webpage.
Downloaded by ARYAVARDHAN
CSS
CSS stands for Cascading Style Sheets
CSS describes how HTML elements are to be displayed on screen, paper,
or in other media
CSS saves a lot of work. It can control the layout of multiple web pages
all at once
External stylesheets are stored in CSS files
box sizing: The box-sizing CSS property sets how the total width and
height of an element is calculated
Downloaded by ARYAVARDHAN
JavaScript
JavaScript is an object-oriented programming language that uses
prototypes rather than using classes for inheritance.
It is a light-weighted and interpreted language.
It is a case-sensitive language.
JavaScript is supportable in several operating systems including,
Windows, macOS, etc.
It provides good control to the users over the web browsers.
Downloaded by ARYAVARDHAN
ABOUT OUR WEBSITE
This Simple Expense Tracker in JavaScript is a simple personal
account diary-like system. The whole programming is in HTML,
CSS, and JavaScript. This project will help the users to keep track of
their expenses and income properly. You can simply use any kind of
code editor for this project. This is a simple yet complete expense
manager web application.
Downloaded by ARYAVARDHAN
HTML CODE
<!DOCTYPE html>
<head>
<link rel="stylesheet" href="expense.css">
<script src="expense.js"></script>
<title>Expense Tracker</title>
</head>
<body>
<h2>Expense Tracker</h2>
<div class="container">
<h4>Your Balance</h4>
<h1 id="balance">₹0.00</h1>
<div class="inc-exp-container">
<div>
<h4>Income</h4>
<p id="money-plus" class="money plus">+₹0.00</p>
</div>
<div>
<h4>Expense</h4>
<p id="money-minus" class="money minus">-₹0.00</p>
</div>
</div>
<h3>History</h3>
<ul id="list" class="list">
</ul>
Downloaded by ARYAVARDHAN
CSS CODE
@import url('https://fonts.googleapis.com/css?family=Lato&display=swap');
:root {
--box-shadow: 0 1px 3px rgba(0, 0, 0, 0.12), 0 1px 2px rgba(0, 0, 0, 0.24);
}
*{
box-sizing: border-box;
}
body {
background-color: #f7f7f7;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
min-height: 100vh;
margin: 0;
font-family: 'Lato', sans-serif;
}
.container {
margin: 30px auto;
width: 350px;
}
h1 {
letter-spacing: 1px;
margin: 0;
}
h3 {
border-bottom: 1px solid #bbb;
padding-bottom: 10px;
margin: 40px 0 10px;
}
h4 {
margin: 0;
text-transform: uppercase;
}
10
Downloaded by ARYAVARDHAN
.inc-exp-container { .btn {
background-color: #fff; cursor: pointer;
box-shadow: var(--box-shadow); background-color: #9c88ff;
padding: 20px; box-shadow: var(--box-shadow);
display: flex; color: #fff;
justify-content: space-between; border: 0;
margin: 20px 0; display: block;
} font-size: 16px;
margin: 10px 0 30px;
.inc-exp-container > div { padding: 10px;
flex: 1; width: 100%;
text-align: center; }
}
.btn:focus,
.inc-exp-container > div:first-of-type { .delete-btn:focus {
border-right: 1px solid #dedede; outline: 0;
} }
.money { .list {
font-size: 20px; list-style: none;
letter-spacing: 1px; padding: 0;
margin: 5px 0; margin-bottom: 40px;
} }
.money.plus { .list li {
color: #2ecc71; background-color: #fff;
} box-shadow: var(--box-shadow);
color: #333;
.money.minus { display: flex;
color: #2ecc71; justify-content: space-between;
} position: relative;
padding: 10px;
label { margin: 10px 0;
display: inline-block; }
margin: 10px 0;
} .list li.plus {
border-right: 5px solid #2ecc71;
input[type='text'], }
input[type='number']
{ .list li.minus {
border: 1px solid #dedede; border-right: 5px solid #c0392b;
border-radius: 2px; }
display: block;
font-size:
16px; padding:
10px; width:
100%;
}
11
Downloaded by ARYAVARDHAN
.delete-btn {
cursor: pointer;
background-color: #e74c3c;
border: 0;
color: #fff;
font-size: 20px;
line-height: 20px;
padding: 2px 5px;
position: absolute;
top: 50%;
left: 0;
transform: translate(-100%, -50%);
opacity: 0;
transition: opacity 0.3s ease;
}
12
Downloaded by ARYAVARDHAN
JS CODE
const balance = document.getElementById('balance')
const money_plus = document.getElementById('money-plus')
const money_minus = document.getElementById('money-minus')
const list = document.getElementById('list')
const form = document.getElementById('form')
const text = document.getElementById('text')
const amount = document.getElementById('amount')
// Add transaction
function addTransaction(e)
{
e.preventDefault();
transactions.push(transaction);
addTransactionDOM(transaction);
updateValues()
updateLocalStorage()
text.value = ''
amount.value = ''
}
}
//generate random ID
function generateID()
{
return Math.floor(Math.random() * 100000000);
}
13
Downloaded by ARYAVARDHAN
//Add transactions to DOM list
function addTransactionDOM(transaction)
{
//get sign
const sign = transaction.amount < 0 ? '-' : '+';
item.innerHTML = `
${transaction.text} <span>${sign}${Math.abs(transaction.amount)}</span>
<button class="delete-btn" onclick="removeTransaction(${transaction.id})">x</button>
`;
list.appendChild(item);
}
const expense = (
amounts.filter(item => item < 0).reduce((acc, item) => (acc += item), 0) * -
1).toFixed(2);
balance.innerText = `₹${total}`;
money_plus.innerText = `₹${income}`;
money_minus.innerText = `₹${expense}`;
}
//Remove transaction by ID
function removeTransaction(id)
{
transactions = transactions.filter(transaction => transaction.id !== id);
updateLocalStorage();
init();
}
14
Downloaded by ARYAVARDHAN
//update local storage transactions
function updateLocalStorage()
{
localStorage.setItem('transactions', JSON.stringify(transactions));
}
//Init app
function init()
{
list.innerHTML = '';
transactions.forEach(addTransactionDOM);
updateValues()
}
init();
form.addEventListener('submit', addTransaction);
15
Downloaded by ARYAVARDHAN
SCREENSHOTS OF OUR WEBSITE
16
Downloaded by ARYAVARDHAN
17
Downloaded by ARYAVARDHAN
18
Downloaded by ARYAVARDHAN
19
Downloaded by ARYAVARDHAN
CONCLUSION
After making this application we assure that this application will help it’s users
to manage the cost of their daily expenditure. It will guide them and make them
aware about their daily expenses. It will prove to be helpful for the people who
are frustrated with their daily budget management, irritated because of the
amount of expenses and wish to manage money and to preserve the record of
their daily cost which may be useful to change their way of spending money. In
short, this application will help its users to overcome the wastage of money
20
Downloaded by ARYAVARDHAN
REFERNCES
https://code-projects.org
www.w3schools.com
www.geeksforgeeks.com
www.studocu.com
21
Downloaded by ARYAVARDHAN