phile-cms / phile
A file-based CMS with a swappable parser, template engine, cache and storage services, error handler, and meta parser.
Installs: 2 659
Dependents: 37
Suggesters: 0
Security: 0
Stars: 257
Watchers: 24
Forks: 49
Open Issues: 12
Type:project
Requires
- php: >=7.2.0
- filp/whoops: ^2.1
- http-interop/http-factory: ^0.3.0
- michelf/php-markdown: >=1.9
- phile-cms/plugin-installer-plugin: ^1.0
- phpfastcache/phpfastcache: ^6.0
- psr/container: ^1.0
- psr/http-message: ^1.0
- psr/http-server-middleware: ^1.0
- psr/simple-cache: ^1.0
- symfony/yaml: ^3.0 || ^4.0
- twig/twig: ^1.0 || ^2.0
- zendframework/zend-diactoros: ^1.7
Requires (Dev)
- phing/phing: ^2.14
- phpunit/phpunit: ^8.0
- squizlabs/php_codesniffer: ^3.2
This package is auto-updated.
Last update: 2024-10-25 02:09:23 UTC
README
A Markdown file-based CMS written in PHP.
Check out the starter video or read the wiki for in-depth documentation.
Why use PhileCMS?
Phile was forked from Pico when a few community members wanted to contribute more and increase the rate of development. Here is a small list of differences:
- Object Oriented Design (classes)
- Events system
- Replacable core modules (plugins)
- Parser (default: Markdown)
- Template Engine (default: Twig)
- Cache (default: phpFastCache)
- Error handler (default: Whoops)
- Meta parser (default: Phile parser)
- Simple Data Persistence (default: Phile file-based)
- Per-Plugin
config.php
files - Namespaced plugins so classes can have the same name
- PSR-0, PSR-1/2, PSR-7/15
Quick Start
Requirements:
- PHP 7.2.0+
- a web-server
Download the release from https://philecms.github.io/, copy the files to your web-server and open the root directory in the browser.
Or use composer and run it locally:
composer create-project --no-dev phile-cms/phile; cd Phile; php -S localhost:8080;
On a fresh installation you will see a page with a setup instructions. Follow them. For detailed instructions please see the installation help.
Plugins
Phile can be extended with a wide variety of plugins.
Generally a plugin can always be installed manually: clone or download the plugin into plugins/{vendor}/{pluginName}
folder. Example: phileRss would be installed into plugins/phile/rssFeed
.
Many plugins also allow composer installation:
composer require phile/rss-feed
Always check the plugin readme for specialised installation instruction.
Getting Help
You can read the wiki if you are looking for examples more development information.
If you find a bug please report it on the issues page, but remember to include a bunch of details and also what someone can do to re-create the issue.
Issues with plugins should be reported on the offending plugins homepage this goes for themes as well.
Contributing
Help make PhileCMS better by checking out the GitHub repository and submitting pull requests. See developer guildlines for more information.