AuraFi is a modern, comprehensive personal finance application designed to provide users with complete visibility and control over their financial health. By securely aggregating banking data, AuraFi empowers users to track net worth, monitor transactions, and manage budgets in real time.
- Financial Dashboard: A centralized overview of your total net worth, recent spending, and active accounts.
- Bank Synchronization: Secure integration with external financial institutions to pull real-time account balances and transaction history.
- Budget Management: Set and monitor monthly spending limits across various categories with visual progress tracking.
- Transaction Analytics: Categorized transaction histories and intelligent spending breakdowns.
- Multi-Currency Support: Native ability to view your finances in your preferred local currency with automatic conversion capabilities.
AuraFi is built using a modern, scalable, and type-safe architecture:
- Frontend framework: Next.js (App Router) with React
- Styling: Tailwind CSS
- Authentication: NextAuth.js
- Database: PostgreSQL
- ORM: Prisma
- Financial Data API: Plaid
AuraFi utilizes the Plaid API to securely sync financial data. For development and testing purposes, the application is configured to run entirely within the Plaid Sandbox environment.
The Plaid Sandbox provides simulated bank accounts and transactions, allowing developers to test the full lifecycle of linking accounts, fetching balances, and syncing transactions without connecting to actual financial institutions or using real credentials.
To use the sandbox environment locally:
- Obtain Sandbox credentials from the Plaid developer dashboard.
- Provide them in your environment variables.
- Use the Plaid Sandbox test credentials (e.g., username
user_good, passwordpass_good) when prompted by the Plaid Link interface.
To run AuraFi locally, ensure you have Node.js and PostgreSQL installed.
- Clone the repository.
- Install dependencies using
npm install. - Configure your
.envfile with your database connection string and Plaid Sandbox credentials. - Run the database migrations using
npx prisma db push. - Start the development server with
npm run dev.
The application will be available at http://localhost:3000.
This project is licensed under the MIT License.