/bank

Full Stack Web Application using ReactJS (with Hooks) + Redux + Redux-Saga with NodeJS (Express+TypeORM), RESTful API, MySQL and Swagger

Primary LanguageJavaScriptMIT LicenseMIT

Live Preview | Swagger Documentation | Contact the developer

Full Stack Web Application using ReactJS+Redux with NodeJS (Express+TypeORM), RESTful API, MySQL and Swagger Documentation

  • An application created according to the best practices used in react-boilerplate
  • Relational model use of the MySQL database via TypeORM
  • Support for many currencies with the current rate charged by the REST API
  • Instant language change for English, Polish and German by using react-intl
  • Unit & Component Testing using Jest, Mocha, Chai and react-testing-library

Frontend

Technology stack:

  1. JavaScript (ES6+)
  2. ReactJS with React-Router
  3. Redux.js with Redux-Saga
  4. Material UI framework
  5. styled-components
  6. Unit & Component Testing using Jest and react-testing-library

Backend

Technology stack:

  1. TypeScript
  2. NodeJS with Express.js framework
  3. TypeORM
  4. MySQL database
  5. RESTful API with Basic & JWT Authentication
  6. Swagger Documentation
  7. Unit Testing using Mocha and Chai

Requirements

  • yarn v1.17+
  • NodeJS v8+
  • MySQL v5.6+

Installation

for Frontend:

  1. Clone this repository and enter the frontend directory
  2. Change BASE_URL in /app/utils/api.js to your localhost server
  3. Install the dependencies by running yarn
  4. Start the project by running yarn start

for Backend:

  1. Clone this repository and enter the backend directory
  2. Create 2 MySQL databases. (One for testing & other as main database)
  3. Copy the env.example and create a new .env file from it.
  4. Set the configuration parameters there (App port, app host, database host, port, username, password etc)
  5. Install the dependencies by running yarn
  6. Start the project by running yarn start

License

This project is licensed under the MIT license. Copyright (c) 2019 Adrian Pietrzak.