Skip to content

Smart Transaction & Receipt Tracker - An AI-powered app that integrates with Google Wallet to automatically track transactions, scan receipts, and provide intelligent spending insights through chat-based search.

Notifications You must be signed in to change notification settings

gomarble-ai/ireceipts

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

8 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

Smart Transaction & Receipt Tracker

A modern, AI-powered web application for tracking transactions, managing receipts, and gaining insights into spending patterns. Built with Next.js 15, TypeScript, and integrated with Google Wallet and Gemini AI.

🌟 Features

πŸ“± Complete User Experience

  • Welcome Screen with feature highlights carousel
  • Multi-login Options (Gmail, Phone, Skip option)
  • Google Wallet Integration for seamless transaction sync
  • Profile Setup with preferences and data sync options

🏠 Smart Dashboard

  • Real-time Transaction Overview with insights
  • Quick Actions for common tasks
  • Spending Analytics with visual charts
  • Receipt Management with view, download, and share options

πŸ” Advanced Features

  • AI-Powered Chat with Gemini integration for natural language queries
  • Receipt Scanning with camera interface and OCR processing
  • Advanced Transaction Filtering with search and bulk actions
  • Smart Insights with spending recommendations and trend analysis

πŸ› οΈ Management Tools

  • Profile Management with security settings
  • Notifications Center with customizable alerts
  • Help Center with AI support and comprehensive FAQ
  • Data Export and backup options

πŸš€ Live Demo

🌐 View Live App

πŸ› οΈ Tech Stack

Frontend

  • Next.js 15.3.5 - React framework with App Router
  • TypeScript - Type-safe JavaScript
  • Tailwind CSS - Utility-first CSS framework
  • Lucide React - Beautiful icons library

State Management

  • React Context API - Global state management
  • React Hooks - Local state and effects

Integrations

  • Google Wallet API - Transaction synchronization
  • Gemini AI - Intelligent chat and insights
  • Camera API - Receipt scanning functionality

Deployment

  • Vercel - Production deployment platform
  • Git - Version control

πŸ“¦ Installation

  1. Clone the repository

    git clone <repository-url>
    cd ireceipts
  2. Install dependencies

    npm install
    # or
    yarn install
  3. Set up environment variables

    cp .env.example .env.local

    Configure the following variables:

    • GOOGLE_WALLET_API_KEY - Google Wallet integration
    • GEMINI_API_KEY - Gemini AI chat functionality
    • NEXT_PUBLIC_APP_URL - Application URL
  4. Run the development server

    npm run dev
    # or
    yarn dev
  5. Open your browser Navigate to http://localhost:3000

🎯 Usage

Getting Started

  1. Launch the app and view the welcome screen
  2. Choose your login method (Gmail, Phone, or Skip)
  3. Connect your Google Wallet (optional)
  4. Set up your profile and preferences
  5. Start tracking transactions!

Core Workflows

πŸ“Š Dashboard Navigation

  • View recent transactions and spending insights
  • Access quick actions for common tasks
  • Monitor spending patterns and trends

πŸ” Transaction Management

  • Add Transactions: Use the scan/upload feature
  • View Receipts: Click the eye icon on any transaction
  • Filter & Search: Use advanced filters in the transactions view
  • Bulk Actions: Select multiple transactions for batch operations

πŸ’¬ AI Chat Queries

  • Ask natural language questions about your spending
  • Get insights and recommendations
  • Query specific transactions or categories

🎯 Insights & Analytics

  • View spending breakdowns by category
  • Analyze trends over different time periods
  • Get personalized recommendations
  • Track financial goals and progress

Architecture

mermaid-flow-1x

πŸ“ Project Structure

