gitmyhub

FinTech-Solution

TypeScript ★ 131 updated 24d ago

FinTech AI Solution for SMEs to calculate financial values

An AI-assisted financial dashboard for small businesses that tracks invoices, expenses, and cash flow, with AI limited to explaining pre-calculated numbers.

Next.jsTypeScriptPostgreSQLPrismaOpenAIClerksetup: hardcomplexity 4/5

This repository is a financial dashboard aimed at small and medium businesses, combining bookkeeping style tools with an AI assistant that explains what the numbers mean. It covers a real time dashboard of revenue, expenses, and profit, invoice creation and tracking, expense entry with CSV import, a full transaction ledger, and a tool that reads uploaded bank statement PDFs or CSV files and sorts the transactions into categories.

A key design choice stated clearly in the README is that the AI itself never does the financial math. All calculations, such as totals, profit figures, and cash flow forecasts, are worked out by the backend using database queries, and the AI's job is limited to explaining, summarizing, or answering questions about numbers that have already been calculated elsewhere. The AI assistant works by first figuring out what a user is asking, pulling the relevant real numbers from the database, and then generating a written answer, streamed back to the browser as it's produced. The same AI service also powers an insights feature that flags unusual patterns, risks, or opportunities in the data, and a straightforward three month cash flow forecast based on recent trends.

The app is built with Next.js and TypeScript on the frontend, styled with Tailwind CSS and ShadCN components, and backed by a PostgreSQL database accessed through Prisma. User accounts and login are handled by Clerk, which supports multi factor authentication and role based permissions such as Admin, Accountant, Employee, and Viewer. Security measures listed include input validation on every endpoint, protection against cross site request forgery, rate limiting per user, and a full audit log of actions taken.

To run it, someone needs Node.js 20 or newer, a PostgreSQL 16 database, an OpenAI API key, and a Clerk account, then clones the repository, installs dependencies, sets up environment variables, and runs the database migrations before starting the development server or using the included Docker setup. An optional Redis connection can share rate limits across multiple running copies of the app and cache dashboard numbers for two minutes.

Where it fits