Skip to content

Exalt24/PennywAIse

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

134 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

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

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages