shibare / framework
Shibare, Simple, Short, Smart framework
v0.0.5
2024-09-29 15:16 UTC
Requires
- php: ~8.2.0|~8.3.0|~8.4.0
- ext-pdo: *
- psr/cache: ^3.0.0
- psr/clock: ^1.0.0
- psr/container: ^2.0.0
- psr/event-dispatcher: ^1.0.0
- psr/http-client: ^1.0.0
- psr/http-factory: ^1.0.0
- psr/http-message: ^2.0.0
- psr/http-server-handler: ^1.0.0
- psr/http-server-middleware: ^1.0.0
- psr/log: ^2.0.0|^3.0.0
- psr/simple-cache: ^3.0.0
Requires (Dev)
- ext-pdo_mysql: *
- cakephp/chronos: ^3.0.0
- mockery/mockery: ^1.6
- monolog/monolog: ^3.7.0
- nesbot/carbon: ^3.0.0
- phpstan/extension-installer: ^1.4
- phpstan/phpstan: ^1.12
- phpstan/phpstan-mockery: ^1.1
- phpunit/phpunit: ^11.2.9
- spiral/roadrunner-http: ^3.5.0
Suggests
- ext-pdo_mysql: Required for MySQL database
- ext-protobuf: When you use RoadRunnerHttpDispatcher, it is highly recommended for performance
- cakephp/chronos: Required when you use Chronos for Clock
- monolog/monolog: Required when you use Monolog for logging
- nesbot/carbon: Required when you use CarbonImmutable for Clock
- spiral/roadrunner-http: Required when you use RoadRunnerHttpDispatcher
Provides
- psr/cache-implementation: 3.0.0
- psr/clock-implementation: 1.0
- psr/container-implementation: 2.0.2
- psr/event-dispatcher-implementation: 1.0
- psr/http-client-implementation: 1.0.3
- psr/http-factory-implementation: 1.1.0
- psr/http-message-implementation: 2.0
- psr/http-server-handler-implementation: 1.0.2
- psr/http-server-middleware-implementation: 1.0.2
- psr/log-implementation: 3.0
- psr/simple-cache-implementation: 3.0.0
Replaces
- shibare/cache: v0.0.5
- shibare/clock: v0.0.5
- shibare/config: v0.0.5
- shibare/console: v0.0.5
- shibare/container: v0.0.5
- shibare/contracts: v0.0.5
- shibare/database: v0.0.5
- shibare/event-dispatcher: v0.0.5
- shibare/http-client: v0.0.5
- shibare/http-factory: v0.0.5
- shibare/http-message: v0.0.5
- shibare/http-server: v0.0.5
- shibare/idl-openapi: v0.0.5
- shibare/log: v0.0.5
README
Features
KEEP IT SIMPLE, NOT EASY
- All things are explicit, understandable.
- No magic method.
- No dynamic types.
- All have static types(with PHPStan).
SHORTER IS BETTER THAN ANYTHING
- short is simple.
SMART to adopt PHP community
- PHP Standards Recommendations compatible implementation components
- PSR-1: Basic Coding Standard
- PSR-3: Logger Interface
- PSR-4: Autoloading Standard
- PSR-6: Caching Interface: TODO
- PSR-7: HTTP Message Interface
- PSR-11: Container Interface
- PSR-12: Extended Coding Style Guide
- PSR-14: Event Dispatcher: TODO
- PSR-15: HTTP Handlers
- PSR-16: Simple Cache: TODO
- PSR-17: HTTP Factories
- PSR-18: HTTP Client: TODO
- PSR-20: Clock
- PER Coding Style 2.0
- Smart DI Container, it can bind and resolve anything
- Smart Database Abstraction with PDO: TODO
- Supports multiple server runtimes
- Traditional(with Apache or nginx)
- RoadRunner to adopt wider protocols.
- FrankenPHP: TODO
- IDL Support
- OpenAPI 3.0: TODO
- gRPC: TODO
- anything else?
Requirements
- PHP ~8.2.0|~8.3.0|~8.4.0
- No third-party requirements!(There is an adapter for these)
Development
- download phive.phar
$ git clone https://github.com/shibare-framework/shibare.git $ cd shibare $ composer install $ phive install $ composer lint $ composer test
CI is at GitHub Actions.
License
See LICENSE.
Code of conduct
See CODE_OF_CONDUCT.md.
Contributing
See CONTRIBUTING.md.
Security
See SECURITY.md.