ireceipts/
β”œβ”€β”€ app/
β”‚   β”œβ”€β”€ components/           # React components
β”‚   β”‚   β”œβ”€β”€ WelcomeScreen.tsx
β”‚   β”‚   β”œβ”€β”€ LoginOptions.tsx
β”‚   β”‚   β”œβ”€β”€ GoogleWalletIntegration.tsx
β”‚   β”‚   β”œβ”€β”€ InitialSetup.tsx
β”‚   β”‚   β”œβ”€β”€ HomeDashboard.tsx
β”‚   β”‚   β”œβ”€β”€ ScanUpload.tsx
β”‚   β”‚   β”œβ”€β”€ ChatQuery.tsx
β”‚   β”‚   β”œβ”€β”€ InsightsDashboard.tsx
β”‚   β”‚   β”œβ”€β”€ ProfileManagement.tsx
β”‚   β”‚   β”œβ”€β”€ TransactionsAdvanced.tsx
β”‚   β”‚   β”œβ”€β”€ NotificationsCenter.tsx
β”‚   β”‚   └── HelpCenter.tsx
β”‚   β”œβ”€β”€ contexts/             # React contexts
β”‚   β”‚   └── AppContext.tsx
β”‚   β”œβ”€β”€ globals.css          # Global styles
β”‚   β”œβ”€β”€ layout.tsx           # Root layout
β”‚   └── page.tsx             # Main page component
β”œβ”€β”€ public/                  # Static assets
β”œβ”€β”€ next.config.ts          # Next.js configuration
β”œβ”€β”€ tailwind.config.ts      # Tailwind CSS configuration
β”œβ”€β”€ tsconfig.json           # TypeScript configuration
└── package.json            # Dependencies and scripts

πŸ”§ Key Components

🏠 HomeDashboard

  • Central hub with transaction overview
  • Quick actions and navigation
  • Real-time insights and alerts

πŸ“Š InsightsDashboard

  • Advanced analytics and visualizations
  • Spending trends and category breakdowns
  • AI-powered recommendations

πŸ’¬ ChatQuery

  • Natural language transaction queries
  • Gemini AI integration
  • Context-aware responses

πŸ” TransactionsAdvanced

  • Comprehensive transaction management
  • Advanced filtering and search
  • Bulk operations and export

🎨 Design Features

🎨 User Interface

  • Modern Design with clean, intuitive layouts
  • Responsive - Works on desktop and mobile
  • Dark Mode Support - User preference based
  • Accessibility - ARIA labels and keyboard navigation

🎯 User Experience

  • Progressive Enhancement - Works without JavaScript
  • Loading States - Smooth transitions and feedback
  • Error Handling - Graceful error messages
  • Offline Support - Core functionality works offline

πŸ”— API Integration

Google Wallet

  • Automatic transaction synchronization
  • Secure authentication flow
  • Real-time balance updates

Gemini AI

  • Natural language processing
  • Contextual transaction insights
  • Personalized recommendations

πŸš€ Deployment

Production Build

npm run build
npm start

Vercel Deployment

vercel --prod

Environment Variables

Make sure to set up the following in your deployment environment:

  • GOOGLE_WALLET_API_KEY
  • GEMINI_API_KEY
  • NEXT_PUBLIC_APP_URL

🀝 Contributing

  1. Fork the repository
  2. Create your feature branch (git checkout -b feature/amazing-feature)
  3. Commit your changes (git commit -m 'Add some amazing feature')
  4. Push to the branch (git push origin feature/amazing-feature)
  5. Open a Pull Request

πŸ“ Development Guidelines

Code Style

  • Follow TypeScript best practices
  • Use ESLint and Prettier for code formatting
  • Write meaningful commit messages
  • Add comments for complex logic

Testing

  • Write unit tests for utility functions
  • Test React components with React Testing Library
  • Ensure mobile responsiveness

Performance

  • Optimize images and assets
  • Use React.memo for expensive components
  • Implement proper loading states

πŸ› Known Issues

  • Google Wallet integration requires API key configuration
  • Gemini AI features need proper authentication setup
  • Camera scanning works best in good lighting conditions

πŸ“š Learn More

πŸ“„ License

This project is licensed under the MIT License - see the LICENSE file for details.

πŸ™ Acknowledgments

  • Next.js team for the amazing framework
  • Vercel for seamless deployment
  • Google for Wallet API and Gemini AI
  • Lucide for beautiful icons
  • Tailwind CSS for utility-first styling

Built with ❀️ using Next.js 15 and TypeScript

About

Smart Transaction & Receipt Tracker - An AI-powered app that integrates with Google Wallet to automatically track transactions, scan receipts, and provide intelligent spending insights through chat-based search.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages