PHPackages                             joonika/joonika - 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. joonika/joonika

ActiveFramework[Framework](/categories/framework)

joonika/joonika
===============

light open source php framework

v0.1.3(4y ago)43851MITJavaScriptPHP &gt;=7

Since Aug 7Pushed 4y ago1 watchersCompare

[ Source](https://github.com/joonika/joonika)[ Packagist](https://packagist.org/packages/joonika/joonika)[ Docs](https://github.com/joonika/joonika)[ RSS](/packages/joonika-joonika/feed)WikiDiscussions master Synced 4d ago

READMEChangelog (10)Dependencies (17)Versions (17)Used By (0)

Joonika Lite PHP Framework
--------------------------

[](#joonika-lite-php-framework)

### Install

[](#install)

```
curl -s https://get.joonika.com | bash && sh installer
```

### During install Notes

[](#during-install-notes)

if your domain has hosted on another port than 80,443 for domain answer please fill domain.com:9090
if you want to create file for that domain:port: just replace colon with underline(\_)
domain.com\_9090.yaml

### joonika toolkit

[](#joonika-toolkit)

#### Top instruction

[](#top-instruction)

```
php joonika app:init
```

for initial new website

```
php joonika app:update
```

update assets for public folder -&gt; publish

structure
---------

[](#structure)

after update public your project this structure will be shown

#### root folders:

[](#root-folders)

```
config/websites // location of site config > *.yaml
```

```
config/SortMiddleWare.php // order of middlewares run -> if not set by folder order
```

```
modules/ // modules location

```

storage folder auto generated by app:update

```
storage/files
storage/langs
storage/logs
storage/views

```

```
modules/ // modules location

```

in themes folder you can use every theme for multi domain websites

### module structure

[](#module-structure)

```
assets/*     // static assets files for using by theme or Views
Controllers/*
Traits/*
src/*
Views/*

```

### controller methods

[](#controller-methods)

you can use two method (post|get)

```
    public function get_index(){

    }
    public function post_index(){

    }
```

### calling by url

[](#calling-by-url)

Example:
GET: localhost/en/sample/inquiry/mobile

this url parse:
localhost: **domain**
en: **language slug**
sample: **module**
inquiry: **controller**
mobile: **method**

```
namespace Modules\sample\Controllers;

class inquiry extends Controller

    public function get_mobile(){

    }
}
```

Controller Available Methods
----------------------------

[](#controller-available-methods)

### Permission Check

[](#permission-check)

```
$this->hasPermission('users');
```

### Validate Check

[](#validate-check)

```
$this->validate(['q|required,min:10,max:11']);
```

**Available Methods:**

required

max:(value) (Ex: max:10)

min:(value) (Ex: min:10)

---

### Response

[](#response)

#### Success

[](#success)

```
this->setResponseSuccess($data,$success=true);
// you can response success as false in 200 (http status success)
```

```
{
    "success": true,
    "data": [

    ]
}
```

#### Error

[](#error)

```
this->setResponseError($alert,$exit=false,$code=null);
// $alert text can be string or array
// if(array)
$alert = [
    "message"=>"sample message",
    "source"=>"sample message", // where happend -> file path or controller name or field name
    "data"=>"sample message", // string or array
];
// if you want to exit code and not continue after
// you can change http status code else 200
```

```
{
    "success": false,
    "errors": [
        {"message":"sample message"}
    ]
}
```

\###[TWIG](doc/tiwg.md)

###  Health Score

26

—

LowBetter than 43% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity17

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity49

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 97.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 ~3 days

Recently: every ~8 days

Total

13

Last Release

1705d ago

### Community

Maintainers

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

---

Top Contributors

[![mnjadidi](https://avatars.githubusercontent.com/u/5602220?v=4)](https://github.com/mnjadidi "mnjadidi (83 commits)")[![m-jooibar](https://avatars.githubusercontent.com/u/42513136?v=4)](https://github.com/m-jooibar "m-jooibar (2 commits)")

---

Tags

phpframeworklibrarymvcMVC Frameworkjoonikajoonika framework

###  Code Quality

TestsPHPUnit

### Embed Badge

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

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

###  Alternatives

[shopware/platform

The Shopware e-commerce core

3.3k1.5M3](/packages/shopware-platform)[laravel/framework

The Laravel Framework.

34.6k509.9M17.0k](/packages/laravel-framework)[prestashop/prestashop

PrestaShop is an Open Source e-commerce platform, committed to providing the best shopping cart experience for both merchants and customers.

9.0k15.4k](/packages/prestashop-prestashop)[shopware/core

Shopware platform is the core for all Shopware ecommerce products.

595.2M386](/packages/shopware-core)[ec-cube/ec-cube

EC-CUBE EC open platform.

78527.0k1](/packages/ec-cube-ec-cube)[concrete5/core

Concrete core subtree split

19159.3k48](/packages/concrete5-core)

PHPackages © 2026

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