Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mre/creamy
A simple CMS in the style of Perch.
https://github.com/mre/creamy
cms content-management perch php simple
Last synced: 4 months ago
JSON representation
A simple CMS in the style of Perch.
- Host: GitHub
- URL: https://github.com/mre/creamy
- Owner: mre
- License: gpl-3.0
- Created: 2011-03-21T09:28:55.000Z (almost 14 years ago)
- Default Branch: master
- Last Pushed: 2012-03-07T14:20:09.000Z (almost 13 years ago)
- Last Synced: 2024-10-03T12:39:56.461Z (4 months ago)
- Topics: cms, content-management, perch, php, simple
- Language: PHP
- Homepage:
- Size: 496 KB
- Stars: 32
- Watchers: 10
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.mkdn
- License: LICENSE.txt
Awesome Lists containing this project
README
![Creamy][Logo]
A tiny content management system similar to Perch.
## Usage
1. Open `creamy.php` with a text editor and configure usernames and
passwords.2. Upload `creamy.php` and the `creamy` folder to your server.
3. Call creamy within your static pages:
```php
```
4. Create a content area (an editable region) wherever you want:
```php
```
5. Open the backend at `example.com/creamy` and edit the content area.
## Features
### Markdown support
Content areas (the text files included in your page) can be formatted with [Markdown][1].
The syntax is easy to learn and makes for great formatting (you can also
disable Markdown support altogether).### Templating engine
Creamy uses twig for templating.
It's pretty awesome. There is [lots of documentation][2].### Themes
Themes are common parts of a website which will not be editable -- like headers, footers and sidebars.
Put them into a folder called `theme` (relative to `creamy.php`).
You can now use it on any page like this:```php
```
### Variables
Let's get fancy! You can use variables in your themes and content
areas:Let's say you have a variable named {{ title }} inside a theme file.
Here is how to fill it with a value:```php
"Creamy awesomeness!"); ?>```
Or you might want a different layout (here: table.html)
for a content area and also omit markdown support for this area.
Here is how to do it:```php
"table", "markdown" => false);
Creamy::content("events", $options);
?>
```### Metadata
You can place metadata at the head of every markdown file like this:
author: Oscar Wilde
year: 1883
title: Personal Impressions of America (Leadville)
---
Over the piano was printed a notice:
Please do not shoot the pianist. He is doing his best.The first three lines are interpreted as metadata and can be used in
your templates like this:```php
{% for post in posts %}
{{ post.title }}, written by {{ post.author }} in {{ post.year }}:
{{ post.text }}
{% endfor %}
```## FAQ
#### Q: A CMS...oh really? Why don't you use one of the gazillion other systems?
A: I want a lightweight CMS that happily adapts to static layouts not the other way round.#### Q: Why not use perch instead?
A: Creamy is more flexible and it is free software. You can modify it to your hearts content.
Furthermore it's file based. You don't need a database to run it.
Also, I personally prefer an erb/mustache/twig-like templating engine
over the XML-style one that comes with perch.#### Q: Why not use jekyll instead?
A: I love jekyll. I use it for my own blog but it's cumbersome to
configure and has no admin backend for my clients. You can think of creamy as a
user-friendly jekyll clone.#### Q: Who might want to use it?
A: Creamy is ideal for small web pages.
It doesn't get into your way and helps you get some dynamic elements
into otherwise static pages real quick.
You can create a simple template and publish content in no time.Hackers can also use source control software like git or svn and a plain
text editor to manage sites.## Credits
This piece of software relies on fantastic work by lots of creative people.
- [twig][3] by Fabien Potencier, Armin Ronacher and others
- [Markdown][4] by John Gruber
- [PHP Markdown][5] by Michel Fortin
- [WMD Editor][6] by John Fraser of AttackLabs,
Reverse Engineered by Dana Robinson
- [spyc][7] by Chris Wanstrath and Vlad Andersen
- [Wireframe mono icons][8] by Gentleface.com## Copyright
Copyright (C) 2011 Matthias Endler
http://www.matthias-endler.de## License
GNU General Public License version 3.
See LICENSE.txt for details.[Logo]: https://github.com/mre/Creamy/raw/master/creamy/theme/img/creamy.png
[1]: http://daringfireball.net/projects/markdown/
[2]: http://www.twig-project.org/documentation
[3]: http://twig-project.org/
[4]: http://daringfireball.net/projects/markdown/
[5]: http://michelf.com/projects/php-markdown/
[6]: https://github.com/derobins/wmd
[7]: http://spyc.sourceforge.net
[8]: http://gentleface.com/free_icon_set.html