Welcome to the Woovi Bank Server project! This project is a replica of a day-to-day CRUD system for a bank, built using modern technologies such as NodeJS, KoaJS, MongoDB, and GraphQL. The goal of this project is to simulate a work routine at a startup, focusing on delivering what the customer needs by making the best decisions and writing clean, maintainable code.
- Feel free to test our API Live on its graphQL: playground
- Send a transaction: Allows one account to send a transaction to another account.
- Receive a transaction: Handles the receipt of transactions by an account.
- Calculate available balance: Calculates the available balance for an account.
- NodeJS
- KoaJS
- MongoDB
- GraphQL
The application manages two main collections:
- Users
- Accounts
- Transactions
Ensure you have the following installed on your machine:
- NodeJS (22.2.x)
- npm (10.7.x)
- Bun (1.1.x)
- MongoDB
-
Clone the repository
git clone https://github.com/jeseias/woovi-bank-server cd woovi-bank-server
-
To run the tests
bun run test
-
To start the server
bun dev