Temperature Calculator

You might also like

Download as docx, pdf, or txt
Download as docx, pdf, or txt
You are on page 1of 15

TEMPERATURE CALCULATOR

SUBMITTED BY
Name : Gokul R
Registration number : 211001026

Name : Gopikrishnan A
Registration number : 211001027

Name : Logesh I
Registration number :211001053

FULL STACK DEVELOPMENT INTERNSHIP


5th January 2023 to 10nd January 2023
Industry Institute Interaction Cell
Rajalakshmi Engineering College, Thandalam
Bonafide Certificate

This is to certify that the Mini project work titled “Temperature


calculator” done by “211001026-Gokul.R,211001027-
Gopikrishnan.A,211001053-Logesh.I,”, is a record of bonafidework carried
out by him/her under my supervision as a part of full stack development
internship program organized by industry institute interaction cell in association
with department of information technology.

PRINCIPAL Head/IIIC

Date: 20-01-2023
INDEX

C.No. Chapter heading P.No.18

Abstract
List of Figures
List of Symbols
List of Abbreviations
1. Introduction
1.1 Problem Statement
1.2 Objective of the project
1.3 Organization of the report
2. System Design
2.1. System Architecture
2.2. UML Modeling
2.2.1.Use Case Diagram
2.3. System specification
2.4.1. Software requirements
2.4.2. Hardware requirements
2.4. Tools / Platforms

3. Implementation
3.1. Input Images
3.2. Coding
3.3. Output Images
4. Conclusion
Bibliography
1.1 Problem statement

Create a web application that allows users to convert temperatures between Celsius,
Fahrenheit, and Kelvin. The application should have a user-friendly interface that allows
users to input a temperature in one unit and select the unit they want to convert it to. The
application should then display the converted temperature. The user should also be able to
switch between the units easily. The application should be built using a full stack web
development approach, utilizing technologies such as HTML, CSS, JavaScript, and a web
framework such as Ruby on Rails or Node.js. The application should also be responsive,
working on both desktop and mobile devices.

1.2 Objectives

Here are some objectives that the project could aim to achieve:

Develop a user-friendly interface that allows users to easily input temperatures and select the
units they want to convert between.

Implement the logic to accurately convert temperatures between Celsius, Fahrenheit, and
Kelvin.

Use a full stack web development approach, utilizing technologies such as HTML, CSS,
JavaScript, and a web framework such as Ruby on Rails or Node.js.

Implement a feature that allows users to save and view their conversion history.

Test the application to ensure accurate temperature conversions and a smooth user
experience.

Continuously monitor and maintain the application to fix bugs and make improvements.
Optimize the performance of the application and improve the user experience.

Make the application accessible to all users, including those with disabilities.

1.3Organisation of the report

Here is a general organization for a report on a temperature calculator using ReactJS:

Introduction: This section should provide an overview of the project, including the
problem statement, objectives, and scope of the project.

Technical requirements: This section should detail the technical requirements for the
project, such as the technologies and frameworks used, programming languages, and any
other tools or libraries.

Design and development: This section should describe the design and development
process, including the user interface design, the logic for temperature conversions, and any
other features that were implemented. This section should also include screenshots and/or
wireframes of the user interface.

Testing and debugging: This section should describe the testing and debugging process,
including any challenges that were encountered and how they were resolved. This section
should also include any test cases that were used to verify the accuracy of the temperature
conversions.

Conclusion: This section should summarize the project and its outcomes, including any
lessons learned and suggestions for future improvements.

References: This section should include a list of any references or sources used during the
project.

2.1 System architecture


The system architecture for a temperature calculator in full stack web development could
include the following components:
Front-end: The front-end of the application is responsible for handling the user interface
and user interactions. It could be built using technologies such as HTML, CSS, and
JavaScript. The front-end communicates with the back-end through API calls.

Back-end: The back-end of the application is responsible for handling the logic of
temperature conversions, and communicates with the front-end through API calls. It could be
built using a web framework such as Ruby on Rails or Node.js.

