π° Finova - Modern Financial Management Platform
Finova is an open-source, AI-powered financial management platform built with Laravel. It combines comprehensive financial tracking, CRM, project management, and intelligent AI assistance in one powerful system.
π Perfect for: Freelancers, Small Businesses, Agencies, and Financial Professionals
π― Live Demo
Try it out without installation:
- Demo URL: https://finans.mikpa.com
- Admin Login: Use demo credentials on the login page
- Employee Login: Test employee role features
π‘ Note: Demo resets every 30 minutes.
β¨ Features
π³ Financial Management
- [x] Multi-Currency Support - Track finances in multiple currencies with automatic conversion
- [x] Account Management - Support for bank accounts, credit cards, crypto wallets, virtual POS, and cash
- [x] Transaction Tracking - Comprehensive income, expense, and transfer management
- [x] Installment & Subscription - Automatic recurring transaction management
- [x] Tax & Withholding - Built-in tax calculation and withholding management
π₯ Customer & Supplier Management
- [x] Customer Management - Complete customer database with contact information and history
- [x] Supplier Management - Supplier tracking with debt and payment management
- [x] Lead Management - Lead tracking and conversion system
- [x] Customer Agreements - Contract and agreement management
- [x] Customer Credentials - Secure storage of sensitive customer information
ποΈ Project Management
- [x] Project Tracking - Create and manage projects with boards and task lists
- [x] Task Management - Kanban-style task management with labels and assignments
π Planning & Analytics
- [x] Savings Plans - Goal-based savings tracking
- [x] Investment Plans - Investment portfolio management
- [x] Debt Management - Loan and debt tracking with payment schedules
- [x] Commission System - Agent commission tracking and management
π€ AI Integration
- [x] AI Assistant - Integrated AI chat assistant for financial insights
- [x] Document Analysis - AI-powered document processing and analysis
- [x] Smart Suggestions - AI recommendations for financial decisions
- [x] Multi-Provider Support - OpenAI and Google Gemini integration
π User Management & Security
- [x] Role-Based Access Control - Comprehensive role and permission management system
- [x] Custom Roles - Create and manage custom roles with specific permissions
- [x] Permission Management - Granular permission control for all system features
- [x] User Management - Create, edit, and manage team members with role assignments
π± Modern UI/UX
- [x] Livewire Components - Reactive, modern user interface
- [x] Responsive Design - Mobile-first responsive design
- [x] Real-time Updates - Live data updates and notifications
π Roadmap & Upcoming Features
πΆ Enhanced Multi-Language Support
- [ ] Complete Translation System - Full translation coverage for all UI elements
- [ ] Dynamic Language Switching - Change language without page refresh
- [ ] RTL Support - Right-to-left language support (Arabic, Hebrew)
- [ ] Custom Translation Management - Admin panel for managing translations
πΆ Advanced Currency Management
- [ ] Default Currency Selection - Set preferred currency
- [ ] Currency Rate Auto-Update - Automatic exchange rate updates from APIs
- [ ] Custom Exchange Rates - Manual override for specific rates
- [ ] Currency Formatting - Localized number and currency formatting
πΆ Automated Setup Wizard
- [ ] One-Click Installation - Streamlined setup process
- [ ] Database Configuration - Interactive database setup
- [ ] Demo Data Installation - Optional sample data loading
- [ ] AI Configuration - Easy API key setup for AI features
- [ ] Email & Notification Setup - Configure SMTP and notifications
π‘ Want to contribute? Check out our Contributing Guide and pick a feature to work on!
π οΈ Technology Stack
Backend
- Laravel 11 - PHP web framework
- MySQL/PostgreSQL - Database
- Livewire 3 - Reactive components
- Filament 3 - Admin panel
Frontend
- Tailwind CSS - Utility-first CSS framework
- Alpine.js - Lightweight JavaScript framework
- Chart.js - Data visualization
- TipTap Editor - Rich text editing
AI & External Services
- OpenAI API - Chat and document analysis
- Google Gemini - Alternative AI provider
- Telegram Bot API - Notification system
Development Tools
- Vite - Fast build tool
- Pint - PHP code style fixer
- PHPStan - Static analysis
- Pest - PHP testing framework
π Requirements
- PHP 8.2 or higher
- Composer - PHP dependency manager
- Node.js 18.x or higher
- NPM or Yarn - JavaScript dependency manager
- MySQL 5.7+ or PostgreSQL 10+
- Redis (optional, for caching and queues)
π Installation
1. Clone the Repository
git clone https://github.com/mehmetmasa/finova.git
cd finova
2. Install PHP Dependencies
composer install
3. Install JavaScript Dependencies
npm install
# or
yarn install
4. Environment Configuration
cp .env.example .env
Edit the .env file and configure:
- Database credentials (DB_DATABASE, DB_USERNAME, DB_PASSWORD)
- Mail configuration (for notifications)
- AI API keys (OpenAI, Gemini)
- Application settings
5. Generate Application Key
php artisan key:generate
6. Database Setup
php artisan migrate --seed
This will create all database tables and populate with sample data.
7. Storage Setup
php artisan storage:link
8. Build Frontend Assets
npm run build
# For development
npm run dev
9. Start the Application
php artisan serve
The application will be available at http://localhost:8000
π Default Credentials
Admin User:
- Email:
[email protected] - Password:
admin123
π Usage
Dashboard
- Overview of financial status
- Recent transactions and activities
- Quick action buttons for common tasks
Financial Management
- Transactions: Add, edit, and categorize financial transactions
- Accounts: Manage different account types and balances
- Categories: Organize transactions with custom categories
- Budgets: Set and track spending limits
Customer Management
- Customers: Manage customer information and history
- Leads: Track potential customers and conversion
- Agreements: Manage contracts and recurring agreements
Project Management
- Projects: Create and manage projects
- Boards: Kanban-style project boards
- Tasks: Task management with assignments and due dates
AI Assistant
- Access AI chat assistant for financial insights
- Upload and analyze documents
- Get AI-powered recommendations
π§ Configuration
AI Integration Setup
- Get API keys from OpenAI or Google AI
- Add keys to
.envfile:OPENAI_API_KEY=your_openai_key GEMINI_API_KEY=your_gemini_key
Telegram Notifications (Optional)
- Create a Telegram bot via @BotFather
- Add bot token to
.env:TELEGRAM_BOT_TOKEN=your_bot_token TELEGRAM_CHAT_ID=your_chat_id
π€ Contributing
We love contributions! Whether it's bug fixes, new features, or documentation improvements, all contributions are welcome!
How to Contribute
- Fork the repository
- Clone your fork:
git clone https://github.com/YOUR_USERNAME/finova.git - Create a feature branch:
git checkout -b feature/amazing-feature - Make your changes
- Commit your changes:
git commit -m 'Add amazing feature' - Push to the branch:
git push origin feature/amazing-feature - Open a Pull Request
Development Guidelines
- β Follow PSR-12 coding standards
- β Use meaningful commit messages
- β Keep PRs focused and small
- β Add comments for complex logic
Good First Issues
Look for issues labeled with:
- π’
good first issue- Perfect for first-time contributors - π‘
help wanted- We need your help! - π΅
documentation- Help improve our docs
Questions?
- π¬ Open a Discussion
- π Found a bug? Open an Issue
- π‘ Have an idea? Create a Feature Request
π License
This project is licensed under the MIT License - see the LICENSE file for details.
π Acknowledgments
- Laravel - The PHP framework
- Livewire - Reactive components
- Filament - Admin panel
- Tailwind CSS - Utility-first CSS framework
- Alpine.js - Lightweight JavaScript framework
- OpenAI - AI integration
- Google Gemini - AI integration
π¬ Community & Support
Get Help
- π Documentation: Check out our Wiki
- π¬ Discussions: Join GitHub Discussions
- π Bug Reports: Open an Issue
- β Feature Requests: Share your ideas in Issues
Show Your Support
If you find Finova helpful, please:
- β Star this repository
- π¦ Share it on social media
- π Link to it from your projects
- π¬ Tell others about it