PHPackages                             vani8987/mini-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. vani8987/mini-framework

ActiveLibrary[Framework](/categories/framework)

vani8987/mini-framework
=======================

Небольшой PHP-фреймворк с роутингом, запросами, ответами, доступом к базе данных, миграциями и логированием.

1.2.2(2w ago)010MITPHP &gt;=8.0

Since Jun 21Compare

[ Source](https://github.com/vani8987/mini-framework-in-php)[ Packagist](https://packagist.org/packages/vani8987/mini-framework)[ RSS](/packages/vani8987-mini-framework/feed)WikiDiscussions Synced 2w ago

READMEChangelog (4)Dependencies (2)Versions (5)Used By (0)

Mini Framework
==============

[](#mini-framework)

Небольшой PHP-фреймворк с роутингом, JSON-ответами, запросами, PDO, миграциями, логированием и сессионной авторизацией.

Авторизация
-----------

[](#авторизация)

Фреймворк включает авторизацию на основе сессий, защищённые маршруты и контракт модели для поиска пользователей. Описание находится в [документации по авторизации](docs/auth.md).

Рабочая демонстрация находится в `app/Controllers/AuthController.php`, `Routes/api.php` и `database/Migrations/002_CreateUsers.php`.

`app/Middleware/AuthMiddleware.php` содержит проверку авторизованного пользователя. Метод `userAuth()` берёт `auth_user_id` из сессии, проверяет наличие пользователя в таблице `users` и возвращает `true` или `false`.

Возможности
-----------

[](#возможности)

- `Router` для URL-маршрутов с параметрами;
- route-level middleware для проверок до вызова контроллера;
- `Request` для данных из `POST`, query-параметров, cookie, сессии и JSON;
- `Response` для JSON-ответов;
- `ConnectDB`, `CRUD` и `CreateTable` для MySQL через PDO;
- `MigrationManager` с историей миграций;
- `Logger` с файлами в `log/`.

CORS
----

[](#cors)

Точка входа разрешает запросы с любого origin, чтобы пример API было удобно проверять через браузер. Перед production-развёртыванием замени `*` в `public/index.php` на адреса разрешённых клиентов.

Установка для разработки
------------------------

[](#установка-для-разработки)

```
composer install
```

После добавления новых классов или изменения PSR-4 namespace обнови autoload:

```
composer dump-autoload
```

Создай `.env` из `.env.example`, укажи параметры MySQL и создай базу данных. После этого можно запускать миграции:

```
php command.php migrate:run
```

Повторный запуск применит только новые миграции.

Локальный сервер:

```
php command.php serve
```

Установка через Composer
------------------------

[](#установка-через-composer)

новый API-проект можно создать одной командой:

```
composer create-project vani8987/mini-framework project-name
```

Демонстрационное API авторизации
--------------------------------

[](#демонстрационное-api-авторизации)

Сначала запусти миграции, которые создадут таблицу `users`:

```
php command.php migrate:run
```

В консоли браузера зарегистрируй пользователя:

```
fetch('/auth/register', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    email: 'user@example.com',
    password: 'secret',
  }),
})
  .then((response) => response.json())
  .then((data) => console.log(data));
```

Выполни вход:

```
fetch('/auth/login', {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    email: 'user@example.com',
    password: 'secret',
  }),
})
  .then((response) => response.json())
  .then((data) => console.log(data));
```

Получи данные текущего пользователя:

```
fetch('/auth/me')
  .then((response) => response.json())
  .then((data) => console.log(data));
```

Когда JavaScript и API работают на одном домене и порту, браузер сам отправит cookie сессии после входа.

Доступны маршруты `POST /auth/register`, `POST /auth/login`, `GET /auth/me` и `POST /auth/logout`.

Структура
---------

[](#структура)

```
Core/                 Классы фреймворка
app/                  Контроллеры API-приложения
Routes/               Регистрация маршрутов приложения
database/Migrations/  Миграции приложения
docs/                 Документация классов
log/                  Логи времени выполнения
public/               HTTP-точка входа

```

Подробности находятся в [docs/README.md](docs/README.md).

Лицензия
--------

[](#лицензия)

Проект распространяется по лицензии [MIT](LICENSE).

DI-контейнер и bootstrap приложения описаны в [docs/container.md](docs/container.md).

###  Health Score

39

—

LowBetter than 84% of packages

Maintenance97

Actively maintained with recent releases

Popularity5

Limited adoption so far

Community2

Small or concentrated contributor base

Maturity42

Maturing project, gaining track record

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 ~9 days

Total

4

Last Release

16d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/46633bd3c4be18059e56dd35d543ae28dfa1d3ecc881a2fa122fbbbb052caab2?d=identicon)[vani8987](/maintainers/vani8987)

---

Tags

phpapiframeworkrouterpdo

### Embed Badge

![Health badge](/badges/vani8987-mini-framework/health.svg)

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

###  Alternatives

[laravel/framework

The Laravel Framework.

34.8k556.2M21.0k](/packages/laravel-framework)[zemit-cms/core

Build Phalcon REST APIs faster with database-first scaffolding, model relationships, eager loading, identity, permissions, CLI, and WebSocket support.

138.5k1](/packages/zemit-cms-core)

PHPackages © 2026

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