Database: The application may require a database to store user data, such as conversion
history. It could be a relational database such as MySQL or a NoSQL database such as
MongoDB.

API: The application could use an API for communication between the front-end and back-
end. This could be implemented using REST or GraphQL.

Deployment: The application could be deployed on a web server, such as Heroku or AWS.

Security: The application should be secured by implementing security measures such as


encryption, authentication, and access control.

Monitoring: The application should be monitored for performance, errors and security
issues and should have log management.

Continuous integration and deployment: The application should have a continuous integration
and deployment process to test and deploy changes quickly and efficiently.

2.2 UML

UML diagrams that can be used for a temperature calculator in full stack web development,
such as:

Use Case Diagram: This diagram shows the different actors (e.g. users) and their
interactions with the system. It can be used to capture the high-level functionality of the
system and identify the main use cases.
Class Diagram: This diagram shows the classes and their relationships in the system. It
can be used to capture the structure of the system, including the attributes and methods of
each class.

Sequence Diagram: This diagram shows the interactions between the different objects in
the system. It can be used to capture the flow of messages between the objects and the order
in which they are processed.

State Machine Diagram: This diagram shows the different states of the system and the
events that trigger transitions between states. It can be used to capture the logic of
temperature conversions and how it behaves under different conditions.

2.2.1Use case diagram:


Actors:
User: The main actor who interacts with the system to convert temperatures.

Use cases:
Convert temperature: The user inputs a temperature and select the unit to convert it to,
the system returns the converted temperature.

Save conversion: The user can save the conversion history.


View conversion history: The user can view the previous conversions.

Convert temperature

Save conversion

View conversion history

user
An example of a simple use case diagram for a temperature calculator could be:

User ---> Convert temperature


User ---> Save conversion
User ---> View conversion history

This is a basic example, you can add more use cases to it as per the requirements of your
project.

2.3 System specification

Front End:

• The front end of the application should be developed using HTML, CSS, and
JavaScript.
• The user interface should be intuitive and user friendly. The user should have the
ability to enter a temperature from the user interface and have the option to select either
Celsius or Fahrenheit as the temperature unit.
• The user should have the ability to view the resulting temperature in either Celsius or
Fahrenheit.

Back End:

• The back end of the application should be developed using a server-side scripting
language such as PHP or Node.js.
• The back end should have a temperature conversion API that takes in the temperature
and the unit of measure as inputs and returns the corresponding temperature in the other unit
of measure.
• The API should also provide an error message
Database:
Database of System Specification for Temperature Conversion using Full Stack Development
Full stack development is an approach to web development that considers the entire stack of
web technologies needed to create a complete web application. This includes both the
frontend and backend technologies, such as server-side scripting, database management, user
authentication, and client-side scripting. Full stack development offers a comprehensive
solution for web application development, allowing developers to easily create complex web
applications from the ground up.

2.3.1 Software Requirement:

Software requirements are essential in full stack development, especially when creating a
temperature calculator. All aspects of the software must be considered when developing a
system that has the potential to impact people’s lives.

The user interface must be simple and intuitive. A user should be able to enter the
temperature, select their unit of measure (Celsius or Fahrenheit), and get the converted
temperature with the click of a button. The user should also be able to save the results for
future reference.

The software must also be able to store and manage user data, such as their preferred unit of
measure, the temperature entries and the results of the conversions. This data should be
securely stored and encrypted to protect user privacy.
The software must also be able to convert between Celsius and Fahrenheit accurately and
quickly. It should be able to handle a variety of temperature ranges and formats, such as
negative numbers and decimal points.

The software must also be able to handle different languages and countries. For example, if
the user is in the United States, they should be able to select “Fahrenheit” as the unit of
measure. If the user is in Europe, they should be able to select “Celsius” as the unit of
measure.

2.3.2 Hardware requirements


