Download the PHP package rosasurfer/ministruts without Composer
On this page you can find all versions of the php package rosasurfer/ministruts. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download rosasurfer/ministruts
More information about rosasurfer/ministruts
Files in rosasurfer/ministruts
Package ministruts
Short Description MVC micro framework inspired by Java Struts
License WTFPL
Informations about the package ministruts
MiniStruts
MVC micro framework for PHP
M - The basis of the model component is an ORM. The ORM is implemented as a "Data Mapper" and follows the "database first" approach. This approach is mainly designed for working with existing databases. The implementation requires neither code generation nor proxy classes (no surprises from code you didn't write). As long as tables have primary keys, any standard and non-standard database model can be connected and manually customized. Configuration uses pure PHP (no annotations or attributes). The ORM - especially the flexible configuration - was inspired by Hibernate.
V - The view component is realized by a layout engine which was inspired by the Tiles plugin for Java Struts. Pages can be composed using re-usable layouts and HTML fragments (a.k.a tiles). Both can be configured and extended as needed. The template language is pure PHP (no pre-compiling of HTML necessary).
C - The controller part covers application framework, configuration, service container, access control, caching, error handling and logging. The web stack of the framework was inspired by Java Struts 1. Version 1 had long been superseded by its successor and practically was no longer used. But in 2022 developers decided to revive it due to its simplicity and solidity, and to update it to current web standards. Long live Struts...
The project contains a special feature for command line interfaces that's worth mentioning: a syntax parser for the DocOpt standard which is well known in the Linux/Python world but little known in the PHP universe. The DocOpt standard uses the syntax description of the tool itself to define call options. At runtime syntax descriptions are parsed and matched/validated against the current call. The result are beautiful syntax definitions even for more complex tools (no more ugly Symfony error messages). Examples are here.
MiniStruts reference: struts-config.dtd
ORM mapping reference: README.md
All versions of ministruts with dependencies
ext-filter Version *
ext-json Version *
ext-libxml Version *
ext-mbstring Version *
ext-simplexml Version *
psr/container Version ^1.0
php Version 7.4 - 8