Skip to content
sovoprPublic

About

Helping Gen-Z track expenses

Resources

Stars

0 stars

Watchers

1 watching

Forks

Repository files navigation

Based on the file structure image you uploaded, I can see exactly what is going on. It looks like an AI-powered financial tracking app built with Streamlit that uses Machine Learning to classify transactions (Needs vs. Wants) and includes a gamified "FinPet" feature. Here is a professional, clean README.md file ready for you to copy and paste. How to use this:

  • Create a file named README.md in your finzen folder.
  • Paste the code block below into it.

FinZen 🧘‍♂️💸

FinZen is an AI-powered personal finance assistant built to help you achieve financial mindfulness. It combines Machine Learning for automated transaction classification with FinPet, a gamified virtual companion that reacts to your spending habits.

🚀 Features

  • AI-Powered Classification: Uses pre-trained Machine Learning models (type_classifier.pkl) to automatically distinguish between Needs (Essentials) and Wants (Discretionary).
  • Smart Categorization: Automatically assigns specific categories to your transactions using Natural Language Processing (NLP).
  • FinPet Companion: A virtual pet that grows and reacts based on your financial discipline. (Assets located in gifs/).
  • Interactive Dashboard: A clean, real-time interface built with Streamlit.
  • Privacy Focused: Runs locally on your machine.

🛠️ Tech Stack

  • Frontend: Streamlit
  • Language: Python 3.x
  • Machine Learning: Scikit-learn (for vectorization and classification models)
  • Data Handling: Pandas, NumPy

📂 Project Structure

finzen/
├── app1.py                   # Main Streamlit application entry point
├── requirements.txt          # Python dependencies list
├── gifs/                     # Assets for the FinPet gamification feature
├── vectorizer.pkl            # NLP Vectorizer for text processing
├── type_classifier.pkl       # ML Model: Classifies transactions as 'Needs' or 'Wants'
├── cat_classifier.pkl        # ML Model: Classifies transactions into specific categories
├── vectorizer_needs.pkl      # (Optional) Specialized vectorizer for needs
└── needs_cat_classifier.pkl  # (Optional) Specialized classifier for needs categories

⚙️ Installation

Windows

venv\Scripts\activate

Mac/Linux

source venv/bin/activate

  • Install dependencies: pip install -r requirements.txt

🏃‍♂️ Usage To start the application, run the Streamlit command in your terminal: streamlit run app1.py

The application will open in your default web browser (usually at http://localhost:8501). 🧠 How the AI Works FinZen utilizes serialized Python objects (.pkl files) to process your data:

  • Input: You enter a transaction description (e.g., "Grocery shopping at Walmart").
  • Vectorization: vectorizer.pkl converts this text into a format the machine understands.
  • Prediction: type_classifier.pkl predicts if it is a Need or a Want.
  • Feedback: The FinPet reacts (happy for savings/needs, concerned for excessive wants) using the assets in the gifs/ folder. 🤝 Contributing Contributions are welcome! If you have suggestions for better classification models or new FinPet features:
  • Fork the repository.
  • Create a feature branch (git checkout -b feature-name).
  • Commit your changes.
  • Push to the branch and open a Pull Request.

About

Helping Gen-Z track expenses

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages