Darshit02 / Horizon

Horizon is a user-friendly web application that empowers you to effortlessly manage your finances. It seamlessly connects with your bank accounts, providing a centralized platform to view and categorize all your transactions.

Home Page:https://horizon-phi-flax.vercel.app

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

A Fintech Bank Application

βš™οΈ Tech Stack
  • Next.js
  • TypeScript
  • Appwrite
  • Plaid
  • Dwolla
  • React Hook Form
  • Zod
  • TailwindCSS
  • Chart.js
  • ShadCN

πŸ‘‰ 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.

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

(https://github.com/Darshit02/Horizon)
cd horizon

Installation

Install the project dependencies using npm:

npm install

or

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

or

bun run dev

Open http://localhost:3000 in your browser to view the project.

About

Horizon is a user-friendly web application that empowers you to effortlessly manage your finances. It seamlessly connects with your bank accounts, providing a centralized platform to view and categorize all your transactions.

https://horizon-phi-flax.vercel.app


Languages

Language:TypeScript 91.1%Language:CSS 7.3%Language:JavaScript 1.6%