Customize Contenticious
It's possible to change EVERYTHING in Contenticious. But customizing it for your needs can be a smooth process. Just start with the simple parts.
Please look at the configuration file config
first. It looks like this:
{
pages_dir => app->home->rel_file('pages'),
dump_dir => app->home->rel_file('dump'),
name => 'Shagadelic',
copyright => 'Zaphod Beeblebrox',
cached => 0,
}
As you can see, it is a Perl data structure and you can access the app
shortcut for advanced hacking. I think, the most names are rather self-documenting, except cached
. When set to a true value, contenticious will hold the document structure in memory to serve it faster. It's deactivated by default for development. Otherwise you would have to restart the server every time you want to view the latest version.
To change the design of Contenticious' pages, edit the styles.css
file in the public
directory. Since the default HTML is very clean you should be able to change a lot with css changes.
If that's still not enough, use the following command to extract all templates to a newly created templates directory:
$ ./webapp.pl inflate
You'll end up with four templates and one layout template:
- content.html.ep - the main template for content pages
- list.html.ep - a directory listing for directories without
index.md
- navi.html.ep - the automagically generated page navigation
- not_found.html.ep - 404 page with navigation
- layouts/contenticious.html.ep - HTML wrapper
You can change them with Mojolicious' flexible ep template syntax. Good luck!