Hardware requirements for a temperature calculator using full stack development will depend
on the application’s usage. Typically, the hardware requirements will include a CPU, RAM,
Storage, Network, and Operating System.
The CPU is the main component of the system and should be chosen according to the
performance requirements of the application. For basic temperature calculator functions, a
mid-range processor is usually sufficient.

RAM is required for the application to store intermediate data and should be chosen based on
the size of the application and the amount of data that needs to be stored.

Storage is required for the application to store data. The amount of storage needed will
depend on the size and complexity of the application.

Network is required for the application to communicate with other applications and services,
such as databases and web servers. The type of network should be chosen based on the
application’s network requirements.

The Operating System is the platform on which the application will run. The operating
system should be chosen based on the application’s requirements and should be compatible
with the hardware components.

In addition to these hardware requirements, a temperature calculator using full stack


development will also require a web server, a database, and programming language
frameworks. The web server is responsible for handling the application’s requests and should
be chosen based on the application’s requirements. The database is used to store the
application’s data and should be chosen based on the type of data that needs to be stored.
Lastly, programming language frameworks are used to build the application and should be
chosen based on the application’s requirements.

2.4 Platform/tool:
There are many platforms and tools that can be used for a temperature calculator in full stack
web development, depending on your specific needs and preferences. Some popular options
include:

Ruby on Rails: A web framework for building web applications using the Ruby
programming language. Rails is known for its "convention over configuration" approach,
which allows developers to get up and running quickly.
Node.js: A JavaScript runtime that can be used to build web applications. Node.js is known
for its high performance and ability to handle a large number of concurrent connections.

Express.js: A minimal and flexible Node.js web application framework that provides a
robust set of features for web and mobile applications.

Meteor: An open-source full-stack platform for building web and mobile applications using
JavaScript. Meteor allows for rapid prototyping and development.

Django: A high-level Python web framework that enables rapid development and clean,
pragmatic design.

React.js: A JavaScript library for building user interfaces. React is known for its flexibility
and performance.

Angular.js: An open-source JavaScript framework for building web applications. Angular


is known for its two-way data binding, dependency injection, and modular architecture.

Vue.js: A JavaScript framework for building user interfaces. Vue is known for its reactivity
system and composable components.

Each of these platforms and tools has its own strengths and weaknesses, and the best option
will depend on the specific requirements of the project, the skills of the development team,
and the preferences of the developers.

2.4.1 Comparing the Best temperature convertor :


User experience: The application should have a user-friendly interface that is easy to
navigate and understand.

Accuracy: The temperature conversions should be accurate and consistent.


Performance: The application should have good performance, with fast load times and
minimal lag when making conversions.

Scalability: The application should be able to handle a large number of users and
conversions without any issues.

Security: The application should be secure, with proper encryption, authentication, and
access control in place.

Maintenance: The application should be easy to maintain, with regular updates and bug
fixes.

Integrations: The application should be able to integrate with other systems or services, if
necessary.

Accessibility: The application should be accessible to all users, including those with
disabilities.

3.IMPLEMENTATION:

3.1 INPUT IMAGES:


Figure 3.1.1.Website layout

CODING:

Figure3.2.1.Code indicating various packages


Figure 3.2.2.Code indicating the layout of the website

OUTPUT IMAGES:

Figure 3.3.1.Website displaying the details


Figure 3.3.2.The details of temperature calculator

4.CONCLUSION:
In conclusion, a temperature calculator in full stack web development is a relatively simple
application that can be used to convert temperatures between different units. The application
should have a user-friendly interface that allows users to input a temperature in one unit and
select the unit they want to convert it to. The application should then display the converted
temperature. The user should also be able to switch between the units easily. The
implementation of the project should be done using a full stack web development approach,
utilizing technologies such as HTML, CSS, JavaScript, and a web framework such as Ruby
on Rails or Node.js.

4.1 BIBILOGRAPHY:
To make this project I have been taken source from the following websites:
1. https://youtu.be/QoJGKwo20is
2. https://openai.com/blog/chatgpt/
I have taken source from internet too.

You might also like