Releases: mohsin-rafique/expense-manager
v1.2.0 - Budgets, Team Workspaces, PDF Reports & Multi-language
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
🚀 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
ApiResponsehelper 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
P1013warning using properinstanceof Userchecks - 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)
- Styled header (Bootstrap green
🔹 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://outputbuffering 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
What's Changed
🔒 Security
- Debug mode now controlled via
.env— defaults to production-safefalse - Session cookies hardened —
secureandsameSiteconfigurable via.env - Login rate limiting — max 5 failed attempts per IP per 15 minutes
- Database credentials moved to
.env— no hardcoded values inconfig/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— missingrules(): arraywas causing 500 error - Cleaned up Gii-generated noise from
Usermodel annotations
📄 Docs
- README updated with
.envsetup instructions - Changelog section added
.env.exampletemplate added for self-hosted deployments
Upgrade Notes
If upgrading from v1.0.0:
- Copy
.env.exampleto.envand fill in your database credentials - Run
php yii migrate(no new migrations in this release)
Release v1.0.0 - Initial stable release
🎉 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/demoDemo Account
After running the seeder:
- Email: demo@example.com
- Password: demo123
📸 Screenshots
Click to view screenshots
Dashboard
Income Management
Income Categories
Expense Management
Expense Categories (Grid View)
Expense Categories (Tree View)
User 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!






