/banka

Banking application

Primary LanguageJavaScript

Banka

Coverage Status Build Status

Banka is a simple web banking application that allows users to create bank accounts and have cashiers perform debit and credit transactions.

Built With

  • Nodejs
  • PostgreSQL

Features

  • Users can
    • Sign up
    • Sign in
    • Create bank account and view account details
    • View transaction and transaction history
  • Staff/Cashier can
    • View bank accounts
    • Perform debit and credit transactions on bank accounts
    • Delete bank accounts
  • Admin can
    • View bank accounts
    • Delete bank accounts
    • Create staff or admin

Getting Started

To run banka locally simply follow the instructions below:

Prerequisites

You need to have or install the following:

  1. Git bash
  2. Npm
  3. Postman

Installation

  • clone repo
    git clone https://github.com/Nerocodes/banka.git
    
  • navigate to api folder
  • run installation
    npm install
    
  • create a .env file with this template
    NODE_ENV=DEV
    DEVPG='Your postgres database url'
    TESTPG='Your postgres test database url'
    
  • start app
    npm run dev-start
    
  • you can now make requests using postman to localhost:9000/api/v1/

Running Tests

To run tests simply run the following command in your git bash or command line

npm run test

API

Heroku: Banka-Web-App Documentation: Banka-Docs

Endpoints Functionality
POST /auth/signup Create user account
POST /auth/signin Login a user
POST /accounts Create a bank account
PATCH /account/:account-number Activate or deactivate an account
DELETE /accounts/:account-number Delete a specific bank account
POST /transactions/:account-number/debit Debit a bank account
POST /transactions/:account-number/credit Credit a bank account

UI

You can view the user interface here Banka

Author

Oghenero Paul-Ejukorlem @nerocodes