.. -- mode: rst --
=======
Cyrax
.. image:: https://img.shields.io/pypi/v/cyrax
:alt: PyPI
:target: https://pypi.org/project/cyrax/
Cyrax is a static site generator using Jinja2_ template engine.
It's inspired by Jekyll_ and Hyde_ site generators and started when I realized
that I'm dissatisfied with both of them for different reasons. When I tried to
come up with name I remembered my favourite character from Mortal Kombat 3 so
here we go.
Installation
Well, it's quite simple, as usually::
pip install cyrax
Cyrax depends on the Jinja2 template library, so you can install it through your OS
package system (in other case pip will install it automatically).
Note, please, that in order to use parsers like markdown, or reST, or textile,
corresponding libraries should be installed (either python-markdown or
python-markdown2 are good enough for markdown).
Usage
Read some docs_, run cyrax --help
to read about command line options, look
at example site
_.
Also it's really easy to extend Cyrax, see an example
_.
.. _an example: https://github.com/piranha/osgameclones/blob/master/_ext.py
News
Indeed something happens with each release and you are probably interested what
(and too lazy to read changelog
_).
.. _changelog: http://github.com/piranha/cyrax/
3.1 (17.12.2019)
- Fix for rendering unicode data to file
3.0 (01.10.2019)
- Python 3 support
settings.cfg
renamed to .cyrax.cfg
2.7 (11.10.2016)
- support for globs in `exclude` in `.cyrax.cfg`
2.6 (10.10.2016)
- make Jinja2
do
extension available in templates
2.4-2.5 (16.08.2011)
- drop unused dependency on cherrypy
- make rst render start with h2 in inner sections
2.3 (28.12.2010)
~~~~~~~~~~~~~~~~
- rework RstPost a bit, removing nasty bugs with template caching
2.1-2.2 (21.12.2010)
- nasty bug with circular dependecies
- forget to process tags in RstPost
2.0 (18.12.2010)
- refactored module system, no more ``cyraxlib``, only ``cyrax`` now exists
- completely refactored internal models system, now it uses usual inheritance
instead of some strange composition (which means it's easier to understand
and to extend now)
- ability to write posts in reStructuredText (which as well could serve as an
`example`_ to writing your own models).
.. _example: http://github.com/piranha/cyrax/blob/master/cyrax/rstpost.py
1.0-1.1 (28.11.2010)
- now most of urls generated on page (by function
url_for
) are relative to
current page, which means that you mostly can view your site without using
web-server (though you'll need to click on index.html
yourself :) - some docs, heh. This part needs attention anyway
.. _Jinja2: http://jinja.pocoo.org/2/
.. _Jekyll: http://github.com/mojombo/jekyll/
.. _Hyde: http://github.com/lakshmivyas/hyde/
.. _repository: http://github.com/piranha/cyrax/
.. _docs: http://cyrax.readthedocs.org/
.. _example site: http://github.com/piranha/cyrax/tree/master/content/