karelwintersky / arris
Karel Wintersky's Application µFramework
Requires
- php: ^8.2
- ext-curl: *
- ext-intl: *
- ext-json: *
- ext-mbstring: *
- ext-pdo: *
- ext-readline: *
- ext-simplexml: *
- karelwintersky/arris.config: ^1
- psr/log: *
Requires (Dev)
- phpunit/phpunit: ^10
- predis/predis: ^2.0
- scrutinizer/ocular: ^1.9
- squizlabs/php_codesniffer: ^3.6
- symfony/var-dumper: ^5.4
- symfony/yaml: ^5.4
Suggests
- karelwintersky/arris.cli: Arris µFramework - CLIConsole helper
- karelwintersky/arris.entity: Arris µFramework: Entity Types
- karelwintersky/arris.entity.path: Arris µFramework: Path builder
- karelwintersky/arris.helpers: Arris µFramework: helpers
- karelwintersky/arris.logger: Arris µFramework: AppLogger class
- karelwintersky/arris.presenter: Arris µFramework: Presenter engine
- karelwintersky/arris.request: Arris µFramework: Fluent request data reader (standalone)
- karelwintersky/arris.router: Arris µFramework: AppRouter class
- karelwintersky/arris.toolkit.cli-console: Arris µFramework - CLIConsole helper
- league/csv: CSV data manipulation made easy in PHP
- nette/utils: Various helpers
- php-sage/sage: Sage - Insightful PHP debugging assistant, pretty replacement for var_dump() and debug_backtrace().
- psr/container: ^2.0
- psr/simple-cache: ^3.0
- ramsey/collection: *
- sabre/event: sabre/event is a library for lightweight event-based programming (more complexity than Arris/Hook)
- symfony/string: Symfony String component
- symfony/yaml: ^5.4
Provides
None
Conflicts
None
Replaces
None
- dev-master
- 2.203.0
- 2.202.0
- 2.201.0
- 2.200.0
- 2.116.0
- 2.113.0
- 2.111.0
- 2.110.0
- 2.109.0
- 2.108.0
- 2.104.0
- 2.103.0
- 2.102.5
- 2.102.3
- 2.101.0
- 2.100.0
- 2.99.27
- 2.99.26
- 2.17.0
- 2.16.0
- 2.15.0
- 2.13.0
- 2.12.0
- 2.11.0
- 2.10.0
- 2.9.0
- 2.8.1
- 2.8.0
- 2.7.1
- 2.7.0
- 2.6.1
- 2.5.1
- 2.4.0
- 2.3.0
- 2.2.0
- 2.1.1
- 2.1.0
- 2.0.9
- 2.0.2
- 2.0.1
- 2.0.0
- 1.80.0
- 1.74.0
- 1.73.0
- 1.72.0
- 1.71.0
- 1.70.2
- 1.70.0
- 1.65.0
- 1.63.0
- 1.62.1
- 1.62.0
- 1.61.0
- 1.60.0
- 1.59.0
- 1.58.0
- 1.57.0
- 1.56.0
- 1.55.0
- 1.54.10
- 1.54.9
- 1.54.0
- 1.53.0
- 1.52.0
- 1.51.0
- 1.50.0
- 1.49.0
- 1.47.2
- 1.47.0
- 1.42.0
- 1.41.1
- 1.40.0
- 1.39.3
- 1.39.2
- 1.39.0
- 1.38.2
- 1.38.0
- 1.37.1
- 1.37.0
- 1.34.8
- 1.34.7
- 1.34.6
- 1.34.0
- 1.33.0
- 1.32.0
- 1.31.0
- 1.22
- 1.21
- 1.20
- 1.19
- 1.18
- 1.17
- 1.16
- 1.14.1
- 1.14
- 1.13.1
- 1.13
- 1.12
- 1.7
- 1.6.3
- 1.6.2
- 1.6.1
- 1.6
- 1.5
This package is auto-updated.
Last update: 2026-09-09 18:07:06 UTC
README
Class collection for some my projects
Sub-packages
The Arris ecosystem is split into separate composer packages; each package is a
repository under /var/www.arris/ and ships its own AGENTS.md. Install the ones
you need: composer require karelwintersky/<package>.
Core
This package — arris — the framework core itself:
App singleton, AppErrorHandler, Hook events, Controllers\AbstractController,
global helpers, Core\Dot, PSR-16 compatible cache.
Companion core packages:
- arris.config — config reader/writer,
AppConfig.composer require karelwintersky/arris.config - arris.entity — entity types for the framework.
composer require karelwintersky/arris.entity - arris.entity.path — path builder.
composer require karelwintersky/arris.entity.path - arris.entity.url — URL builder.
composer require karelwintersky/arris.entity.url - arris.logger — application logger.
composer require karelwintersky/arris.logger - arris.router — application router.
composer require karelwintersky/arris.router - arris.cache — cache engine.
composer require karelwintersky/arris.cache - arris.catcher — exception catcher: error dump with call hierarchy or a safe stub.
composer require karelwintersky/arris.catcher - arris.presenter — presenter with lazy Smarty wrapper.
composer require karelwintersky/arris.presenter
Toolkits
- arris.toolkit.cli-console — CLI console helper.
composer require karelwintersky/arris.toolkit.cli-console - arris.toolkit.firewall — IP filtering.
composer require karelwintersky/arris.toolkit.firewall - arris.toolkit.mimetypes — MimeType ↔ extension resolver.
composer require karelwintersky/arris.toolkit.mimetypes - arris.toolkit.nanoredis — minimal Redis client.
composer require karelwintersky/arris.toolkit.nanoredis - arris.php-file-download — file download helper.
composer require karelwintersky/arris.php-file-download - arris.php-file-upload — file upload with validation and conversion.
composer require karelwintersky/arris.php-file-upload
// Добавление в конфиг App::factory()->addConfig([ 'smarty' => [ 'path_template' => self::$path_install->join('templates'), 'path_cache' => self::$path_install->join('cache') ] ]);
Global helpers config() / app()
Helpers config() and app() are not hard-bound to Arris\App — they use the
application class registered in the framework. This matters when your project has
its own app class extending Arris\App (e.g. App\App): without registration the
helpers would build a fresh Arris\App instance instead of touching yours.
Register your class once at bootstrap, before any helper call:
use Arris\App; use App\App as MyApp; MyApp::setApplicationClass(MyApp::class); // ... или как зарегистрированный инстанс-класс App::setApplicationClass(MyApp::class); config('database.host'); // теперь читает конфиг MyApp-инстанса app(); // возвращает MyApp-инстанс (соблюдение singleton)
The given class must extend Arris\App, otherwise RuntimeException is thrown.
If nothing was registered (setApplicationClass() was not called) the helpers fall
back to Arris\App.