Skip to content

smpdl/pluto

Repository files navigation

Pluto   Pluto Logo

Intelligent Financial Insights Platform
Modern, secure, and AI-powered personal finance management.

License


Overview

Pluto is a full-stack platform for personal finance management, combining secure banking data aggregation, AI-driven insights, and a modern dashboard UI. Designed for individuals and small teams seeking actionable financial intelligence, Pluto streamlines account tracking, transaction analysis, and personalized recommendations.

  • Key Value Proposition:
    Unified financial data and actionable insights
  • Target Audience:
    individuals who would like to effectivley manage their personal finance


Design

image image

Table of Contents

  1. Features
  2. Quick Start / Installation
  3. Usage
  4. Contributing
  5. Testing
  6. Deployment
  7. License
  8. Support / Contact
  9. Acknowledgments

Features

  • Secure Account Aggregation:
    Connect and manage multiple bank accounts with robust security.
  • AI-Powered Insights:
    Automated analysis of spending, income, and investment patterns.
  • Modern Dashboard UI:
    Responsive, intuitive interface built with React and Vite.
  • Customizable Reports:
    Generate and export financial summaries.
  • Extensible API:
    RESTful endpoints for integration and automation.
  • Privacy-First Design:
    Local data storage and user-controlled access.
  • Open Source:
    MIT-licensed and community-driven.

Quick Start / Installation

Prerequisites

  • Python 3.12+
  • Node.js 18+ & npm
  • SQLite (default, or configure your own DB)
  • macOS, Linux, or Windows

Installation Steps

# 1. Clone the repository
git clone https://github.com/smpdl/pluto.git
cd pluto

# 2. Set up Python backend
python3 -m venv .venv
source .venv/bin/activate
pip install -r requirements.txt

# 3. Set up frontend
npm install

# 4. Initialize the database
python app/db/init_db.py

# 5. Start backend server
uvicorn app.main:app --reload

# 6. Start frontend
npm run dev

Usage

Basic Example

# Query AI insights (Python backend)
from app.ai.insights import get_insights
insights = get_insights(user_id=123)
print(insights)
// Display dashboard (React frontend)
import Dashboard from './components/Dashboard';
export default function App() {
	return <Dashboard />;
}

API Endpoints

  • POST /api/auth/login — Authenticate user
  • GET /api/accounts — List accounts
  • GET /api/transactions — List transactions
  • POST /api/insights — Get AI-powered insights

See docs/API.md for full reference.

Configuration

  • Backend:
    Edit app/config.py for environment variables and DB settings.
  • Frontend:
    Update src/components/SettingsDashboard.tsx for UI preferences.

Contributing

We welcome contributions! Please read our CONTRIBUTING.md for guidelines.

  • Development Setup:
    Fork, clone, and set up .venv and npm install as above.
  • Coding Standards:
  • Pull Requests:
    • Create feature branches
    • Write tests for new features
    • Submit PRs with clear descriptions

Testing

  • Backend:
     pytest
  • Frontend:
     npm test
  • Coverage:
    Reports generated via pytest --cov and npm run coverage.

Deployment

  • Backend:
    Deploy with Docker, Gunicorn, or cloud platforms (see docs/deployment.md).
  • Frontend:
    Build with npm run build and serve via static hosting.
  • Environment Variables:
    Configure in .env files for secrets and DB URLs.


Team Members & Contributions

Name Contributions
Samip System design, core AI/agentic functionalities & implementation, backend support, troubleshooting critical issues
Manish Backend API development, database management, server logic, authentication, deployment, and some frontend integration
Krishtina Frontend development, UI/UX design and implementation, responsiveness, user flow, presentation slide deck, and demo

License

This project is licensed under the MIT License.
© 2025 Samip Paudel and contributors.


Support / Contact


Acknowledgments


About

pluto is an AI-powered app that helps you plan and manage your personal finance.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors