Banka is a light-weight core banking application that powers banking operations like account creation, customer deposit and withdrawals.
UI Template for the application can be found here Github pages.
Pivotal Tracker Stories can found here Pivotal tracker.
Application was deployed to Heroku. Use public URL https://banka-timi.herokuapp.com with API endpoints.
API Documenttion was generated with swagger.
- Node.js A run time environment based off Chrome's v8 Engines for writing Javascript server-side applications.
- Express.js - Web application framework based on Node.js.
- ESLint - A pluggable and configurable linter tool for identifying and reporting on patterns in JavaScript.
- Airbnb style guide was followed.
- Postman is the only complete API development environment, and flexibly integrates with the software development cycle.
- Testing
- Swagger is an open-source software framework backed by a large ecosystem of tools that helps developers design, build, document, and consume RESTful Web services
- Pivotal Tracker is the agile project management tool of choice for developers around the world for real-time collaboration around a shared, prioritized backlog.
- Heroku is a platform as a service (PaaS) that enables developers to build, run, and operate applications entirely in the cloud.
- Travis CI is a hosted, distributed continuous integration service used to build and test software projects hosted at GitHub.
- Coveralls consolidates the results from a suite of static analysis tools into a single, real-time report, giving your team the information it needs to identify hotspots, evaluate new approaches, and improve code quality(from crunch base).
- You need to have Node and NPM installed on your computer.
- Installing Node automatically comes with npm.
- Clone this project to your local machine
https://github.com/timi-codes/Banka.git
- Installing the project dependencies
Run the command below
$ npm install
- Start your node server
run the command below
$ npm start
- Use
http://localhost:7778
as base url for endpoints
METHOD | DESCRIPTION | ENDPOINTS | REQUEST BODY |
---|---|---|---|
POST | Sign up for an account | /api/v1/auth/signup |
Request Body |
POST | Sign in to an account | /api/v1/auth/signin |
Request Body |
POST | Create a bank account | /api/v1/accounts |
Request Body |
GET | Staff's can Get all accounts | /api/v1/accounts |
Request Body |
GET | Get a specific account | /api/v1/accounts/:accountNumber |
|
PATCH | Activate or deactive an account | /api/v1/accounts/:accountNumber |
Request Body |
DELETE | Delete an account | /api/v1/accounts/:accountNumber |
|
POST | Perform a debit transaction | /api/v1/transactions/{accountNumber}/debit |
Request Body |
POST | Perform a credit transaction | /api/v1/transactions/{accountNumber}/credit |
Request Body |
- Run test for all endpoints
run the command below
$ npm test