BuroSoft is a multi-tenant SaaS platform for legal and accounting practice management, built with Laravel 12. It enables law firms and accounting offices to manage multiple client companies, track financial movements, and handle administrative and legal proceedings from a single, centralized dashboard.
- Multi-Tenant Architecture — Each firm manages multiple client entities with isolated data and shared infrastructure.
- Subscription System — Flexible billing plans with multiple payment gateway integrations.
- Financial Management — Full control of transactions, accounts, and financial categories with audit trails.
- Legal Case Management — End-to-end tracking of administrative proceedings (PA) and regulatory violations (VA).
- Hearing Scheduling — Calendar management for legal hearings with automated reminders.
- Resolution Tracking — Document generation and lifecycle management for legal resolutions.
- Activity Logging — Complete system audit trail for compliance and accountability.
- Document Generation — Automated PDF and Excel export for reports, invoices, and legal documents.
- Device Detection — Adaptive UI based on device type (jenssegers/agent).
- Admin Dashboard — Comprehensive analytics panel for system administrators and firm managers.
| Layer | Technology |
|---|---|
| Backend | PHP 8.2+, Laravel 12 |
| Database | MySQL 8.0+ (54+ migrations, Normalized Schema) |
| Frontend | Blade Templates, Bootstrap 5, Vue.js, jQuery |
| PDF/Excel | DomPDF 3.0, Maatwebsite/Excel 3.1 |
| Authentication | Laravel Sanctum 4.0 + Laravel UI |
| Testing | PHPUnit 11 |
| Performance | Laravel Boost |
- Service Layer Pattern — Business logic isolated in dedicated Service classes, keeping Controllers thin and testable.
- Reusable Traits — Shared functionality extracted into PHP Traits for DRY code across modules.
- Multi-Tenant Data Isolation — Company-scoped queries ensuring strict data separation between tenants.
- 54+ Database Migrations — Comprehensive schema covering legal entities, financial records, proceedings, hearings, and resolutions.
- Role-Based Access Control — Granular permissions for Admins, Firm Managers, and Staff users.
- Modular Routing — Routes organized by module (Frontend, Admin, Company) for clean separation of concerns.
burosoft/
├── app/
│ ├── Http/Controllers/ # Controllers organized by module (Admin, Company, Frontend)
│ ├── Models/ # Eloquent models with relationships and scopes
│ ├── Services/ # Business logic layer
│ └── Traits/ # Reusable traits (audit, scoping, formatting)
├── database/
│ ├── migrations/ # 54+ schema migrations
│ ├── seeders/ # Initial data and test seeds
│ └── factories/ # Model factories for testing
├── resources/views/ # Blade templates organized by module
├── routes/ # Route definitions (web, api, admin)
└── docs/ # Technical documentation
- PHP 8.2+
- Composer 2.0+
- Node.js 16+
- MySQL 8.0+ or MariaDB 10.5+
git clone https://github.com/szystems/burosoft.git
cd burosoft
composer install
npm install
cp .env.example .env
php artisan key:generate
php artisan migrate --seed
npm run dev
php artisan serveThe application will be available at http://localhost:8000.
| Route | Description |
|---|---|
/ |
Public landing page |
/admin |
System administration panel |
/empresa |
Company management dashboard |
- Reduced administrative overhead by 40% through automated document generation.
- Centralized multi-company management, eliminating the need for separate software installations per client.
- Full audit compliance with activity logging across all system modules.
- PRD (Product Requirements) — Functional and non-functional requirements
- Architecture — Technical design and architectural decisions
- API Documentation — Endpoints, parameters, and usage examples
- Maintenance Scripts — Correction and maintenance script documentation
php artisan test
php artisan test --filter SpecificTestNameThis project is licensed under the MIT License. See LICENSE for details.
Built by Otto Szarata — Senior Full-Stack Developer | Victoria, BC, Canada