- How do I install kami/icobench-client in a Laravel application?
- Install it with composer require kami/icobench-client, then publish the package config and set your API credentials via environment variables. On Laravel 5.5 and later the service provider and facade are auto-discovered, so no manual registration is required. Be aware the package was last released in June 2018 and is expected to pin Laravel 5.x-era constraints, so a modern install will likely need constraint edits or a fork before Composer resolves.
- Does kami/icobench-client work with Laravel 10 or Laravel 11?
- No. The package is frozen at a 2018-06-02 release, which almost certainly targets Laravel 5.x and Guzzle 6.x. Installing it on Laravel 10 or 11 typically requires --ignore-platform-reqs, manual edits to its composer.json constraints, or a fork, and there is no upstream maintainer to merge a fix. Budget for a fork from day one rather than expecting a clean install.
- Is the ICObench API still online?
- No. ICObench was a 2017-2018 ICO ratings service and has been offline for years. Every outbound request from this client is expected to fail at the DNS, TLS, or HTTP layer, and no amount of client-side debugging will fix a parked domain. The wrapper structure is clean, but the service it talks to no longer answers.
- How do I configure API credentials and a custom endpoint for this client?
- Credentials are supplied through the published config file, typically backed by environment variables, and the client folds them into the HTTP transport so you never build auth headers by hand. The base URI must be overridable for the package to be usable against a mirror or internal endpoint. If the published config does not expose a base URL override, forking the repository is mandatory.
- Can I use kami/icobench-client outside Laravel in a plain PHP project?
- Yes. The underlying client is framework-agnostic; the service provider and facade are optional Laravel conveniences layered over a bound client instance. It uses a PSR-compatible HTTP transport, so you can instantiate it directly with a compatible Guzzle or PSR client in a standalone script. In practice the endpoints it targets are unreachable, so standalone use is only viable against a mirror or recorded fixture.
- How do I unit test code that uses kami/icobench-client?
- Because the transport is PSR-compatible, you can swap Guzzle for a mock handler or fake HTTP client and assert on the requests the client builds. The cleaner pattern is to code against your own gateway interface and bind the ICObench client as one implementation, so tests never touch the network. With the upstream service dead, recorded fixtures are the only realistic data source.
- What data can this client retrieve: ICO listings, ratings, and reviews?
- Its request methods map one-to-one onto ICObench REST endpoints covering ICO listings, expert ratings, ICO profiles, and reviews. Each call returns the decoded API response, so the payload shape mirrors the original ICObench API documentation. If the endpoint is gone, the repository itself is your best reference for request signatures and response structure.
- Is kami/icobench-client still maintained?
- No. The last release was 2018-06-02, with zero releases in more than seven years, roughly 3 GitHub stars, no dependents, and a single maintainer. It is MIT licensed, so it is effectively abandoned but still legally forkable. Every transitive vulnerability, PHP version incompatibility, and security patch becomes yours to carry.
- What are better alternatives to kami/icobench-client for crypto market data in Laravel?
- For live token and market data, a short first-party Guzzle adapter against CoinGecko, CoinMarketCap, CryptoCompare, or Messari will meet the same requirement at lower total cost. For historical or archival ICObench data, a static dataset is a better fit than an HTTP client. The gateway pattern the package demonstrates is still worth copying: config-driven credentials, an injected PSR transport, and an interface you own.
- Should I remove kami/icobench-client from a legacy Laravel codebase or fork it?
- Remove it unless a concrete requirement demands that specific data. If a genuine requirement exists, fork into an internal namespace, strip the Laravel service provider in favour of a self-contained client bound behind an interface, and repoint the base URI at an endpoint you actually control. Treat the original repository as reference material for request signatures and response shape, not as a Composer dependency to pin.