A full-stack translator web app for converting American English to British English. This application handles translations for time formats, titles, spellings, and unique words within each dialect.
-
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.
- Conversion between British English to American English and vice versa
- Normalization of titles, spellings, and time units
- Translation of specific locale-specific words to their corresponding dialect
To run the express application, do follow the following steps
- Clone the repo:
git clone git@github.com:mrarvind90/fcc-american-british-translator.git
- Navigate to the repository:
Change <repository_directory> to the name of the cloned directory.
cd <repository_directory>
- Install Dependencies:
This command will install all the necessary dependencies for the application.
npm install
- 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
- 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
- Development Mode (with automatic code reload):
- 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
While developing this project, there are several areas I plan to focus on for enhancements and refinements which can be found on GitHub.