mirror of
https://github.com/InvoiceShelf/InvoiceShelf.git
synced 2026-09-06 15:14:13 +00:00
7e483d06ce401a448f37dda4d955ede193bada3b
Backport of InvoiceShelf/InvoiceShelf#704 to 2.x. Fixes InvoiceShelf/docker#79. A fresh install using the shipped docker-compose.mysql.yml cannot get past the database step, because that compose file sets DB_CONNECTION=mariadb. getDatabaseEnvironment() switched on sqlite, pgsql and mysql with no arm for mariadb and no default, so it answered {"config":[]}. The wizard renders <component :is="database_connection">, which resolves to nothing, so the step came out blank — and nothing reached the log, because the app never errored, it just replied with nothing. Adds the mariadb arm plus a default, so an unrecognised driver is echoed back with server defaults rather than producing an unrenderable response. MariaDB is registered as an alias of the MySQL form, whose fields are identical, and offered in each driver picker. Tested against the original controller, where three of the new cases fail with "Failed asserting that null is identical to 'mariadb'".
Introduction
InvoiceShelf is an open-source web & mobile app that helps you track expenses, payments & create professional invoices & estimates.
The Web Application is made using Laravel & VueJS while the Mobile Apps are built using React Native.
To get started with InvoiceShelf using Docker Compose, check out the Installation docs.
Table of Contents
Documentation
System Requirements
- Starting from v2.2.0 (Laravel 13 upgrade), InvoiceShelf requires PHP 8.4+.
- Before updating from the app settings, verify your server PHP version and required extensions.
- The in-app updater checks requirements and blocks the update if they are not met.
Download
Mobile Apps
- Andorid - Coming Soon
- IOS - Coming Soon
- Source
Discord
Join the InvoiceShelf discord server to discuss: Invite Link
Roadmap
~~Here's a rough roadmap of things to come (not in any specific order):
- Automatic Update
- Email Configuration
- Installation Wizard
- Address Customisation & Default notes
- Edit Email before Sending Invoice
- Available as a docker image
- Performance Improvements
- Customer View page
- Add and Use Custom Fields on Invoices & Estimates.
- Multiple Companies
- Recurring Invoices
- Customer Portal
- Accept Payments (Stripe Integration)
- Improved template system (invoices and estimate)
- Modules and templates marketplace
Credits
InvoiceShelf is made possible thanks to the contributions and support from many people and projects:
- Crater (project inspiration and code base)
- All contributors who have provided code, translations, reported issues, or supported the project in any way.
Translate
Help us translate on https://crowdin.com/project/invoiceshelf
License
InvoiceShelf is released under the GNU AFFERO GENERAL PUBLIC LICENSE Version 3. See LICENSE for details.
Languages
PHP
59.9%
Vue
36.1%
Blade
3.2%
Shell
0.6%
Dockerfile
0.1%