Skip to content

Releases: mohsin-rafique/expense-manager

v1.2.0 - Budgets, Team Workspaces, PDF Reports & Multi-language

15 Jun 09:34

Choose a tag to compare

Expense Manager v1.2.0

The largest feature release since 1.0.0. Expense Manager grows from a single-user
tracker into a collaborative financial platform: shared team workspaces, full budget
management, downloadable PDF reports, multi-language support, and bulk data import.
Existing data migrates automatically with no loss.

Highlights

  • Budget Management - Per-category budgets across monthly, yearly, and fiscal-year periods, with configurable alert thresholds, color-coded progress, and in-app + email overspend alerts.
  • Multi-user / Team Workspaces - Shared workspaces with role-based access (Owner, Admin, Member, Viewer), email invitations, and a one-click workspace switcher. Every user keeps a private personal workspace.
  • Advanced PDF Reporting - Branded, downloadable PDF reports (Financial Summary, Category Breakdown, Income vs Expense, Budget Status) with full Unicode and right-to-left rendering.
  • Multi-language Support (i18n) - Full UI localization in 5 languages (English, Espanol, Francais, Urdu, Deutsch) with an in-app switcher, per-user preference, and automatic RTL for Urdu.
  • Data Import (CSV / Excel) - Bulk-import expenses and income with a row-by-row validation preview before anything is committed.
  • Expense Enhancements - FBR category support for Pakistani tax tracking, in-browser receipt auto-read (Beta), and searchable category/payment dropdowns.

Changed

  • Searchable dropdowns across the Expense and Income modules.
  • Budget module UI aligned with Income/Expense (summary cards, collapsible Filter & Search, consistent color scheme).
  • README documentation overhaul; copyright updated to 2025 - 2026.

Fixed

  • Receipt auto-read date and merchant parsing improvements.
  • Search box now always shown on category dropdowns, even for short lists.
  • Searchable dropdowns themed to match Bootstrap form controls.

Upgrading

git pull
composer install
php yii migrate

No data loss: existing records migrate automatically into each user's personal workspace.

Full changelog: v1.1.0...v1.2.0

v1.1.0 - AJAX Standardization & Professional XLSX Export System

10 Apr 10:02

Choose a tag to compare

🚀 Overview

This release introduces a unified AJAX response architecture and upgrades all export functionality to professional, production-ready XLSX reports with improved reliability, formatting, and filtering accuracy.


✨ Key Improvements

🔹 Unified API Responses

  • Introduced ApiResponse helper for consistent {status, message} structure

  • Applied across:

    • ExpenseController
    • ExpenseCategoryController
    • IncomeController
    • IncomeCategoryController
    • ProfileController

🔹 Code Quality & Stability

  • Added strict PHP return types in SiteController (aligned with Yii2 + PHPDoc standards)
  • Resolved Intelephense P1013 warning using proper instanceof User checks
  • Improved type safety and IDE compatibility

