invoiceninja / invoiceninja
git clone https://github.com/invoiceninja/invoiceninja.git
v5.13.49 · 5d ago
🔥 on GitHub Trending today
Source-available invoicing app for invoices, quotes, projects, expenses, and time tracking, built on Laravel and offered hosted or self-hosted.
Why you might care
Suits freelancers and small businesses that want invoicing, payments, and time tracking in one app. Self-hosting gives full control over data, with the hosted SaaS option as an alternative; a paid white-label license removes branding from client-facing pages.
+1
stars, 24h · #13,849
+~16
stars, 7 days · #8,911
+224
stars, 30 days · #3,547
10k
★ total · +0% this week
2.8k
forks · 237 open issues
Star history (as recorded here)
LanguagePHP
License—
Created2013-11-26 (12y ago)
Last push1d ago
Watchers208
OwnerOrganization
Seen on GitHub Trending
- 2026-10-23 — #7 monthly in php · +223 ★
- 2026-10-22 — #6 monthly in php · +224 ★
- 2026-10-21 — #3 monthly in php · +223 ★
- 2026-10-20 — #3 monthly in php · +225 ★
GitHub topics
einvoicingexpensesflutterhacktoberfestinvoiceinvoiceninjainvoicesjavascriptkanbanlaravelpaymentsphpprojectsquotestaskstime-tracker
Links
- GitHub: github.com/invoiceninja/invoiceninja
- Homepage: https://invoiceninja.com
- Releases · Issues · Hacker News mentions
README excerpt
# Invoice Ninja 5 Invoice Ninja Version 5 is here! We've taken the best parts of version 4 and added the most requested features to create an invoicing application like no other. Check the Invoice Ninja YouTube Channel to get up to speed, or try the Demo now. **Choose your setup** - Hosted: Our hosted version is a Software as a Service (SaaS) solution. You're up and running in under 5 minutes, with no need to worry about hosting or server infrastructure. - Self-Hosted: For those who prefer to manage their own hosting and server infrastructure. This version gives you full control and flexibility. All Pro and Enterprise features from the hosted app are included in the source-available code. We offer a $40 per year white-label license to remove the Invoice Ninja branding from client-facing parts of the app. #### Get social with us * Support Forum * Slack * Discord * Instagram #### Documentation * Invoice Ninja - API * Invoice Ninja - Developer Guide * Invoice Ninja - User Guide * Invoice Ninja - Self-Hosted Installation Guide ## Installation Options and Clients ### Mobile Apps * iPhone * Android * F-Droid ### Desktop Apps * macOS * Windows * Linux - Snap * Linux - Flatpak ### Self-Hosted Server Installation **Note:** The self-hosted options do support the desktop and mobile apps. * Server or VM * Docker File * Cloudron * Softaculous * Elestio * YunoHost ### Recommended Providers * Stripe * Postmark ### SDKs available for easier API consumption * Go SDK ## [Advanced] Quick Hosting Setup In addition to the official Invoice Ninja - Self-Hosted Installation Guide we have a few commands for you. [code] **Note** replace v5.11.53 with the latest tag version, you will also want to ensure that when performing updates, you use the latest tag version rather than a particular branch, ie v5-develop. This will ensure that you are not pulling in work in progress code. Please Note: Your APP_KEY in the .env file is used to encrypt data, if you lose this you will not be able to run the application. Run if you want to load sample data, remember to configure .env [code] To run the web server [code] Navigate to (replace localhost with the appropriate domain) [code] ## Developers Guide In addition to the official Invoice Ninja - Developer Guide we've got your back with some insights. ### App Design The API and client portal have been developed using Laravel if you wish to contribute to this project familiarity with Laravel is essential. When inspecting functionality of the API, the best place to start would be in the routes/api.php file which describes all of the availabe API endpoints. The controller methods then describe all the entry points into each domain of the application, ie InvoiceController / QuoteController The average API request follows this path into the application. * Middleware processes the request initially inspecting the domain being requested + provides the authentication layer. * The request then passes into a Form Request (Type hinted in t
Blurb generated by claude-haiku-5-5 today. Star deltas marked ~ are extrapolated from partial history.