Skip to content
Permalink
Browse files

doc: initial setup

Signed-off-by: Florian Scherf <f.scherf@pengutronix.de>
  • Loading branch information...
fscherf committed Feb 15, 2019
1 parent d80f2b3 commit 33a613e559672abcdc41d547c89fb1df3c6ede35
@@ -0,0 +1,100 @@
Changelog
=========


`v0.6.1 <https://github.com/pengutronix/flamingo/compare/v0.6...v0.6.1>`_ (2019-02-10)
--------------------------------------------------------------------------------------

**Bugfix release**

* Live-Server: IncrementalContext: fix missing hooks


`v0.6 <https://github.com/pengutronix/flamingo/compare/v0.5.1...v0.6>`_ (2019-02-08)
------------------------------------------------------------------------------------

* core: templating: Jinja2: add ``render`` and ``link`` functions
* Live-Server: reload page on rpc reconnect
* Live-Server: implement incremental builds


`v0.5.1 <https://github.com/pengutronix/flamingo/compare/v0.5...v0.5.1>`_ (2019-01-31)
--------------------------------------------------------------------------------------

* plugins: slugify tags but preserve original names
* core: utils: string: split: remove obsolete whitespaces


`v0.5 <https://github.com/pengutronix/flamingo/compare/v0.4.1...v0.5>`_ (2019-01-16)
------------------------------------------------------------------------------------

* flamingo: plugins: add plugin for redirect rules
* flamingo: core: context: typecast ``Content['content']`` empty string if None
* plugins: authors: fix content_keys
* plugins: authors: slugify links
* plugins: tags: make content_key uppercase because its a constant
* plugins: tags: add option to generate a tag page zero
* plugins: tags: fix content_keys
* plugins: tags: allow whitespaces in tag names
* core: utils: add library for string manipulation
* core: data model: ContentSet: add merges and removes
* plugins: i18n: remove old ``__not__`` syntax
* core: data model: make bitwise operations available in templates
* core: data model: implement Django like ``Q`` and ``F`` objects


`v0.4.1 <https://github.com/pengutronix/flamingo/compare/v0.4...v0.4.1>`_ (2018-12-21)
--------------------------------------------------------------------------------------

**Bugfix release**

* plugins: Feeds: fix ``updated`` field in feeds


`v0.4 <https://github.com/pengutronix/flamingo/compare/v0.3...v0.4>`_ (2018-12-20)
----------------------------------------------------------------------------------

* plugins: add plugin for RSS feeds
* plugins: Time: add strftime
* plugins: rst: add Pygments plugin
* Live-Server: use symlinks instead of copies for static files
* move non-core plugins to flamingo.plugins
* core: plugins: bootstrap3: YouTube: add privacy enhanced mode


`v0.3 <https://github.com/pengutronix/flamingo/compare/v0.2...v0.3>`_ (2018-12-17)
----------------------------------------------------------------------------------

* Live-Server: fix css in firefox
* core: utils: paginate: add docstring
* core: data model: values: prevent duplets when only one field name is given
* core: plugins: rst: RstParser: fix various parsing bugs
* core: plugins: add plugin for HTML5 time tags
* add .gitattributes to fix code vendoring
* README.rst: fix usage of hyphens


`v0.2 <https://github.com/pengutronix/flamingo/compare/v0.1...v0.2>`_ (2018-12-06)
----------------------------------------------------------------------------------

* server: log changing files
* core: context: build: only remove ``OUTPUT_ROOT`` if existing
* core: plugins: authors: fix content_keys; sort author names
* core: parsers: rst: split content in ``content_body`` and ``content_title``
* core: parsers: give all parsers full access to the current content object
* add vendor.yml to ignore 3rd party libraries
* README: fix typo


`v0.1 <https://github.com/pengutronix/flamingo/compare/v0.0...v0.1>`_ (2018-12-03)
----------------------------------------------------------------------------------

**Bugfix release**

* core: fix broken utils package


`v0.0 <https://github.com/pengutronix/flamingo/releases/tag/v0.0>`_ (2018-12-03)
--------------------------------------------------------------------------------

* Initial release
@@ -1,12 +1,105 @@
flamingo
========

.. image:: doc/static/flamingo.svg
:height: 128px
  :width: 128px

|

.. image:: https://img.shields.io/pypi/l/flamingo.svg
:alt: pypi.org
:target: https://pypi.org/project/flamingo
.. image:: https://img.shields.io/travis/pengutronix/flamingo/master.svg
:alt: Travis (.org) branch
:target: https://travis-ci.org/pengutronix/flamingo
:alt: Travis (.org) branch
:target: https://travis-ci.org/pengutronix/flamingo
.. image:: https://img.shields.io/pypi/pyversions/flamingo.svg
:alt: pypi.org
:target: https://pypi.org/project/flamingo
.. image:: https://img.shields.io/pypi/v/flamingo.svg
:alt: pypi.org
:target: https://pypi.org/project/flamingo
:alt: pypi.org
:target: https://pypi.org/project/flamingo
.. image:: https://img.shields.io/codecov/c/github/pengutronix/flamingo.svg
:alt: codecov.io
:target: https://codecov.io/gh/pengutronix/flamingo/
.. image:: https://img.shields.io/lgtm/alerts/g/pengutronix/flamingo.svg
:alt: lgtm.com
:target: https://lgtm.com/projects/g/pengutronix/flamingo/
.. image:: https://img.shields.io/lgtm/grade/python/g/pengutronix/flamingo.svg
:alt: lgtm.com
:target: https://lgtm.com/projects/g/pengutronix/flamingo/

