Skip to content

MIT licence · GitHub · Packagist

Open Source

Laravel packages from the Vimatech codebase, published under the MIT licence. Each one does a single job. If one saves you time, a star helps other developers find it.

Laravel / PHP 8.3+ · v2.0.1

laravel-secure-fields

Encrypt sensitive Eloquent fields without losing the ability to query them.

When your database leaks, plain-text PII becomes a breach. This package encrypts sensitive fields transparently at the model level, with no schema changes and no query rewrites. You can still run exact-match lookups on encrypted fields through a blind index, rotate keys without downtime, and produce the access trails an audit asks for.

  • AES-256-GCM encryption with per-value random IV
  • Searchable encrypted fields via blind indexes (HMAC-SHA256)
  • Key rotation with zero downtime
  • Field masking in toArray() & toJson()
  • Audit logging for access trails
composer require vimatech/laravel-secure-fields

Laravel / PHP 8.3+ · v1.1.1

laravel-membership

Add teams, memberships and roles to any SaaS, without the boilerplate.

Every multi-tenant app needs to know who belongs to which team, and with which role. Built for Vimatech's own products and published as open source. It handles membership and roles across any Eloquent model, ready to gate your features from day one.

  • Attach to any model: teams, projects, organisations
  • Enum roles with hierarchy levels
  • Role guards & policy helpers
  • Events on membership changes
  • Soft deletes for membership history
composer require vimatech/laravel-membership

Laravel / PHP 8.3+ · v1.3.0

laravel-invitation

Invite anyone to any Eloquent model. Email invitations done right.

Every product needs onboarding. Send secure, expiring email invitations to join any Eloquent model: teams, projects, organisations, or globally. Built for onboarding in Vimatech's own products, with a full accept, decline, cancel and resend lifecycle out of the box.

  • Invite by email to any Eloquent model, or globally
  • Secure HMAC-hashed tokens, never stored in plain text
  • Full lifecycle: accept, decline, cancel, resend
  • Configurable expiration & duplicate policy
  • Events fired for every action
composer require vimatech/laravel-invitation

Laravel / PHP 8.3+ · v1.1.0

laravel-document-numbering

Sequential, gap-free invoice numbers, even under load.

Many invoicing regimes require sequential numbering without gaps. This package generates sequential, concurrency-safe numbers using database row locks. Two requests can never take the same number or leave a hole.

  • Configurable patterns (INV-{YYYY}-{seq:5})
  • Per-scope counters (company / tenant / branch)
  • Yearly, monthly, or never resets
  • Gap-free (transaction-bound) or fast-sequential mode
  • Concurrency-safe via row locks · Octane-ready
composer require vimatech/laravel-document-numbering

Laravel / PHP 8.3+ · v1.1.1

laravel-integrations

Plug in any external provider: config, not code.

A config-driven ports & adapters foundation for external providers. Add a provider by writing one adapter class and a config entry. Context routing and a normalized inbound webhook pipeline are included. Intentionally domain-free, so it fits any integration.

  • Config-driven drivers (ports & adapters)
  • Context routing (by country, tenant, …)
  • Per-tenant driver overrides
  • Normalized inbound webhook pipeline
  • Canonical events with built-in idempotency
composer require vimatech/laravel-integrations

Laravel / PHP 8.3+ · v2.4.0

laravel-einvoicing

Generate Peppol BIS 3.0 and EN 16931 e-invoices natively.

Produce structured e-invoices (Peppol BIS 3.0 UBL, EN 16931 CII) natively, run pre-flight checks against the EN 16931 and Peppol BIS rules, and dispatch them through pluggable networks with per-country routing. Zero third-party runtime dependencies.

  • Peppol BIS 3.0 (UBL) generation
  • EN 16931 (CII) generation
  • Pluggable dispatch networks, per-country routing
  • Inbound document handling
  • Zero third-party runtime dependencies
composer require vimatech/laravel-einvoicing

Laravel / PHP 8.3+ · v1.3.2

laravel-quotas

Feature entitlements and usage quotas for SaaS, on top of Cashier or standalone.

Cashier handles the money; it does not answer the question your application asks on every request: is this account allowed to do this, and has it used up its allowance? This package reads whichever subscription Cashier holds, maps it to a plan, and enforces that plan's features and quotas locally.

  • Feature gates on the model and as route middleware
  • Usage counters enforced atomically under a row lock
  • Allowances reset on the subscription anniversary
  • Plan catalogue mapped to your provider price ids
  • Cashier Stripe, Cashier Paddle, or no billing at all
composer require vimatech/laravel-quotas

Laravel / PHP 8.3+ · v1.0.0

laravel-audit-log

Append-only, tenant-aware audit log: who did what, to which record, in which tenant.

Activity logs are built for timelines, not for audit: no tenant column, a single "causer", and rows anyone can edit. This package records the tenant, the actor and its guard, the impersonator and the change, and makes every entry immutable, at the model level and with database triggers.

  • Polymorphic tenant, actor, impersonator and subject
  • Immutable rows enforced by PostgreSQL, MySQL/MariaDB and SQLite triggers
  • Automatic diff for Eloquent models, hidden attributes kept out
  • Request context middleware: actor, guard, request id, ip
  • Retention policy contract and audit-log:prune command
composer require vimatech/laravel-audit-log