# Bedrock Bedrock is the core functionality used by [The Tempus Project](https://github.com/TheTempusProject/TheTempusProject) a rapid prototyping framework. It provides database support, configuration, base models, and base controller functionality a in addition to a host of other integrated functions. This Library can be utilized outside of TheTempusProject, but the functionality has not been tested well as a stand-alone library. ## Installation To install simply use the composer command: `php composer.phar require thetempusproject/bedrock` ## Usage Typical usage would be through including the package via composer. ```php namespace MyApp; use TheTempusProject\Bedrock\Bin\Bedrock; require_once VENDOR_DIRECTORY . 'autoload.php'; class MyApp extends Bedrock { // "Stuff", "Things", and "What-not" } ``` If you would like to use hermes own autoloading, simply inclode the constants file and the autoload file inside `/bin/`. ```php use TheTempusProject\Bedrock\Bin\Bedrock; // Bedrock Constants if ( ! defined( 'BEDROCK_CONSTANTS_LOADED' ) ) { if ( defined( 'BEDROCK_CONFIG_DIRECTORY' ) ) { require_once BEDROCK_CONFIG_DIRECTORY . 'constants.php'; } } // Bedrock Autoloader (Autoloader) if ( ! defined( 'BEDROCK_AUTOLOADED' ) ) { if ( defined( 'BEDROCK_ROOT_DIRECTORY' ) ) { require_once BEDROCK_ROOT_DIRECTORY . 'bin' . DIRECTORY_SEPARATOR . 'autoload.php'; } } class MyApp extends Bedrock { // "Stuff", "Things", and "What-not" } ``` ### To-Do - [ ] Expansion of PDO to allow different database types - [ ] Updates for configs and models to re-build based on a delta model, to make version changes simpler. (Migration system) - [ ] Implement better uniformity in terms of error reporting, exceptions, logging. ## Issues / Bugs / Contact If anyone actually uses this library and runs into any issues, feel free to contact me and I'll look into it. [Joey Kimsey](mailto:Joey@thetempusproject.com) - _Lead Developer_ [JoeyKimsey.com](https://JoeyKimsey.com)