Finapp / README.md
smainye's picture
Update README.md
24f24d4 verified

A newer version of the Gradio SDK is available: 6.13.0

Upgrade
metadata
title: Personal Finance AI agent
emoji: 
colorFrom: indigo
colorTo: green
sdk: gradio
sdk_version: 5.33.0
app_file: app.py
pinned: false
license: mit
tag: agent-demo-track

Personal Financial Transaction AI Agent 🤖

A Python-based application for processing and analyzing financial transactions from PDF, CSV, or Excel files. It categorizes transactions, generates financial insights, and provides a user-friendly Gradio web interface. Designed to run locally or on Hugging Face Spaces, the project uses rule-based local processing, requiring no external API dependencies.


Features

  • File Support: Processes transactions from PDF (with table extraction), CSV, or Excel files.
  • Transaction Categorization: Automatically categorizes transactions (e.g., Salary Income, Groceries & Food) using robust rule-based logic.
  • Financial Insights: Generates summaries including total income, expenses, net balance, and actionable insights.
  • Currency Conversion: Supports USD, GBP, JPY, and KES with predefined exchange rates.
  • Gradio Interface: Intuitive web UI for uploading files, selecting currency, and downloading results as CSV or Excel.
  • Hugging Face Spaces: Optimized for deployment on Hugging Face Spaces with minimal setup.
  • Error Handling: Comprehensive logging and user-friendly error messages.

Prerequisites

  • Python: 3.8 or higher (3.9+ recommended).
  • Dependencies (in requirements.txt):

Installation

Local Setup

Clone the Repository:

git clone https://huggingface.co/spaces/smainye/Finapp.git
cd Finapp

Project Structure

financial-transaction-processor/
├── app.py              # Gradio web interface and main application logic
├── Dockerfile          # Defines the environment and instructions to build and run the Python app in a container
├── pdf_processor.py    # PDF transaction extraction
├── nebius_backend.py   # Transaction categorization and insights generation
├── requirements.txt    # Python dependencies
├── data/              # Optional: sample files
│   ├── sample.csv
│   ├── sample.pdf
|   ├── sample.xlsx