PHPackages                             larium/framework - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Framework](/categories/framework)
4. /
5. larium/framework

ActiveLibrary[Framework](/categories/framework)

larium/framework
================

A PSR-15 framework.

1.1.0(2mo ago)41.2k1MITPHPPHP ^8.2|^8.3|^8.4CI passing

Since Dec 8Pushed 2mo ago1 watchersCompare

[ Source](https://github.com/Larium/framework)[ Packagist](https://packagist.org/packages/larium/framework)[ RSS](/packages/larium-framework/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (4)Dependencies (16)Versions (21)Used By (0)

PSR-15 Framework
================

[](#psr-15-framework)

A lightweight PSR-15 compliant framework for building HTTP applications with middleware support and dependency injection.

Requirements
------------

[](#requirements)

- PHP 8.2, 8.3, or 8.4
- Composer
- Docker (for development environment)

Installation
------------

[](#installation)

### As a Composer Package (Recommended)

[](#as-a-composer-package-recommended)

Install the framework as a dependency in your project:

```
composer require larium/framework
```

### Development Setup

[](#development-setup)

If you want to contribute to the framework or run it locally:

1. **Clone the repository:**

    ```
    git clone git@github.com:Larium/framework.git
    cd framework
    ```
2. **Install dependencies:**

    ```
    composer install
    ```

Development Environment
-----------------------

[](#development-environment)

This project uses Docker for consistent development environments across different PHP versions.

### Using Make Commands

[](#using-make-commands)

The project includes several make commands for common development tasks:

#### Docker Environment Setup

[](#docker-environment-setup)

- `make docker-build` - Build Docker image for PHP 8.4
- `make docker-build-8.3` - Build Docker image for PHP 8.3
- `make docker-build-8.2` - Build Docker image for PHP 8.2

#### Dependency Management

[](#dependency-management)

- `make composer-update` - Update dependencies using PHP 8.4 Docker container
- `make composer-update-8.3` - Update dependencies using PHP 8.3 Docker container
- `make composer-update-8.2` - Update dependencies using PHP 8.2 Docker container

#### Testing

[](#testing)

- `make run-tests` - Run tests using PHP 8.4 Docker container
- `make run-tests-8.3` - Run tests using PHP 8.3 Docker container
- `make run-tests-8.2` - Run tests using PHP 8.2 Docker container

### Manual Setup (without Docker)

[](#manual-setup-without-docker)

If you prefer to work without Docker:

1. **Install PHP 8.2+** with required extensions:

    - bcmath
    - zip
    - xdebug (for development)
2. **Install Composer** if not already installed:

    ```
    curl -sS https://getcomposer.org/installer | php
    sudo mv composer.phar /usr/local/bin/composer
    ```
3. **Install dependencies:**

    ```
    composer install
    ```
4. **Run tests:**

    ```
    ./vendor/bin/phpunit tests/
    ```

Usage Example
-------------

[](#usage-example)

```
