← Back to all sparks
S

SolidInvoice

FINANCE
Velocity0.0

Open source invoicing and quoting application

SolidInvoice finally shipped the 3.0 it spent a year staging in alphas and betas.

invoicingauthenticationtwo-factor-authmajor-releaseself-hostedplatform-refactor
◆Current state
After more than twelve months of alpha and beta releases, SolidInvoice 3.0 landed in June with the accumulated work of that cycle: email verification, Google OAuth, two-factor authentication, real user profiles, flat-rate tax support and a Meilisearch-backed search layer. Underneath it, the project moved onto a shared platform config and pulled trial and SaaS logic into an external bundle. The 2.3 line ran in parallel the whole time, absorbing security backports.
◆Where it's heading
Two threads run through this changelog. The visible one is identity and account management catching up to what users expect from a billing app — signup verification, OAuth, 2FA, self-serve company deletion. The less visible one is the codebase being restructured around reusable solidworx platform components with Sentry and Prometheus instrumentation, which is the shape of a project preparing to run itself as a hosted service rather than only as a download.
◆Prediction
With 3.0 out and 3.0.1 already repairing the upgrade migration path, the near-term work is likely more 3.0.x stabilization for people coming off 2.3 rather than new features.

◆Recent moves

  1. 4mo ago

    Release 3.0.1

    The first patch on 3.0 fixes the things people hit on the way in: migrations failing during upgrade, email headers not picking up config, a dead Add Credit button. Upgrade-path repair is the expected first move after a release this large.

    View source ↗
  2. 4mo ago

    Release 3.0.0

    ⚡ SPARK

    3.0 is the release the entire alpha and beta run was building toward, collapsing a year of identity, tax and platform work into one version. It marks the point where the 2.3 line stops being the active branch.

    View source ↗
  3. 5mo ago

    3.0.0-beta1

    The beta was mostly structural: a unified platform.yaml config, trial functionality migrated to an external SaaS bundle, Sentry instrumentation and opt-in Prometheus metrics for Caddy and FrankenPHP. This is the operability groundwork that made the 3.0 release viable to run.

    View source ↗
  4. 5mo ago

    Release 2.3.17

    A security release on the maintenance line closing two reported issues: stored XSS through SVG logo uploads and unhashed API tokens in the database. Both were externally reported, and both landed on 2.3 while 3.0 was still in beta.

    View source ↗
  5. 7mo ago

    3.0.0-alpha2

    The second alpha added Meilisearch integration for cross-company search, plus fixes to SMTP failure handling and HTML sanitization in line items. Search was the last user-facing feature to enter the 3.0 pile.

    View source ↗
  6. 7mo ago

    Release 2.3.16

    Two fixes backported to the maintenance line: sanitizer over-encoding in line item descriptions and graceful SMTP transport errors. Routine upkeep on 2.3 while attention sat on 3.0.

    View source ↗