/angular-calculator

A simple angular calculator for studies with unit tests, integration tests and some other stuffs.

Primary LanguageTypeScript

Angular Calculator

build-badge code-coverage-badge check-badge latest-tag-badge last-commit-badge

This project is a study application, so it may contain some errors. Will be a pleasure receive your code review, suggestions and/or tips. 🙌

This application is based in Angular with Typescript and RxJS. For unit test, the application use Karma and Jasmine and for E2E tests, application use Cypress. This readme presents to you the installation details, application startup guide, dependencies and more. This application use some patterns like Javascript Design Patterns, Semantic Commit Messages and Git flow.

If you want a live version click here. But if you want to run the application in your pc, follow the Installation and Start Application section and we recommend to you download the following versions/dependencies installed on your computer to start the application:

  • NodeJS => v.16.14.0
  • NPM => v8.3.1
  • Angular CLI => v13.3.11

Obs.: Angular CLI could be installed as global resource, but if you want to use angular from project. Do not install angular CLI global in node (npm i -g @angular/cli).

Installation

This project was generated with Angular CLI version 11.1.2 and actual version is 13.3.11

1 - Clone the project and install the dependencies:

$ git clone https://github.com/Eduk29/angular-calculator.git
$ cd angular-calculator
$ npm install

Start Application

After you clone the repository, to start the application open the root directory (the directory of package.json) in a command terminal and run the following instruction:

ng serve

When the build is over, open your favorite browser in http://localhost:4200 to view it.

Running unit tests

To run the unit tests of application run the following instruction:

npm run test

But if you want only the code coverage run the following instruction:

npm run test-coverage

Running E2E tests

To run the e2e tests of application run the following instruction:

npm run e2e

Running lint

To run the lint in application run the following instruction:

npm run lint

Dependecies

  • Angular Framework
  • Angular Material
  • Bootstrap
  • Cypress
  • Cucumber
  • ESLint
  • Jasmine
  • Husky
  • Karma
  • Prettier
  • RxJS
  • Typescript

Deploy Plataform and CI/CD

Application Roadmap

  • Use ESLint and Prettier as Linter ✔️
  • E2E tests with Cypress ✔️
  • Upgrade E2E tests with Cucumber ✔️
  • Use Husky to inspect commits and improvements ✔️
  • Implement a percentage calculator
  • Implement a square root calculator
  • Add release-please to project

Developer 💻

José Eduardo Trindade E Marques
LinkedIn
edu.temarques@gmail.com