Weave Code
Weaver
Helps Laravel developers discover, compare, and choose open-source packages. See popularity, security, maintainers, and scores at a glance to make better decisions.
Feedback
Share your thoughts, report bugs, or suggest improvements.
Subject
Message

Subkit Laravel Package

karpovigorok/subkit

SubKit is a lightweight subscription toolkit for Laravel. Define plans and features, attach subscribers, run trials, and gate access with simple middleware — all through a clean, framework-native API with no billing provider lock-in. Ships with migrations, models, and Blade helpers.

View on GitHub
Deep Wiki
Context7

Technical Evaluation

  • Architecture fit: Best suited to a Laravel monolith already using Stripe Billing through Cashier and Filament for back-office administration. The package appears to accelerate plan/subscription CRUD and admin workflows, but it introduces package-owned domain models, migrations, and Filament UI coupling. It is a poor fit if billing is a core differentiator, requires multi-processor support, complex usage/seat billing, tax/invoicing, enterprise contracts, or a headless/API-first billing model.
  • Integration feasibility: Likely feasible for greenfield or early-stage SaaS: install via Composer, publish config/migrations, register the Filament plugin, configure Cashier and Stripe keys/webhooks, map Stripe products/prices, and pilot with test-mode subscriptions. Brownfield adoption is harder: existing subscriptions, entitlement mappings, schema collisions, tenant scoping, and admin permissions must be reconciled before rollout.
  • Technical risk: Low adoption signals are material: 37 stars, a low package score, and likely single-maintainer risk. Version compatibility across Laravel, Filament, Cashier, PHP, and Stripe API versions must be verified. Schema ownership, webhook reliability, authorization in Filament, test coverage, release cadence, and long-term maintenance are open risks. The stated last-release date should be validated against the repository because it appears out of sequence with normal release history. Treat the package as an accelerator, not a billing platform, unless the team is prepared to fork and own it.
  • Key questions: Which Laravel/Filament/Cashier/PHP versions are supported? Does it wrap Cashier or replace/duplicate its models? Does it support multi-tenancy and custom billable models? How are Stripe webhooks verified and made idempotent? Does it handle trials, coupons, proration, seats, usage, tax, invoices, refunds, and payment failures? How are existing subscriptions migrated? Are Filament resources authorized by role/tenant? What is the test/CI coverage? What is the maintainer responsiveness and upgrade policy? Can billing data be exported and the package removed cleanly?

Integration Approach

  • Stack fit: Proceed only if the application is already committed to Laravel + Stripe/Cashier + Filament. Do not add Filament solely for this package. For simple SaaS plans, the fit is reasonable. For complex pricing, regulated billing, or multi-tenant enterprise requirements, use Cashier directly or a more established billing platform and keep this package out of the critical path.
  • Migration path: Run a disposable proof of concept first. Then install in staging, publish migrations/config, configure Stripe test mode, validate webhooks, seed plans/prices, and map users or tenants to billable entities. For existing billing, dual-run and compare entitlements before cutover. Roll out to one plan and one cohort, with a documented rollback to Cashier-native or manual billing.
  • Compatibility: Pin exact versions and verify Composer constraints for Laravel, Filament, Cashier, PHP, and database drivers. Check for migration/table-name collisions and whether the package supports custom billable models. Confirm Filament panel authorization, tenancy, and policy integration. Validate queue, webhook endpoint, Stripe API version, and test-clock behavior.
  • Sequencing: Define the billing domain model and entitlement contract before exposing UI. Configure Stripe products/prices and webhook handling next. Add role-based admin access and audit logging. Then pilot the Filament UI with internal staff. Resolve tenant scoping and data migration before broad rollout. Establish a fork/vendor strategy if the package becomes operationally critical.

Operational Impact

  • Maintenance: Expect to own dependency upgrades across Laravel, Filament, Cashier, and Stripe APIs. Low adoption means the team should be prepared to read source, patch issues, and possibly fork under MIT. Assign a named owner, track releases/security advisories, and vendor the package if it becomes critical.
  • Support: Community or single-maintainer support is unlikely to provide enterprise SLAs. Create internal runbooks for refunds, failed payments, plan changes, webhook replay, and reconciliation. Customer support and finance will need training on the Filament admin workflows. Stripe support covers payment rails, not package behavior.
  • Scaling: Stripe and the application database will usually be the bottleneck, not this package. Filament admin queries can degrade with large subscription tables; require pagination, indexes, and possibly read replicas. Webhook processing should be queued and idempotent. High-volume usage billing and multi-tenant scoping need explicit validation.
  • Failure modes: Missed or failed Stripe webhooks can cause entitlement drift; require retries, dead-letter handling, and reconciliation jobs. Package upgrades can break Filament pages or migrations. Misconfigured price IDs can grant the wrong plan. Authorization gaps can expose billing data. Duplicate subscriptions can result from non-idempotent operations. Tax, currency, proration, and refund errors are possible. Maintainer abandonment is a real exit risk.
  • Ramp-up: A Laravel/Filament developer can likely spike this in hours and productionize simple plans in days. Finance, compliance, and support readiness take longer. Gate adoption on a one-to-two-week proof of concept, code review, migration dry run, webhook tests, security review, and a clear rollback plan rather than star count or marketing claims.
Weaver

How can I help you explore Laravel packages today?

Conversation history is not saved when not logged in.
Prompt
Add packages to context
No packages found.
socialdept/atp-orm
cboxdk/laravel-assistant-client
socialdept/atp-resolver
socialdept/tenant-domains
tautvydasr/blade-class-names
socialdept/color-scales
maherelgamil/controller
coleus/widgets
coleus/table
coleus/users
coleus/music
coleus/health
coleus/calendar
coleus/notes
coleus/support
coleus/settings
coleus/apps
seampact/laravel
emmyconceptng/laravel-ng-postcode
jjsquady/round-robin