bankirru

Seamless, Secured, and Responsive financial SaaS platform that connects to multiple bank accounts, displays transactions in real-time, allows users to transfer money to other platform users, and manages their finances altogether.

MIT License

Stars
2
Committers
2

๐Ÿ“‹ Table of Contents

  1. ๐Ÿค– Introduction
  2. ๐Ÿ–ผ๏ธ Preview Page
  3. โš™๏ธ Tech Stack
  4. ๐Ÿ”‹ Features
  5. ๐Ÿคธ Quick Start
  6. ๐Ÿ“Œ Demo Account
  7. ๐Ÿš€ More

๐Ÿค– Introduction

Built with Next.js, Bankirru is a financial SaaS platform that connects to multiple bank accounts, displays transactions in real-time, allows users to transfer money to other platform users, and manages their finances altogether. By developing this project, i gained hands-on experience in crafting secure, seamless, and responsive SaaS bank platform using

If you're cloned this project and need assistance or face any bugs, please contacted me.

๐Ÿ–ผ๏ธ Preview Page

Homepage

Sign In

Sign Up

โš™๏ธ Tech Stack

  • Next.js
  • TypeScript
  • TailwindCSS
  • Appwrite
  • Sentry
  • Zod
  • Chart.js
  • ShadCN
  • React Hook Form
  • Plaid
  • Dwolla

๐Ÿ”‹ Features

๐Ÿ‘‰ Authentication: An ultra-secure SSR authentication with proper validations and authorization

๐Ÿ‘‰ Connect Banks: Integrates with Plaid for multiple bank account linking

๐Ÿ‘‰ Home Page: Shows general overview of user account with total balance from all connected banks, recent transactions, money spent on different categories, etc

๐Ÿ‘‰ My Banks: Check the complete list of all connected banks with respective balances, account details

๐Ÿ‘‰ Transaction History: Includes pagination and filtering options for viewing transaction history of different banks

๐Ÿ‘‰ Real-time Updates: Reflects changes across all relevant pages upon connecting new bank accounts.

๐Ÿ‘‰ Funds Transfer: Allows users to transfer funds using Dwolla to other accounts with required fields and recipient bank ID.

๐Ÿ‘‰ Responsiveness: Ensures the application adapts seamlessly to various screen sizes and devices, providing a consistent user experience across desktop, tablet, and mobile platforms.

and many more, including code architecture and reusability.

๐Ÿคธ Quick Start

Follow these steps to set up the project locally on your machine.

Prerequisites

Make sure you have the following installed on your machine:

Cloning the Repository

git clone [email protected]:deikairru/bankirru.git
cd bankirru

Installation

Install the project dependencies using npm:

npm install

Set Up Environment Variables

Create a new file named .env in the root of your project and add the following content:

#NEXT
NEXT_PUBLIC_SITE_URL=

#APPWRITE
NEXT_PUBLIC_APPWRITE_ENDPOINT=https://cloud.appwrite.io/v1
NEXT_PUBLIC_APPWRITE_PROJECT=
APPWRITE_DATABASE_ID=
APPWRITE_USER_COLLECTION_ID=
APPWRITE_BANK_COLLECTION_ID=
APPWRITE_TRANSACTION_COLLECTION_ID=
APPWRITE_SECRET=

#PLAID
PLAID_CLIENT_ID=
PLAID_SECRET=
PLAID_ENV=
PLAID_PRODUCTS=
PLAID_COUNTRY_CODES=

#DWOLLA
DWOLLA_KEY=
DWOLLA_SECRET=
DWOLLA_BASE_URL=https://api-sandbox.dwolla.com
DWOLLA_ENV=sandbox

Replace the placeholder values with your actual respective account credentials. You can obtain these credentials by signing up on the Appwrite, Plaid and Dwolla

๐Ÿ“Œ Demo Account

For the purpose of testing you can use this Demo Account

Login Account (Free Demo)

  • Username
[email protected]  
  • Password
demo1234  

Bank Account (use whenever you want to add new bank account/card)

  • Username
user_good 
  • Password
pass_good 

Creating New Account

When creating new account, make sure the city name are valid.

  • example: New York
NY

๐Ÿš€ More

Find more project

Enjoyed looking at this project? Dive deeper into my portfolio to seek more project like this.

Best Regards, Deikairru