Check out the live application here.
- 🤖 Introduction
- ⚙️ Tech Stack
- 🔋 Features
- 🤸 Quick Start
- 🕸️ Code Snippets to Copy
- 🔗 Assets
Horizon is a financial SaaS platform that connects to multiple bank accounts, displays real-time transactions, allows users to transfer money between accounts, and helps manage finances. The platform is built using Next.js, Appwrite, Plaid, Dwolla, and other cutting-edge technologies.
👉 Authentication: Secure SSR authentication with proper validation and authorization.
👉 Connect Banks: Integrates with Plaid to link multiple bank accounts.
👉 Home Page: Displays an overview of user account balances, recent transactions, and spending by category.
👉 My Banks: Shows a list of all connected banks with account balances and details.
👉 Transaction History: Includes pagination and filtering for easy viewing.
👉 Funds Transfer: Transfer funds securely between accounts using Dwolla.
👉 Real-time Updates: Automatically updates all relevant pages when bank accounts are linked.
👉 Responsiveness: Optimized for seamless use across desktop, tablet, and mobile devices.
To get started with the project locally, follow these steps:
Prerequisites:
Cloning the Repository:
git clone https://github.com/ZainULAbdeen0/Project_bank_application.git
cd Project_bank_application
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
Running the Project
npm run dev
Open http://localhost:3000 in your browser to view the project.
To build and deploy your application, use the following commands:
-
Build the application:
npm run build
-
Start the production server:
npm start
We welcome contributions! Please fork this repository, create a new branch, and submit a pull request. Don't forget to star the repository if you find it useful!
If you have any questions or feedback, feel free to reach out to us at [email protected].
Made with ❤️ by Zain Ul Abdeen