slabphp / slabphp
SlabPHP Web Platform
Installs: 51
Dependents: 0
Suggesters: 0
Security: 0
Stars: 0
Watchers: 1
Forks: 0
Open Issues: 0
Type:framework
Requires
- ext-mbstring: ^7.0
- monolog/monolog: ^1.23
- psr/log: ^1.0
- slabphp/bundle-stack: ^0.1.0
- slabphp/cache-manager: ^0.1.0
- slabphp/component-interfaces: ^0.2
- slabphp/concatenator: ^0.1.0
- slabphp/configuration-manager: ^0.1.0
- slabphp/controllers: ^0.1.1
- slabphp/database: ^0.1.0
- slabphp/display: ^0.1.0
- slabphp/input-manager: ^0.1.1
- slabphp/landing: ^0.1.0
- slabphp/router: ^0.1.0
- slabphp/sequencer: ^0.1.1
- slabphp/session-manager: ^0.1.0
Requires (Dev)
- phpunit/phpunit: ^6.5
- slabphp/debug: ^0.1
Suggests
- ext-mysqli: Include mysqli extension to use built-in database providers.
README
This is the core SlabPHP library. The purpose of it is to create a system object, select an appropriate controller, execute it, and display the result. That's the general flow of every of any particular SlabPHP request. This library depends on all the other SlabPHP libraries.
- Installation and Setup Guide
- History and More Info
- Bootstrap Documentation
- System Object Documentation
SlabPHP Components
SlabPHP is made of a bunch of atomic components that can be used separately or together. The components rely on a shared library of interfaces. You can use the pre-built components or even write your own. Some libraries are also optional so feel free to bring your own logger, database, session handler, etc.
Component | Description |
---|---|
Core SlabPHP Library | includes all of these via composer and provides structure for using the framework. |
Templating and Display Library | SlabPHP's output and templating library |
Router | light-weight web router with validators for routes |
Component Interface Library | external interface library with shareable testing mocks |
Debug Utility | the debug utility displays a helpful debug bar at the bottom of default SlabPHP pages |
Base Controller Library | some base controllers to help you get started |
Bundle Stack Library | manage a hierarchy of bundles so you can easily share code between them |
Landing Page Bundle | this page's source code and an example SlabPHP bundle |
Sequencer Library | this library helps you write re-usable controllers by extending controller sequences |
Database Library | a simple relational database wrapper with token binding |
Cache Manager Library | a simple cache manager wrapper with memcache and redis providers |
Configuration Library | a configuration library that loads files from a hierarchy of bundles |
Session Library | provides flash data capabilities and session handlers that work in both native and the slabphp session system |
Input Manager Library | a small input manager library that sanitizes input to the application |
Concatenator Library | a simple library that provides concatenation of files, urls, etc. for use in controllers |
Production Deployment
SlabPHP will include PHPUnit and a debug library that can add a debug bar to the standard template. When deploying to production, make sure you use no-dev and optimize-autoloader.
composer update --no-dev -o
Feedback, Changes, Comments, Concerns
Feel free to open tickets, email Salerno Labs LLC staff, or most preferably create pull requests for any changes you'd like in the codebase.