🔹 Professional XLSX Export System

  • Replaced CSV exports with fully formatted XLSX reports

  • Features include:

    • Styled header (Bootstrap green #198754)
    • Freeze panes for better navigation
    • Zebra striping for readability
    • Currency formatting for financial data
    • Word-wrapped description/reference fields
    • Human-readable date format (Feb 25, 2026)

🔹 Export Accuracy Fixes

  • Fixed export filter issue (previously exporting all records)
  • Now respects active grid filters
  • Implemented proper search model integration

🔹 XLSX Reliability Fix

  • Resolved file corruption issue
  • Switched from php://output buffering to temp file-based export

🔹 Income Category Export Enhancements

  • Added XLSX export for income categories with:

    • Columns: Name, Description, Status, Records, Created At
    • Word-wrapped descriptions
    • Filter-aware export via IncomeCategorySearch
  • Introduced export mode (pagination disabled)


⚙️ Technical Notes

  • Backward-compatible changes
  • No database migrations required
  • No breaking API changes

📦 Should you upload a ZIP file?

❌ Not required (most cases)

If your project is:

  • Hosted on GitHub
  • Meant for developers

👉 GitHub automatically provides source code archives:

  • Source code (zip)
  • Source code (tar.gz)

v1.0.1 - Security Hardening & Code Quality

05 Apr 14:22

Choose a tag to compare

What's Changed

🔒 Security

  • Debug mode now controlled via .env — defaults to production-safe false
  • Session cookies hardened — secure and sameSite configurable via .env
  • Login rate limiting — max 5 failed attempts per IP per 15 minutes
  • Database credentials moved to .env — no hardcoded values in config/db.php

🛠 Code Quality

  • PHP 8.1 type declarations added across all models, components, widgets and controllers
  • PHPDoc class-level and method-level comments added throughout (Yii2 standards)
  • Fixed BalanceHelper::getBalance() float cast for users with no transactions
  • Fixed ExpenseSearch / SignupForm / ChangePasswordForm — missing rules(): array was causing 500 error
  • Cleaned up Gii-generated noise from User model annotations

📄 Docs

  • README updated with .env setup instructions
  • Changelog section added
  • .env.example template added for self-hosted deployments

Upgrade Notes

If upgrading from v1.0.0:

  1. Copy .env.example to .env and fill in your database credentials
  2. Run php yii migrate (no new migrations in this release)

Release v1.0.0 - Initial stable release

13 Jan 08:45

Choose a tag to compare

🎉 Release v1.0.0 - Initial Stable Release

A modern, open-source personal finance management application built with Yii2 and Bootstrap 5.


✨ Highlights

  • 💰 Income Management - Track all income sources with categories
  • 💸 Expense Management - Hierarchical categories & multiple payment methods
  • 📊 Dashboard & Reports - Visual charts and financial insights
  • 👤 User Profiles - Custom avatars, banners, and settings
  • 🎨 Modern UI - Bootstrap 5 with dark/light theme toggle
  • 🔐 Secure - Full authentication system with password reset

📋 Features

Income Management

  • ✅ Record and track all income sources
  • ✅ Categorize income with custom categories
  • ✅ Attach receipts and invoices (PDF, images)
  • ✅ Search and filter functionality
  • ✅ Export to Excel

Expense Management

  • ✅ Track expenses with detailed information
  • ✅ Hierarchical categories (parent/child)
  • ✅ Multiple payment methods (Cash, Card, Bank)
  • ✅ File attachments for receipts
  • ✅ Advanced filtering and search
  • ✅ Export to Excel

Dashboard & Reports

  • ✅ Financial overview dashboard
  • ✅ Income vs Expense summary cards
  • ✅ Monthly/yearly statistics
  • ✅ Category-wise breakdown
  • ✅ Visual charts and graphs
  • ✅ Balance tracking

User Management

  • ✅ Secure authentication system
  • ✅ User profile management
  • ✅ Password reset functionality
  • ✅ Remember me option
  • ✅ Session management

Settings & Customization

  • ✅ Multi-currency support (50+ currencies)
  • ✅ Customizable currency formatting
  • ✅ Date and time format preferences
  • ✅ Company/business branding
  • ✅ Logo and favicon upload
  • ✅ Timezone configuration

Modern UI/UX

  • ✅ Clean, responsive Bootstrap 5 design
  • ✅ Dark/Light theme toggle
  • ✅ Mobile-friendly interface
  • ✅ AJAX-powered interactions (PJAX)
  • ✅ Toast notifications
  • ✅ Modal-based forms

🔧 Requirements

Requirement Version
PHP 8.1 or higher
MySQL / MariaDB 5.7+ / 10.3+
Composer 2.x
Web Server Apache / Nginx

🚀 Quick Start

# Clone the repository
git clone https://github.com/mohsin-rafique/expense-manager.git
cd expense-manager

# Install dependencies
composer install

# Configure database
cp config/db.example.php config/db.php
# Edit config/db.php with your credentials

# Run migrations
php yii migrate

# Set permissions
chmod -R 777 runtime web/assets web/uploads

# (Optional) Seed demo data
php yii seed/demo

Demo Account

After running the seeder:


📸 Screenshots

Click to view screenshots

Dashboard

Dashboard

Income Management

Income

Income Categories

Income Categories

Expense Management

Expenses

Expense Categories (Grid View)

Expense Categories Grid

Expense Categories (Tree View)

Expense Categories Tree

User Profile

Profile


🛠 Technical Stack

  • Framework: Yii2 (v2.0.53)
  • Frontend: Bootstrap 5.3
  • Icons: Bootstrap Icons
  • Charts: ApexCharts
  • Database: MySQL / MariaDB

📋 Roadmap

  • Multi-language support (i18n)
  • Data import from CSV/Excel
  • Advanced reporting with PDF export
  • Budget management module
  • Multi-user/team support
  • API Development (Yii2 REST)
  • Mobile app (React Native)

🙏 Acknowledgments


📄 License

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


Full Changelog: https://github.com/mohsin-rafique/expense-manager/commits/v1.0.0


⭐ Star this repository if you find it useful!