{"id":30600623,"url":"https://github.com/bernietv/financial-saas-platform","last_synced_at":"2026-04-12T13:37:11.944Z","repository":{"id":310044602,"uuid":"1038489855","full_name":"BernieTv/Financial-SAAS-Platform","owner":"BernieTv","description":"Next-gen AI finance app rocking the MERN stack \u0026 TypeScript — slick analytics, set-and-forget automation, and a UX that just hits different 💸⚡📈🔥","archived":false,"fork":false,"pushed_at":"2025-08-15T11:06:00.000Z","size":1794,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-08-15T12:07:40.226Z","etag":null,"topics":["cloudinary","expressjs","gemini-ai","mongodb","nodejs","reactjs","redux-toolkit","resend","shadcn-ui","tailwindcss","tanstack-table","typescript"],"latest_commit_sha":null,"homepage":"https://finance-saas-platform-gray.vercel.app","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BernieTv.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2025-08-15T09:45:25.000Z","updated_at":"2025-08-15T11:06:04.000Z","dependencies_parsed_at":"2025-08-15T12:19:44.430Z","dependency_job_id":null,"html_url":"https://github.com/BernieTv/Financial-SAAS-Platform","commit_stats":null,"previous_names":["bernietv/finance-saas-platform"],"tags_count":null,"template":false,"template_full_name":null,"purl":"pkg:github/BernieTv/Financial-SAAS-Platform","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BernieTv%2FFinancial-SAAS-Platform","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BernieTv%2FFinancial-SAAS-Platform/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BernieTv%2FFinancial-SAAS-Platform/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BernieTv%2FFinancial-SAAS-Platform/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BernieTv","download_url":"https://codeload.github.com/BernieTv/Financial-SAAS-Platform/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BernieTv%2FFinancial-SAAS-Platform/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272783338,"owners_count":24992352,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-29T02:00:10.610Z","response_time":87,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cloudinary","expressjs","gemini-ai","mongodb","nodejs","reactjs","redux-toolkit","resend","shadcn-ui","tailwindcss","tanstack-table","typescript"],"created_at":"2025-08-29T23:39:19.849Z","updated_at":"2026-04-12T13:37:06.922Z","avatar_url":"https://github.com/BernieTv.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cimg src=\"https://res.cloudinary.com/bekzod-tiny-house/image/upload/v1755250616/Screenshot_from_2025-08-15_14-10-56_j5lo5f.png\" alt=\"Project Banner\" /\u003e\n\n# 🌟 Financial SaaS Platform 💹\n\n\u003e 💸 A professional, AI-powered financial management system built with the MERN stack and TypeScript, designed to deliver robust analytics, automation, and a premium user experience. 🚀✨📊\n\n---\n\n## 📖 Project Description 📝\n\nFinancial SaaS Platform is a modern, cloud-based personal and business finance management application. It empowers users to track 💳 transactions, analyze 📈 spending patterns, automate 🔁 recurring payments, and receive 🤖 AI-assisted insights. The platform combines advanced backend data processing with a sleek, responsive frontend, delivering a seamless experience for individuals and organizations alike. With features like AI-powered receipt scanning 🧾, monthly automated reports 📅, and rich data visualizations 📊, it helps users make informed financial decisions with minimal effort.\n\n---\n\n## 🚀 Core Features 🌐\n\n- 🔒 **Authentication \u0026 Security:** Email + Password login, JWT-based authentication with refresh tokens.\n- 💳 **Transaction Management:** Create, edit, duplicate, bulk delete transactions with ease.\n- 🤖 **AI-Driven Receipt Scanning:** Integrates Google AI to automatically extract transaction data from receipts.\n- 📊 **Advanced Analytics:** MongoDB Aggregation Pipelines for real-time, data-rich dashboards.\n- 📈 **Data Visualization:** Expense breakdown pie charts, income/expense trend lines, and interactive tables.\n- 📅 **Date Range Filtering:** Customizable ranges, including presets such as last 30 days.\n- 🔁 **Recurring Transactions:** Automated scheduling via cron jobs.\n- 📧 **Automated Monthly Reports:** Generated and sent to users via email.\n- 📥 **Data Import \u0026 Export:** CSV transaction import with column mapping.\n- 👤 **Profile Management:** Cloudinary-powered profile photo uploads.\n\n---\n\n## 📂 Project Structure 📁\n\n```\nfinancial-saas/\n├── backend/                                  # API server built with Node.js, Express, and MongoDB\n│   ├── src/\n│   │   ├── config/                           # Environment, database, and third-party configurations\n│   │   ├── controllers/                      # Request handling and response logic\n│   │   ├── cron/                             # Scheduled jobs and task scheduling\n│   │   ├── enums/                            # Application-wide constants and enumerations\n│   │   ├── mailers/                          # Email sending logic and templates\n│   │   ├── middlewares/                      # Request validation, error handling, authentication\n│   │   ├── models/                           # Mongoose schemas for data persistence\n│   │   ├── routes/                           # API endpoint definitions\n│   │   ├── services/                         # Business logic and reusable modules\n│   │   ├── utils/                            # Utility functions (date helpers, currency formatters, etc.)\n│   │   └── validators/                       # Data validation schemas\n│   ├── package.json\n│   └── tsconfig.json\n│\n├── client/                                   # Web application built with React, TypeScript, and TailwindCSS\n│   ├── src/\n│   │   ├── app/                              # Global state management and API client configuration\n│   │   ├── assets/                           # Images, icons, and static media\n│   │   ├── components/                       # Reusable UI components and widgets\n│   │   ├── features/                         # Redux slices and feature-specific logic\n│   │   ├── hooks/                            # Custom React hooks\n│   │   ├── layouts/                          # Page layouts for consistent UI structure\n│   │   ├── pages/                            # Page-level components\n│   │   ├── routes/                           # Route configuration and protected routes\n│   ├── public/                               # Publicly accessible static files\n│   ├── package.json\n│   └── vite.config.ts\n```\n\n---\n\n## 🔧 Backend Environment Variables ⚙️\n\n```env\nPORT=\"*\"\nNODE_ENV=\"*\"\n\nMONGO_URI=\"*\"\n\nJWT_SECRET=\"*\"\nJWT_EXPIRES_IN=\"*\"\n\nJWT_REFRESH_SECRET=\"*\"\nJWT_REFRESH_EXPIRES_IN=\"*\"\n\nGEMINI_API_KEY=\"*\"\n\nCLOUDINARY_CLOUD_NAME=\"*\"\nCLOUDINARY_API_KEY=\"*\"\nCLOUDINARY_API_SECRET=\"*\"\n\nRESEND_API_KEY=\"*\"\nRESEND_MAILER_SENDER=\"*\"\n\nFRONTEND_ORIGIN=\"*\"\n```\n\n## 🎨 Frontend Environment Variables 🎯\n\n```env\nVITE_API_URL=\"*\"\nVITE_REDUX_PERSIST_SECRET_KEY=\"*\"\n```\n\n---\n\n## 🛠️ Technology Stack 🧩\n\n**Frontend:**\n\n- ⚛️ React 18 for building a performant, component-driven UI.\n- 📝 TypeScript for type-safe, maintainable codebases.\n- 🎨 TailwindCSS for utility-first, responsive styling.\n- 🖌️ Shadcn UI for accessible, production-ready UI components.\n- 📦 Redux Toolkit for state management and API data caching.\n- 📊 @tanstack/react-table for advanced, customizable, and performant data tables.\n\n**Backend:**\n\n- 🟩 Node.js (v18+) for scalable, event-driven server logic.\n- 🛠️ Express.js for structured and maintainable RESTful APIs.\n- 📝 TypeScript for backend code consistency and safety.\n- 🍃 MongoDB with Mongoose for flexible, schema-based data persistence.\n- 🔐 JSON Web Tokens (JWT) for secure authentication.\n- ⏲️ Node-cron for task automation.\n\n**AI \u0026 Cloud Integrations:**\n\n- 🤖 Google Gemini API for intelligent document parsing and data extraction.\n- ☁️ Cloudinary for optimized media storage and delivery.\n- 📧 Resend for transactional and automated email services.\n\n---\n\n## 📦 Installation 📥\n\n```bash\ngit clone https://github.com/BernieTv/Financial-SAAS-Platform.git\ncd Financial-SAAS-Platform\n\n# Install backend dependencies\ncd backend \u0026\u0026 npm install\n\n# Install frontend dependencies\ncd ../client \u0026\u0026 npm install\n```\n\n---\n\n## ▶️ Running Locally 💻\n\n```bash\n# Start backend\ncd backend \u0026\u0026 npm run dev\n\n# Start frontend\ncd ../client \u0026\u0026 npm run dev\n```\n\n\u003e ⚠️ Ensure `.env` files are correctly configured before running.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbernietv%2Ffinancial-saas-platform","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbernietv%2Ffinancial-saas-platform","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbernietv%2Ffinancial-saas-platform/lists"}