Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/shuvoprogram/choltibank_be

CholtiBank is a cutting-edge digital banking platform, revolutionizing the financial landscape in Bangladesh. Built with React, Next.js, and Redux, it offers a seamless and secure banking experience, providing a wide range of services from account management to secure transactions.
https://github.com/shuvoprogram/choltibank_be

bcrypt cookie-parser cors dotenv eslint expressjs http-status husky jsonwebtoken prettier prisma socket-io ts-node-dev typescript winston zod

Last synced: about 12 hours ago
JSON representation

CholtiBank is a cutting-edge digital banking platform, revolutionizing the financial landscape in Bangladesh. Built with React, Next.js, and Redux, it offers a seamless and secure banking experience, providing a wide range of services from account management to secure transactions.

Awesome Lists containing this project

README

        

![Light Mode Logo](https://github.com/ShuvoProgram/CholtiBank/blob/main/public/choltiBank.png?raw=true#gh-light-mode-only)

![Dark Mode Logo](https://github.com/ShuvoProgram/CholtiBank/blob/main/public/choltiBank_dark_1.png?raw=true#gh-dark-mode-only)

# CholtiBank - Digital Banking Platform

CholtiBank is the first digital bank in Bangladesh, revolutionizing the banking experience by providing a range of online services that were traditionally confined to physical branches. This project aims to digitize and streamline various banking processes, offering customers the convenience of accessing financial services from the comfort of their homes.

## Screenshots

### Home Page

![Home Page](https://i.ibb.co/rt5rKVC/image.png)

## Tech Stack πŸ› 

| Tech | Docs | Description |
| ----------------------------------------------------------------------------------------------------------------------------- | -------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------- |
| | [ReactJS](https://reactjs.org/docs/getting-started.html) | A JavaScript library for building user interfaces |
| | [Next.js](https://nextjs.org/docs/getting-started) | A React framework for building server-rendered applications |
| | [Redux](https://redux.js.org/introduction/getting-started) | A state management library for JavaScript applications |
| | [Redux Toolkit](https://redux-toolkit.js.org/introduction/getting-started) | The official, opinionated, batteries-included toolset for efficient Redux development |
| | [React ApexCharts](https://apexcharts.com/docs/react-charts/) | A React wrapper for ApexCharts, a modern charting library |
| | [React Countup](https://www.npmjs.com/package/react-countup) | A lightweight React component wrapper around CountUp.js, a JavaScript library for smoothly transitioning numbers |
| | [React Hot Toast](https://react-hot-toast.com/) | A flexible and customizable toast notification library for React applications |
| | [React Icons](https://react-icons.github.io/react-icons/) | A collection of popular icons for React applications |
| | [React Fast Marquee](https://www.npmjs.com/package/react-fast-marquee) | A performant and customizable marquee component for React applications |
| | [Swiper](https://swiperjs.com/get-started) | A modern touch slider with hardware-accelerated transitions and native-like behavior |
| | [Tailwind CSS](https://tailwindcss.com/docs) | A utility-first CSS framework for rapidly building custom user interfaces |
| | [TypeScript](https://www.typescriptlang.org/docs/) | A typed superset of JavaScript that compiles to plain JavaScript |
| | [aos](https://github.com/michalsnik/aos) | A library to animate elements as you scroll down, with smooth and beautiful animations |
| | [axios](https://axios-http.com/docs/intro) | A promise-based HTTP client for the browser and Node.js |
| | [clsx](https://github.com/lukeed/clsx) | A tiny utility for constructing className strings conditionally |
| | [framer-motion](https://www.framer.com/docs/) | A production-ready motion library for React |
| | [friendly-challenge](https://friendlycaptcha.com/docs/intro) | A user-friendly captcha service for your web applications |
| | [jwt-decode](https://www.npmjs.com/package/jwt-decode) | A library to decode JWTs (JSON Web Tokens) |
| | [next-themes](https://github.com/pacocoursey/next-themes) | A library for managing themes in Next.js applications |

# Role_based

| Role | Credential
|-----------------------------------------|------------------------------------------------------|
| Admin | phoneNumber: 01790456214 password: ********
| User | phoneNumber: 017904562140 password: 123456

# Entity-Relationship-Diagram(ERD)

```
+-------------------+ +-------------------+
| User | 1 | PersonalInfo |
+-------------------+<-------->+-------------------+
| id | | id |
| firstName | | dateOfBirth |
| lastName | | profilePicture |
| nationalId | | gender |
| phoneNumber | | nationality |
| password | | otherPhoneNumber |
| pin | | passportId |
| role | | email |
| isEmployee | | fatherName |
| lastLogin | | motherName |
| passwordChangedAt | | currentAddress |
| pinChangeAt | | permanentAddress |
| accountStatus | | maritalStatus |
| createdAt | | occupation |
| updatedAt | | userId |
+-------------------+ +-------------------+
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
v v
+-------------------+ +-------------------+
| UserFinancialInfo | | DeviceInfo |
+-------------------+ +-------------------+
| id | | id |
| accountNumber | | devicesId |
| accountBalance | | devicesModel |
| totalDeposit | | devicesType |
| totalWithdraw | | devicesVendor |
| totalTransfer | | browserName |
| totalRecharge | | browserVersion |
| accountType | | engineName |
| currency | | engineVersion |
| interestRate | | osName |
| creditLimit | | osVersion |
| overdraftLimit | | cpuArchitecture |
| withdrawalLimit | | agentClient |
| investmentPortfolio | | updatedAt |
| creditScore | | userId |
| accountOpeningDate | +-------------------+
| lastUpdatedDate |
| updatedAt |
+-------------------+
|
|
|
|
|
|
|
|
|
v
+-------------------+
| Transaction |
+-------------------+
| id |
| transactionId |
| transactionType |
| reference |
| createdAt |
| userId |
| depositId |
| withdrawalId |
| transferId |
| mobileRechargeId |
+-------------------+
|
|
|
|
|
|
|
|
|
v
+-------------------+
| Transaction |
| Types |
+-------------------+
| Deposit |
| Withdrawal |
| Transfer |
| MobileRecharge |
+-------------------+

```

## Features

- πŸ”’ Highly Secure
- 🎨 Customizable Themes
- πŸ“± Fully Responsive
- ✨ Beautiful Animations
- πŸ’¬ Interactive Messages
- πŸ“’ Real-time Notifications
- πŸ”„ Dynamic Slides
- πŸ“ˆ Performance Optimized
- πŸš€ Fast Loading Times
- πŸ“± Responsive Images
- 🎨 Customizable Themes
- 🌐 SEO Friendly
- πŸ›‘οΈ CSRF Protection
- πŸ“œ Detailed Documentation
- πŸ”„ Version Control (Git)
- πŸ“¦ Easy Installation🚫
- 🚦 Error Handling

## Services/Major Functionalities

1. **Open Bank Account:**

- Types: Checking, Savings accounts, Money market, non-resident account.

2. **Deposit Money:**

- From any bank
- From Visa/Master Card
- ATM
- From Agent

3. **Withdraw Money:**

- From ATM
- From Agent/Cholti Agent Account

4. **Money Transfer:**

- Cholti to Cholti
- Cash by code
- BKash
- Nagad
- Prepaid Card
- Binimoy

5. **Mobile Recharge:**

- Grameenphone, Robi, Airtel, Banglalink, Teletalk

6. **Statements**

## Color Reference

| Color | Hex Code | Preview |
| --------- | -------- | -------------------------------------------------------------------------- |
| Primary | #ff9100 | ![Primary Color](https://via.placeholder.com/50x30/ff9100/ffffff?text=+) |
| Secondary | #04185C | ![Secondary Color](https://via.placeholder.com/50x30/04185C/ffffff?text=+) |

6. **Access the Live Application.**

Explore the live version of Choltibank [here](https://cholti-bank.vercel.app/).