Skip to content

A simple full-stack server-side rendered web application built on HTML, CSS (with Boostrap), vanilla Javascript (client-side), NodeJS and Express to convert metric units to imperial and vice versa for freeCodeCamps' Quality Assurance certification.

License

Notifications You must be signed in to change notification settings

mrarvind90/fcc-metric-imperial-converter

Repository files navigation

freeCodeCamp Social Banner

HTML5 CSS3 Bootstrap Javascript NodeJS NPM ExpressJS Mocha Chai ESLint Prettier

Simple Unit Converter

A full-stack unit converter web application that allows users to convert units between different measurement systems. This application is designed to convert gallons (gal), miles (mi), and pounds (lbs) to liters (L), kilometers (km), and kilograms (kg), and vice versa.

Technologies Used

  • Client Side:

    • HTML: Provides the structure of the web pages.
    • CSS with Bootstrap: Adds styling and responsive design to the user interface.
    • Vanilla JavaScript: Implements the client-side functionality for unit conversion.
  • Server Side:

    • Node.js: Provides the runtime environment for the server.
    • Express.js: A web application framework for handling routes and requests on the server.
  • Testing:

    • Mocha: A testing framework for writing unit tests.
    • Chai: An assertion library used in conjunction with Mocha for making test assertions.

Features

  • Conversion between different units:
    • Gallons (gal) to Liters (L)
    • Miles (mi) to Kilometers (km)
    • Pounds (lbs) to Kilograms (kg)
    • And vice versa

Running the application

To run the express application, do follow the following steps

  1. Clone the repo:
    git clone git@github.com:mrarvind90/fcc-metric-imperial-converter.git
    
  2. Navigate to the repository:
    cd <repository_directory>
    Change <repository_directory> to the name of the cloned directory.
  3. Install Dependencies:
    npm install
    This command will install all the necessary dependencies for the application.
  4. Configure Environment Variables: Rename the .env.sample file in your project directory to .env and update it with the relevant credentials:
     cp .env.example .env
  5. Choose Your Run Mode:
    • Development Mode (with automatic code reload):
      To run the application in watch mode, enabling seamless source code changes without manual server restarts, use the following command:
     npm run dev
    • Standard Server Mode:
      If you prefer to simply run the server without automatic code reloading, you can use the following command:
     npm run start
  6. Running the tests
    • You can run unit tests for the application using Mocha and Chai. To run the tests, use the following command:
    npm run test

Future Improvements

While developing this project, there are several areas I plan to focus on for enhancements and refinements which can be found on GitHub.

About

A simple full-stack server-side rendered web application built on HTML, CSS (with Boostrap), vanilla Javascript (client-side), NodeJS and Express to convert metric units to imperial and vice versa for freeCodeCamps' Quality Assurance certification.

Topics

Resources

License

Stars

Watchers

Forks