Skip to content

PyDevDeep/Dominus_AI_Assistant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

15 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

💸 Dominus AI Assistant

Dominus is not just a financial tracker. It is your personal, toxic, and extremely accurate financial overseer in Telegram. Built with Python and powered by OpenAI, it extracts expense data from text, voice, and even photos of receipts—all while mocking your questionable spending habits.


🚀 Key Features

  • 🤖 Intelligent Parsing: Uses gpt-4o-mini to automatically extract amounts, categories, and descriptions from natural language.
  • 🎙 Multimodal Inputs:
    • Voice: Transcription via OpenAI Whisper. Just say: "I spent $20 on a burger," and it’s recorded.
    • Vision: Send a photo of a receipt or an item, and the bot identifies the cost and category instantly.
  • 📊 Visual Analytics: Generates spending charts using matplotlib to show you exactly where your money is disappearing.
  • 🌍 Timezone Awareness: Automatically detects your timezone based on your location (via LLM) to ensure daily stats are perfectly synced.
  • 💀 Toxic Feedback: No "nice" UI here. Every expense is met with a sharp, sarcastic comment about your financial choices.

🛠 Tech Stack

  • Framework: Aiogram 3.x (Asynchronous Telegram Bot API)
  • AI Engine: OpenAI API (GPT-4o-mini, Whisper, Vision)
  • Database: PostgreSQL (via asyncpg and Supabase)
  • Deployment: Docker & Docker Compose
  • Validation: Pydantic V2 & Pydantic Settings
  • Data Viz: Matplotlib

📂 Project Structure

./
├── src/
│   ├── core/          # Configuration (Pydantic) and Logging
│   ├── services/      # DB Logic, AI Services (OpenAI), and Charts
│   ├── main.py        # Bot entry point and handlers
│   └── api_test.py    # Utility script for API testing
├── logs/              # Application logs
├── Dockerfile         # Containerization
└── requirements.txt   # Project dependencies
## ⚙️ Installation & Setup

### 1. Clone the Repository
git clone https://github.com/PyDevDeep/Dominus_AI_Assistant.git
cd Dominus_AI_Assistant

### 2. Configure Environment Variables
Create a .env file in the root directory:
TELEGRAM_BOT_TOKEN=your_telegram_bot_token
OPENAI_API_KEY=your_openai_api_key
DATABASE_URL=postgres://user:password@host:port/dbname
LOG_LEVEL=INFO

### 3. Run with Docker (Recommended)
docker build -t dominus-bot .
docker run --env-file .env dominus-bot

---

## 📈 Roadmap
- [ ] Export reports to PDF/Excel.
- [ ] Group chat support for family budget tracking (double the toxicity!).
- [ ] Integration with Banking APIs (Monobank/Privat24).

---
*Developed with hatred for your debts and love for clean code.*

About

A toxic but accurate AI financial assistant for Telegram. Tracks expenses via text, voice, and images using GPT-4o-mini and Whisper.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors