{"id":26462961,"url":"https://github.com/sankalp20tiwari/spendsmart","last_synced_at":"2026-04-15T08:33:02.435Z","repository":{"id":274800556,"uuid":"924112443","full_name":"Sankalp20Tiwari/SpendSmart","owner":"Sankalp20Tiwari","description":"SpendSmart is a modern finance management web application designed to help users track their expenses, manage budgets, and gain insights into their financial health. Built with cutting-edge technologies.Main highlight of the project is receipt scanning using AI , bot protection and rate limiting using arcjet and using Inngest for cron jobs.","archived":false,"fork":false,"pushed_at":"2025-03-02T16:52:28.000Z","size":626,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-02T17:32:58.081Z","etag":null,"topics":["arcjet","clerk","inngest","nextjs"],"latest_commit_sha":null,"homepage":"https://spend-smart-navy.vercel.app","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Sankalp20Tiwari.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}},"created_at":"2025-01-29T12:46:55.000Z","updated_at":"2025-03-02T16:55:49.000Z","dependencies_parsed_at":"2025-02-12T14:47:08.852Z","dependency_job_id":"8cec162f-4e58-4e53-9c2e-036eb2b07a42","html_url":"https://github.com/Sankalp20Tiwari/SpendSmart","commit_stats":null,"previous_names":["sankalp20tiwari/finance_app","sankalp20tiwari/spendsmart"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sankalp20Tiwari%2FSpendSmart","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sankalp20Tiwari%2FSpendSmart/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sankalp20Tiwari%2FSpendSmart/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Sankalp20Tiwari%2FSpendSmart/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Sankalp20Tiwari","download_url":"https://codeload.github.com/Sankalp20Tiwari/SpendSmart/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244374586,"owners_count":20442665,"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","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":["arcjet","clerk","inngest","nextjs"],"created_at":"2025-03-19T06:38:54.229Z","updated_at":"2026-04-15T08:33:02.425Z","avatar_url":"https://github.com/Sankalp20Tiwari.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# SpendSmart\n\n## 📌 Project Overview\n\nSpendSmart is a modern finance management web application designed to help users track their expenses, manage budgets, and gain insights into their financial health. Built with cutting-edge technologies, SpendSmart offers a seamless user experience with real-time analytics, visualized reports, and AI-powered financial insights. Main highlight of the project is receipt scanning using AI , bot protection and rate limiting using arcjet and using Inngest for cron jobs.\n\n## 🖼️ Preview\n\n![SpendSmart Landing Page](public/landingPage.png)\n\n## 🚀 Features\n\n- **User Authentication** using Clerk\n- **Expense Tracking** with interactive charts and reports\n- **Budget Management** for better financial planning\n- **AI-powered financial insights** using Google Generative AI\n- **Modern UI/UX** with Tailwind CSS and Radix UI\n- **Dark Mode Support** with Next Themes\n- **Automated Email Notifications** using Resend\n- **Data Validation** using Zod\n- **Responsive Design** ensuring accessibility across devices\n- **Database Management** with Prisma ORM\n- **Bot Protection,Rate Limiting** using Arcjet\n- **Cron jobs** using Inngest\n\n## 🔗 Live Demo\n\nCheck out the live version of SpendSmart here: [Live Site](https://spend-smart-navy.vercel.app/)\n\n## 🛠 Installation \u0026 Setup\n\nTo set up and run the project locally, follow these steps:\n\n### Prerequisites\n\nEnsure you have the following installed:\n\n- **Node.js** (Latest LTS version recommended)\n- **npm** or **yarn** for package management\n- **A PostgreSQL database**\n- **Clerk account** for authentication\n- **Inngest account** for scheduling cron jobs\n- **Arcjet account** for bot protection and rate limiting\n\n### Steps to Run\n\n1. **Clone the repository:**\n   ```sh\n   git clone https://github.com/Sankalp20Tiwari/SpendSmart.git\n   ```\n\n2. **Navigate to the project directory:**\n   ```sh\n   cd SpendSmart\n   ```\n\n3. **Install dependencies:**\n   ```sh\n   npm install  # or yarn install\n   ```\n\n4. **Configure environment variables:**\n   Create a `.env` file in the root directory and define the necessary environment variables:\n   ```sh\n   DATABASE_URL=\u003cyour-database-connection-string\u003e\n   DIRECT_URL=\u003cyour-database-direct-url\u003e\n   NEXT_PUBLIC_CLERK_PUBLISHABLE_KEY=\u003cyour-clerk-public-key\u003e\n   CLERK_SECRET_KEY=\u003cyour-clerk-secret-key\u003e\n   RESEND_API_KEY=\u003cyour-resend-api-key\u003e\n   GEMINI_API_KEY=\u003cyour-google-generative-ai-key\u003e\n   NEXT_PUBLIC_CLERK_SIGN_IN_URL=\u003csign-in\u003e\n   NEXT_PUBLIC_CLERK_SIGN_UP_URL=\u003csign-up\u003e\n   ARCJET_KEY=\u003cyour-arcjet-api-key\u003e\n\n   ```\n\n5. **Run Prisma migrations:**\n   ```sh\n   npx prisma migrate dev\n   ```\n\n6. **Run the development server:**\n   ```sh\n   npm run dev  # or yarn dev\n   ```\n\n7. Open [http://localhost:3000](http://localhost:3000) in your browser to view the application.\n\n## 📂 Project Structure\n\n```\nSpendSmart/\n   ├──app/              # Next.js app directory\n   │   ├──(auth)/       # Authentication-related pages\n   │   ├──(main)/       # User dashboard pages\n   │   ├──(api)/        # API routes\n   │   ├──lib/          # Schemas\n   │   ├──layout.tsx    # Layout file\n   │   ├──page.tsx      # Landing Page\n   ├──components/       # UI components (Radix, Tailwind, etc.)\n   ├──data/             # Static data files\n   ├──emails/           # Email template\n   ├──hooks/            # Custom hooks\n   ├──lib/              # Utility functions\n   ├──models/           # Database models\n   ├──public/           # Static assets (images, icons, etc.)\n   ├──prisma/           # Prisma schema and migrations\n   ├──next.config.ts    # Next.js configuration\n   ├──package.json      # Project metadata and dependencies\n   ├──.env              # Environment variables (excluded from Git)\n```\n\n## 🏰 Technologies Used\n\n- **Next.js** - React framework for SSR \u0026 SSG\n- **React 19** - Latest React version for a fast UI\n- **Tailwind CSS** - Modern styling framework\n- **Radix UI** - Accessible UI components\n- **Clerk** - User authentication and management\n- **Prisma** - ORM for database management\n- **PostgreSQL** - Database for financial data\n- **Google Generative AI** - AI-powered financial insights\n- **Resend** - Email automation for notifications\n- **Zod** - Data validation for forms and API inputs\n- **Arcjet** - Bot protection and rate limiting\n- **Inngest** - Used for creating cron jobs\n\n## 🤝 Contributing\n\nWe welcome contributions to enhance the project! To contribute:\n\n1. Fork the repository.\n2. Create a new branch (`feature/your-feature-name`).\n3. Implement your changes and commit.\n4. Push to your forked repository and submit a pull request.\n\n\nMade with ❤️ by Sankalp Tiwari \n\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsankalp20tiwari%2Fspendsmart","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsankalp20tiwari%2Fspendsmart","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsankalp20tiwari%2Fspendsmart/lists"}