Skip to content

Latest commit

Β 

History

134 Commits

Folders and files

NameName
Last commit message
Last commit date
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

PennywAIse

Python 3.8+ Django Tailwind CSS Chart.js License: MIT GitHub Live Demo

PennywAIse Logo

🌟 Live Demo

Try PennywAIse today! Access our live demo at: https://pennywaise.onrender.com/

πŸ” Overview

PennywAIse is a sophisticated Django-powered budgeting dashboard designed to transform how you manage your finances. Combining a sleek Tailwind CSS interface, interactive Chart.js visualizations, and cutting-edge AI-driven insights, PennywAIse makes financial management both intuitive and empowering.

Gain control of your financial future with intelligent spending analysis, personalized coaching, and visual breakdowns of your financial habitsβ€”all in one secure, user-friendly platform.

✨ Key Features

πŸ€– AI-Powered Financial Coaching

  • Intelligent Analysis: Receive personalized recommendations based on your actual spending patterns
  • Subscription Optimization: Identify redundant or underused subscription services
  • Spending Insights: Discover trends and opportunities for savings through AI pattern recognition

πŸ” Enterprise-Grade Security

  • Secure Authentication System: Registration, login, and session management with industry-standard security
  • Protected Routes: Comprehensive access control ensures data privacy
  • Encrypted Data: All sensitive information is properly encrypted and securely stored

πŸ’° Comprehensive Financial Management

  • Transaction Tracking: Record, edit, and categorize all income and expenses
  • Custom Categories: Organize transactions with preset or personalized categories
  • Flexible Notes: Add context to any transaction for better record-keeping

πŸ“Š Data Visualization Dashboard

  • Financial Snapshot: View your monthly balance, income, and expenses at a glance
  • Category Breakdown: Interactive pie charts showing spending distribution
  • Trend Analysis: Track your financial patterns with time-series visualizations
  • Comparative Statistics: See month-to-month improvements and changes

🎯 Budget Planning & Alerts

  • Budget Creation: Set monthly spending limits overall or by category
  • Alert System: Receive notifications when approaching budget thresholds
  • Progress Tracking: Visual indicators of budget status throughout the month

πŸ“€ Data Portability

  • Export Functionality: Generate CSV exports for external analysis
  • Report Generation: Create custom reports for specific time periods or categories

πŸ–₯️ Screenshots

Dashboard Screenshot

Main Dashboard with financial overview

Budget Screenshot

Budget management interface

πŸš€ Installation & Setup

Prerequisites

  • Python 3.8 or higher
  • Node.js 14+ and npm
  • Git

Step 1: Clone the Repository

git clone https://github.com/Exalt24/PennywAIse.git
cd PennywAIse

Step 2: Configure Environment

Create a .env file in the project root with the following variables:

SECRET_KEY=<your-secret-key>
DEBUG=True                # Set to False in production
GMAIL_ADDRESS=<your-gmail>@gmail.com
GMAIL_APP_PASS=<your-16-char-app-password>
GENAI_API_KEY=<your-gemini-api-key>

Generate a Secure Secret Key

python -c "import secrets; print('SECRET_KEY=' + secrets.token_urlsafe(50))"

Step 3: Install Dependencies

# Install frontend dependencies
npm install

# Install backend dependencies
pip install -r requirements.txt

Step 4: Initialize Database

python manage.py makemigrations
python manage.py migrate

Step 5: Create Test User (Development Only)

python manage.py create_test_accounts
# Creates user with credentials: test@example.com / password123

Step 6: Launch Development Server

npm run dev

The application will be available at http://127.0.0.1:8000/ with Tailwind CSS hot-reloading enabled.

πŸ§ͺ Testing

Running Tests

PennywAIse comes with a comprehensive test suite covering all aspects of the application:

# Run all tests
python manage.py test budget

# Run specific test modules
python manage.py test budget.tests_suite.test_models
python manage.py test budget.tests_suite.test_views

Generate Coverage Report

pip install coverage
python -m coverage run --source='budget' manage.py test budget
python -m coverage report
python -m coverage html   # Generates detailed HTML report

πŸ“˜ User Guide

  1. Authentication: Register for a new account or log in with existing credentials
  2. Dashboard Overview: View your financial summary with interactive charts
  3. Adding Transactions: Use the sidebar form to record new income or expenses
  4. Categorization: Assign each transaction to a category for better insights
  5. AI Insights: Check the AI recommendations panel for personalized advice
  6. Budget Management: Set up and monitor category-specific budgets
  7. Data Export: Generate and download reports for external analysis

πŸ‘₯ Team & Contributions

Team Member Primary Responsibilities
Amielle Jaezxier Perez Testing framework, Models & business logic, Frontend UI
Daniel Alexis Cruz Authentication, Email workflows, Models, Tailwind integration
Nikka Joie Mendoza Frontend UI & refinement, Tailwind Integration

🌐 Future Roadmap

  • Mobile Application: Native mobile experience for iOS and Android
  • Financial Goal Setting: Track progress toward saving and investment goals
  • Investment Portfolio Integration: Connect and monitor investment accounts
  • Advanced AI Forecasting: Predictive analysis of future expenses and income
  • Multi-currency Support: Handle transactions in multiple currencies

πŸ“„ License

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

πŸ™ Acknowledgements


Developed by the PennywAIse Team at Exalt24

Take control of your financial future

About

AI-powered personal finance dashboard built with Django & Tailwind CSS. Visualize spending patterns, receive intelligent savings recommendations, and manage budgets through an intuitive interface. Features secure authentication, interactive charts, and customizable categories.

Topics

Resources

Stars

0 stars

Watchers

1 watching

Forks

Releases

Packages

Used by

Contributors

Languages