PHPackages                             ixaya/manager - 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. ixaya/manager

ActiveLibrary[Framework](/categories/framework)

ixaya/manager
=============

An HMVC Framework, Superset of CodeIgniter

1.4.0(3mo ago)32.9k↓50%3MITPHPPHP ^8.2CI passing

Since Sep 14Pushed 3mo ago3 watchersCompare

[ Source](https://github.com/Ixaya/Manager)[ Packagist](https://packagist.org/packages/ixaya/manager)[ RSS](/packages/ixaya-manager/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (10)Dependencies (3)Versions (20)Used By (0)

[![](https://camo.githubusercontent.com/60b2689473403fc8a0720094c5e33724c2b6c99b79bd8ebc7252ef70d9dfa328/68747470733a2f2f7777772e69786179612e636f6d2f6173736574732f66726f6e74656e642f64656661756c742f696d616765732f6c6f676f5f69786179612e706e67)](https://camo.githubusercontent.com/60b2689473403fc8a0720094c5e33724c2b6c99b79bd8ebc7252ef70d9dfa328/68747470733a2f2f7777772e69786179612e636f6d2f6173736574732f66726f6e74656e642f64656661756c742f696d616765732f6c6f676f5f69786179612e706e67)

Ixaya / Manager
===============

[](#ixaya--manager)

HMVC Code Igniter based Framework for creating backends and complete websites

About this package
------------------

[](#about-this-package)

**Ixaya Manager** is a set of files, libraries, and modules that allows you to use Code Igniter to build a Backend with Login or a Complete Website if you prefer.

### Features

[](#features)

- CodeIgniter upgradeable through Composer (always use latest version)
- Run the project (a webserver) using a shell script (no need to install Apache or Nginx during development (`http://localhost:8000`)
- HMVC
- Diferent folders for diferent modules: `modules/admin`, `modules/frontned`, etc.
- Support for MySQL, PostgreSQL, MSSQL, Sqlite, or any database that is supported in CodeIgniter 3.
- Different Database connection/technology per Model. (you can have a model that loads a Database from Postgres and another Model that loads a Database from MySQL.
- Responsive Theme (SB Admin 2 Template for the Backend)
- Login protected Admin module
- Examples to create a REST API
- Examples to send Native Apple Push Notifications or use Firebase for Android
- Production Tested
- try { } catch { } login for errors (an improvement over CodeIgniter's)
- Secured Application Folder from Public.

How to Install
--------------

[](#how-to-install)

To Install **Manager** you need to

### Step by Step guide on OSX

[](#step-by-step-guide-on-osx)

- Install Homebew `/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"`
- Install Git `brew install git`
- Install PHP (5.4+) `brew install php54` or `brew install php72`
- Install Composer `brew install composer`
- Clone Repository `git clone https://github.com/Ixaya/Manager.git`
- Update packages using composer `composer install`
- Run Server `sh bin/server.sh`

### Step by Step guide on Windows

[](#step-by-step-guide-on-windows)

- Install Git `https://git-scm.com/download/win`
- Install PHP (5.4+) `https://windows.php.net/download/`
- Install Composer `https://getcomposer.org/download/`
- Clone Repository `git clone https://github.com/Ixaya/Manager.git`
- Update packages using composer `composer install`

PHP Validations
---------------

[](#php-validations)

Run static code analysis using PHPStan:

- **Standard analysis:**

    ```
    ./vendor/bin/phpstan analyse
    ```
- **With increased memory limit:**

    ```
    ./vendor/bin/phpstan analyse --memory-limit=512M
    ```

> **Tip:** Use the memory limit option if you encounter out-of-memory errors during analysis.

**\## PHP Unit Testing**Run unit tests using PHPUnit:

- **Run all tests:**

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

- **Run specific test file:**

```
./vendor/bin/phpunit tests/Unit/ExampleTest.php
```

- **Run tests with verbose output:**

```
./vendor/bin/phpunit --verbose
```

- **Run tests in specific group/category:**

```
./vendor/bin/phpunit --group unit
```

> **Tip:** Use `--testdox` flag for readable test output, or `--stop-on-failure` to halt execution on the first failed test.

MsgPack Support
---------------

[](#msgpack-support)

This package can use MsgPack for faster cache and payload serialization. While the native PHP MsgPack extension (installed via `pecl` or system packages) offers the best performance, not all servers have it available.

### 1. Install the PHP MsgPack Fallback Library

[](#1-install-the-php-msgpack-fallback-library)

Add the pure PHP implementation to your project:

```
composer require rybakit/msgpack
```

### 2. Enable the Composer Patches Plugin

[](#2-enable-the-composer-patches-plugin)

If your project doesn't already have `composer-patches` installed:

```
composer require cweagans/composer-patches
```

### 3. Apply the PHP 8.1+ Compatibility Patch

[](#3-apply-the-php-81-compatibility-patch)

Add the following configuration to your root `composer.json`:

```
{
  ...
    "extra": {
        "patches": {
            "rybakit/msgpack": {
                "Fix PHP 8.1 chr() deprecation": "vendor/ixaya/manager/patches/msgpack-php81-fix.patch"
            }
        }
    }
  ...
}
```

### 4. Apply the Changes

[](#4-apply-the-changes)

Run the following command to install dependencies and apply patches:

```
composer install
```

Docker Setup
------------

[](#docker-setup)

This project can be run using Docker with different configurations for development and production environments.

### Configuration Files

[](#configuration-files)

The project uses multiple Docker Compose files:

- `docker-compose.yml` - Base configuration (shared settings)
- `docker-compose.dev.yml` - Development overrides (code mounting, live changes)
- `docker-compose.prod.yml` - Production overrides (no volumes, optimized)

### Building and Running

[](#building-and-running)

#### Basic Setup (Base Configuration Only)

[](#basic-setup-base-configuration-only)

```
# Build
docker-compose build

# Start
docker-compose up -d

# Rebuild and start (if Dockerfile changed)
docker-compose up -d --build

# Stop
docker-compose down
```

#### Development Mode

[](#development-mode)

Uses live code mounting - changes are reflected immediately without rebuilding.

```
# Start
docker-compose -f docker-compose.yml -f docker-compose.dev.yml up -d app
```

#### Production Mode

[](#production-mode)

Uses code copied into the image - requires rebuild for code changes.

```
# Start
docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d app
```

### Useful Commands

[](#useful-commands)

```
# View all logs
docker-compose logs -f

# View logs for specific service
docker-compose logs -f app

# Enter the app container
docker-compose exec app bash
```

Application Structure
---------------------

[](#application-structure)

### Project Setup

[](#project-setup)

We recommend creating a root folder named `app` and checking out the project inside it. The framework follows an HMVC (Hierarchical Model-View-Controller) architecture based on CodeIgniter.

### Root Directory

[](#root-directory)

```
app/
├── composer.json
├── application/
├── public/
├── private/
├── bin/
└── patches/

```

### Public Directory

[](#public-directory)

The `public/` folder contains all publicly accessible files served by the web server.

```
public/
├── index.php                    # Application entry point
├── media/                       # User-uploaded files
└── assets/                      # Static assets organized by module
    └── {module}/
        ├── js/                  # JavaScript files
        ├── css/                 # Stylesheets
        ├── images/              # Images
        └── videos/              # Video files

```

### Application Directory

[](#application-directory)

The `application/` folder contains the core application code and global resources.

```
application/
├── cache/                       # Application cache
├── config/                      # Application configuration files
├── controllers/                 # Global controllers
├── database/                    # Database configuration
├── helpers/                     # Global helper functions
├── hooks/                       # Global hooks
├── language/                    # Global language files
├── libraries/                   # Global libraries
├── migrations/                  # Database migrations
├── models/                      # Global models
├── modules/                     # HMVC modules (see below)
├── third_party/                 # Third-party libraries
└── views/                       # Global views

```

### Modules (HMVC Structure)

[](#modules-hmvc-structure)

The framework uses HMVC architecture, allowing you to organize code into self-contained modules. Each module can have its own MVC structure and resources.

```
application/modules/
└── {module}/
    ├── controllers/             # Module-specific controllers
    ├── models/                  # Module-specific models
    ├── migrations/              # Module-specific migrations
    ├── views/                   # Module-specific views
    ├── libraries/               # Module-specific libraries
    ├── helpers/                 # Module-specific helpers
    ├── language/                # Module-specific language files
    └── config/                  # Module-specific configuration

```

**Benefits of HMVC:**

- **Modularity**: Each module is self-contained and reusable
- **Organization**: Better code organization for large applications
- **Separation**: Modules can be developed and tested independently
- **Scalability**: Easy to add, remove, or replace modules

**Example Module Structure:**

```
application/modules/blog/
├── controllers/
│   ├── Blog.php
│   └── Admin.php
├── models/
│   └── Blog_model.php
├── views/
│   ├── index.php
│   └── detail.php
└── libraries/
    └── Blog_helper.php

```

### Additional Directories

[](#additional-directories)

- **`bin/`** - Command-line scripts and utilities
- **`private/`** - Private files not accessible via web
- **`patches/`** - Compatibility patches for dependencies

###  Health Score

55

—

FairBetter than 98% of packages

Maintenance82

Actively maintained with recent releases

Popularity24

Limited adoption so far

Community17

Small or concentrated contributor base

Maturity83

Battle-tested with a long release history

 Bus Factor1

Top contributor holds 53.6% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~169 days

Recently: every ~114 days

Total

17

Last Release

94d ago

Major Versions

0.5.5 → 1.0.02024-08-27

PHP version history (4 changes)0.1PHP ^5.4 || ^7.0

0.5.4PHP ^5.4 || ^7.0 || ^8.0

1.0.0PHP ^7.4 || ^8.0

1.4.0PHP ^8.2

### Community

Maintainers

![](https://www.gravatar.com/avatar/ef058e6a0a80078f558d66b794c7e6c82e5c31f87a5d69e583f5c4bd895b2277?d=identicon)[gumoz](/maintainers/gumoz)

![](https://www.gravatar.com/avatar/c82e7e555c24417b77a3216019b35c5be442b72e328297d2449220c3201e32f7?d=identicon)[humole](/maintainers/humole)

---

Top Contributors

[![humole](https://avatars.githubusercontent.com/u/221601?v=4)](https://github.com/humole "humole (149 commits)")[![gumoz](https://avatars.githubusercontent.com/u/48006?v=4)](https://github.com/gumoz "gumoz (66 commits)")[![dependabot[bot]](https://avatars.githubusercontent.com/in/29110?v=4)](https://github.com/dependabot[bot] "dependabot[bot] (55 commits)")[![kmartinezabarca](https://avatars.githubusercontent.com/u/78579850?v=4)](https://github.com/kmartinezabarca "kmartinezabarca (6 commits)")[![ArgelOrtiz](https://avatars.githubusercontent.com/u/34045316?v=4)](https://github.com/ArgelOrtiz "ArgelOrtiz (2 commits)")

###  Code Quality

TestsPHPUnit

Static AnalysisPHPStan

Type Coverage Yes

### Embed Badge

![Health badge](/badges/ixaya-manager/health.svg)

```
[![Health](https://phpackages.com/badges/ixaya-manager/health.svg)](https://phpackages.com/packages/ixaya-manager)
```

###  Alternatives

[laravel/passport

Laravel Passport provides OAuth2 server support to Laravel.

3.4k85.0M532](/packages/laravel-passport)[nolimits4web/swiper

Most modern mobile touch slider and framework with hardware accelerated transitions

41.8k177.2k1](/packages/nolimits4web-swiper)[laravel/dusk

Laravel Dusk provides simple end-to-end testing and browser automation.

1.9k36.7M259](/packages/laravel-dusk)[laravel/prompts

Add beautiful and user-friendly forms to your command-line applications.

712181.8M596](/packages/laravel-prompts)[cakephp/chronos

A simple API extension for DateTime.

1.4k47.7M121](/packages/cakephp-chronos)[laravel/pail

Easily delve into your Laravel application's log files directly from the command line.

91545.3M590](/packages/laravel-pail)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
