lmwf-team / lmwf
Lightweight web framework that doesn't require tons of dependencies and keeps you in control.
Requires
- php: >=8.5
- guzzlehttp/guzzle: ^7.14
- php-di/php-di: ^7.1
- psr/log: ^3.0
- voku/portable-ascii: ^2.1
Requires (Dev)
- deptrac/deptrac: ^4.7
- ergebnis/phpstan-rules: ^2.13
- phpstan/phpstan: ^2.2
- phpstan/phpstan-strict-rules: ^2.0
- phpunit/phpunit: ^13.2
- spaze/phpstan-disallowed-calls: ^4.14
- squizlabs/php_codesniffer: ^4.0
Suggests
None
Provides
None
Conflicts
None
Replaces
None
This package is auto-updated.
Last update: 2026-09-23 12:31:57 UTC
README
LMWF
Lightweight web framework that doesn’t require tons of dependencies and keeps you in control.
Overview
LMWF is composed of multiple modules. The following image is an overview of its modules. As it is dynamically generated, it is guaranteed to be up-to-date.
Security
- Deactivate
display_errorsanddisplay_warningsin PHP settings. LMWF does not take care of that for you.
Style
Files and namespaces
The content of the library is contained inside the src folder. This is the primary target of our security policy.
Inside this folder, the content is divided into subfolders corresponding to namespaces. Each namespace, at this level, corresponds to a specific feature that can be used and understood independently from the rest.
The content of the library is entirely made of PHP classes adhering to the PSR standard of defining one class per file (expect for result-type classes, although this exception to the rule could be removed in the future).
Those
Exceptions
We avoid using exceptions to handle logics as much as possible. This means that when the code throws exception, it is not meant to be handled, but rather signifies an issue that needs to be fixed with the code (for instance, instantiating a struct with invalid paremeters). But this is still WIP.
When we do throw exception, we usually rely on PHP built-in exception with a custom code defined in the enum ExceptionCode. Each thrown exception thus has a unique code that can be referenced against in Exceptioncode.