flamingo
========

What flamingo is and what it is not
-----------------------------------

Flamingo is a python3-based, `pelican <https://blog.getpelican.com/>`_-inspired
static site generator.
static site generator. This means you can only create content
that doesn't require a dynamic backend, while users visit your site.

For example: If you want your site to have login for editing or comments or
even the current time, flamingo is the wrong tool.

Basically flamingo is a fancy converter, that turns RST code into HTML code.
It doesn't provides an editor, user management or a backup solution like a CMS
like `WordPress <https://wordpress.org/>`_.

**Any part of flamingo is designed to be easy, not to be fast!**

For instance the data model is made to look and feel like
`Django <https://www.djangoproject.com/>`_ model API, because it is a very
intuitive way to filter and manipulate huge amounts of objects with various
attributes.
Django models are very efficient, because their API is an abstraction for well
designed SQL statements on fast databases like Postgres or MySQL.

The flamingo data model API is an abstraction of python-looping over fancy
lists, comparing dict like objects.

While flamingo runs, all objects are stored in RAM.

**Anything is a plugin**

If you think flamingo lacks of features, don't patch flamingo, write a plugin!


Getting Started
---------------

FIXME


Topics
------

- `Recipes for usage and optimization <doc/recipes.rst>`_
- `Settings <doc/settings.rst>`_
- `Data model <doc/data_model.rst>`_
- `Writing content <doc/writing_content.rst>`_
- `Writing themes <doc/writing_themes.rst>`_
- `Writing plugins <doc/writing_plugins.rst>`_
- `Using the Live-Server <doc/live-server.rst>`_
- `Using an interactive shell <doc/interactive-shell.rst>`_
- `Contributing and testing <doc/contributing.rst>`_
- `Changelog <CHANGELOG.rst>`_


Available plugins
-----------------

- `Authors <doc/plugins/authors.rst>`_
- `Tags <doc/plugins/tags.rst>`_
- `I18N <doc/plugins/i18n.rst>`_
- `Layers <doc/plugins/layers.rst>`_
- `Redirects <doc/plugins/redirects.rst>`_
- `Feeds <doc/plugins/feeds.rst>`_
- `Time <doc/plugins/time.rst>`_
- `rstBootstrap3 <doc/plugins/rst_bootstrap3.rst>`_
- `rstPygments <doc/plugins/rst_pygments.rst>`_


Helpful links
-------------

- `reStructuredText quick-reference <http://docutils.sourceforge.net/docs/user/rst/quickref.html>`_
- `Django / Making queries <https://docs.djangoproject.com/en/2.1/topics/db/queries/>`_

This file was deleted.

@@ -0,0 +1,9 @@
Bootstrap a flamingo project
============================

.. code-block::

# pip install flamingo
# flamingo-init new-site
# cd new-site
# make html
@@ -0,0 +1,10 @@
Contributing
============

FIXME


Running the test suite
----------------------

FIXME
@@ -0,0 +1,4 @@
Data model / making queries
===========================

FIXME
@@ -0,0 +1,4 @@
Using an interactive shell
==========================

FIXME
@@ -0,0 +1,4 @@
Using the Live Server
=====================

FIXME
@@ -0,0 +1,13 @@
Authors
=======

Installation
------------

.. code-block:: python
# settings.py
PLUGINS = [
'flamingo.plugins.Authors',
]
@@ -0,0 +1,13 @@
Feeds
=====

Installation
------------

.. code-block:: python
# settings.py
PLUGINS = [
'flamingo.plugins.Feeds',
]
@@ -0,0 +1,13 @@
I18N
====

Installation
------------

.. code-block:: python
# settings.py
PLUGINS = [
'flamingo.plugins.I18N',
]
@@ -0,0 +1,13 @@
Layers
======

Installation
------------

.. code-block:: python
# settings.py
PLUGINS = [
'flamingo.plugins.Layers',
]
@@ -0,0 +1,13 @@
Redirects
=========

Installation
------------

.. code-block:: python
# settings.py
PLUGINS = [
'flamingo.plugins.Redirects',
]
@@ -0,0 +1,13 @@
rstBootstrap3
=============

Installation
------------

.. code-block:: python
# settings.py
PLUGINS = [
'flamingo.plugins.rstBootstrap3',
]
@@ -0,0 +1,13 @@
rstPygments
===========

Installation
------------

.. code-block:: python
# settings.py
PLUGINS = [
'flamingo.plugins.rstPygments',
]
@@ -0,0 +1,13 @@
Tags
====

Installation
------------

.. code-block:: python
# settings.py
PLUGINS = [
'flamingo.plugins.Tags',
]
@@ -0,0 +1,13 @@
Time
====

Installation
------------

.. code-block:: python
# settings.py
PLUGINS = [
'flamingo.plugins.Time',
]

0 comments on commit 33a613e

Please sign in to comment.
You can’t perform that action at this time.