- Is ricbra/kissmetrics-bundle a Laravel package?
- No. It is a Symfony2 bundle that wires the KISSmetrics PHP client into Symfony's dependency injection container. It provides a config node for the API key and registers a tracking service for Symfony applications, not Laravel. Laravel's container, config repository, and package auto-discovery do not use any of that wiring.
- Can I install ricbra/kissmetrics-bundle in a Laravel application with Composer?
- You should not. The bundle targets Symfony2-era components and pins symfony/symfony to the ~2.x line, so Composer is likely to fail or force incompatible versions in a modern Laravel app. Even if it installed, Laravel would not consume the bundle's service definitions or configuration. Treat it as reference material rather than a dependency.
- What does the bundle actually add on top of the KISSmetrics PHP client?
- Its main contribution is Symfony integration: a configuration node for the API key, a registered service for the client, and bundle registration in AppKernel. The tracking behavior itself comes from the underlying ricbra/php-kissmetrics-api client. That means the only potentially reusable part in Laravel is the client, which must be evaluated separately.
- Which Laravel and PHP versions does this KISSmetrics bundle support?
- There is no Laravel support at all, and the bundle is built for an end-of-life Symfony major version. You need to inspect its Composer constraints, along with those of php-kissmetrics-api and its HTTP transport, to see which PHP versions can actually resolve. The default expectation is that they will not resolve cleanly against current Laravel and PHP versions.
- Can I use the KISSmetrics PHP client directly in Laravel without the bundle?
- Possibly, but assess ricbra/php-kissmetrics-api as a standalone dependency first. Check its PHP constraints, HTTP transport assumptions, TLS support, license, and transitive dependencies before adding it. If it is too old, implementing a thin adapter against the KISSmetrics HTTP API with Laravel's HTTP client and queue is usually safer.
- How should I integrate KISSmetrics analytics into Laravel properly?
- Define a small application-level AnalyticsClient contract with methods for identify, alias, record, set, and clear, and bind it in a service provider. Back it with configuration from environment variables and deliver events through queued jobs with retries and idempotency keys. Provide a no-op driver for local and test environments so product code never calls KISSmetrics directly.
- Is ricbra/kissmetrics-bundle safe to use in production?
- The project signals are poor: one star, no dependents, a single maintainer, and a target of an EOL Symfony major version. That generally means no security response, no compatibility patches, and undocumented behavior you must reverse-engineer from source. Kissmetrics' own API and account viability should also be confirmed, since a dormant SDK plus a dormant vendor compounds the risk.
- What are the alternatives to this Symfony KISSmetrics bundle for Laravel?
- The most flexible option is a Laravel-native adapter behind your own analytics interface, using the HTTP client and queue, optionally with a Segment-style router to avoid vendor lock-in. You can also evaluate a maintained vendor SDK with current Laravel support. Because the interface isolates delivery, you can swap drivers later without changing instrumentation.
- How do I test KISSmetrics tracking in Laravel without sending real events?
- Bind a fake or no-op implementation of your analytics contract in the test environment and assert that the expected identify, alias, record, and set calls were made. If delivery is queued, use Laravel's queue fakes and assert jobs were dispatched with the right payload. Keep a small contract test suite so any real adapter and any fake behave the same way.
- What KISSmetrics operations and PII concerns should I account for?
- Expect the standard operations: identify users, alias identities, record events, set properties, and clear identities, along with the _k, _p, and _n parameter conventions described by the client. Define your event taxonomy and required properties with stakeholders before instrumenting. Apply PII scrubbing and consent rules at the boundary, and avoid sending sensitive data in event names or property values.