Support Adapter is a lightweight package that provides a Guzzle HTTP Adapter with a flexible approach for both CodeIgniter 4 and standalone PHP projects.
Its main goal is to simplify HTTP communication with external APIs through the PSR-7 and PSR-18 standards, keeping your code clean, consistent, and testable.
- Install via Composer
composer require reactmore/support-adapteruse Reactmore\SupportAdapter\Adapter\Guzzle; use Reactmore\SupportAdapter\Adapter\Auth\None; // Auth adapter (no authentication) $auth = new None(); // Initialize the adapter $adapter = new Guzzle($auth, 'https://api.example.com/'); // Perform a GET request $response = $adapter->get('users'); // Get response body $data = json_decode($response->getBody()->getContents(), true); print_r($data);With Support Adapter, you can register a service in app/Config/Services.php for dependency injection into your CodeIgniter 4 project:
public static function apiClient($getShared = true) { if ($getShared) { return static::getSharedInstance('apiClient'); } $auth = new \Reactmore\SupportAdapter\Adapter\Auth\None(); return new \Reactmore\SupportAdapter\Adapter\Guzzle($auth, 'https://api.example.com/'); }Contributions are always welcome!
If you’d like to improve Support Adapter, here’s how you can help:
1. Fork the repository 2. Create a new feature branch (git checkout -b feature/my-new-feature) 3. Commit your changes (git commit -m 'Add new feature') 4. Push to the branch (git push origin feature/my-new-feature) 5. Open a Pull Request