Skip to content

locomotivemtl/charcoal-core

Repository files navigation

Charcoal Core

Build Status

The charcoal-core module contains a few core charcoal namespaces: \Charcoal\Loader, \Charcoal\Model, \Charcoal\Source and \Charcoal\Validator.

How to Install

The preferred (and only supported) way of installing charcoal-core is with composer:

★ composer require locomotivemtl/charcoal-core

For a complete, ready-to-use Charcoal project, start from the boilerplate:

★ composer create-project locomotivemtl/charcoal-project-boilerplate:@dev --prefer-source

Dependencies and Requirements

Charcoal depends on:

  • PHP** 5.6+
    • PHP 7 is recommended, for performance and security.
  • ext-pdo
  • ext-mbstring
  • psr/log
  • psr/cache
  • locomotivemtl/charcoal-config
  • locomotivemtl/charcoal-factory
  • locomotivemtl/charcoal-property
  • locomotivemtl/charcoal-view

Loader

Model

Source

Validator

The validator namespace is obsolete and should not be used. Its usage is currently being removed from everywhere in charcoal.

Development

To install the development environment:

★ composer install --prefer-source

To run the tests:

★ composer test

API documentation

Development dependencies

  • phpunit/phpunit
  • squizlabs/php_codesniffer
  • satooshi/php-coveralls

Continuous Integration

Service Badge Description
Travis Build Status Runs code sniff check and unit tests. Auto-generates API documentation.
Scrutinizer Scrutinizer Code Quality Code quality checker. Also validates API documentation quality.
Coveralls Coverage Status Unit Tests code coverage.
Sensiolabs SensioLabsInsight Another code quality checker, focused on PHP.

Coding Style

The charcoal-core module follows the Charcoal coding-style:

Coding style validation / enforcement can be performed with composer phpcs. An auto-fixer is also available with composer phpcbf.

Authors

License

Charcoal is licensed under the MIT license. See LICENSE for details.

Changelog

  • Unreleased.

TODOs

  • Remove the dependency on charcoal-app