wip: documentation

This commit is contained in:
Romain Dorgueil
2016-12-26 10:47:30 +01:00
parent bba437fe14
commit 89dee0e65a
4 changed files with 130 additions and 8 deletions

117
doc/_templates/index.html vendored Normal file
View File

@ -0,0 +1,117 @@
{% extends "layout.html" %}
{% set title = _('Overview') %}
{% block body %}
<h1>{{ _('Welcome to Bonobo\'s Documentation') }}</h1>
<div style="text-align: center;">
<img class="logo" src="{{ pathto('_static/bonobo.png', 1) }}" title="Bonobo"
style=" width: 128px; height: 128px;"/>
</div>
<p>
{% trans %}
Bonobo is a line-by-line data-processing toolkit for python 3.5+ emphasizing simplicity and atomicity of
data transformations using a simple directed graph of python callables.
{% endtrans %}
</p>
<p>
{% trans %}
It was originally created as a programmatic ETL (extract transform load) python 2.7+ library called rdc.etl,
to process tenth of millions of retail stock informations, and served this purpose for years.
{% endtrans %}
</p>
<p>
{% trans %}
Bonobo is a clean full-rewrite of rdc.etl, for python 3.5+, and is now used for many ETL as well as non-ETL
use cases. For examples, it's pretty easy to write selenium based web crawlers, or twitter bots. As long as
a use case can be represented as a graph of callables interracting, Bonobo can be used.
{% endtrans %}
</p>
<h2>Features</h2>
<ul>
<li>
{% trans %}
<b>10 minutes to get started:</b> Know some python? Writing your first data processor is an affair
of minutes.
{% endtrans %}
</li>
<li>
{% trans %}
<b>Data sources and targets:</b> HTML, JSON, XML, SQL databases, NoSQL databases, HTTP/REST APIs,
streaming APIs, python objects...
{% endtrans %}
</li>
<li>
{% trans %}
<b>Dependency injection:</b> Abstract the transformation dependencies to easily switch data sources and
used libraries, allowing to easily test your transformations.
{% endtrans %}
</li>
<li>
{% trans %}
<b>Plugins:</b> Easily add features to all your transformations by using builtin plugins (Jupyter,
Console, ...) or write your own.
{% endtrans %}
</li>
</ul>
<h2 style="margin-bottom: 0">{% trans %}Documentation{% endtrans %}</h2>
<table class="contentstable">
<tr>
<td>
<p class="biglink"><a class="biglink" href="{{ pathto("tutorial") }}">{% trans %}First steps with
Bonobo{% endtrans %}</a><br/>
<span class="linkdescr">{% trans %}overview of basic features{% endtrans %}</span></p>
</td>
<td>
{%- if hasdoc('search') %}
<p class="biglink"><a class="biglink" href="{{ pathto("search") }}">{% trans %}
Search{% endtrans %}</a><br/>
<span class="linkdescr">{% trans %}search the documentation{% endtrans %}</span></p>{%- endif %}
</td>
</tr>
<tr>
<td>
<p class="biglink"><a class="biglink" href="{{ pathto("contents") }}">{% trans %}
Guides{% endtrans %}</a><br/>
<span class="linkdescr">{% trans %}for a complete overview{% endtrans %}</span>
</p>
</td>
<td>
{%- if hasdoc('genindex') %}
<p class="biglink"><a class="biglink" href="{{ pathto("genindex") }}">{% trans %}References{% endtrans %}</a>
<br/>
<span class="linkdescr">{% trans %}all functions, classes, terms{% endtrans %}</span>
</p>{%- endif %}
</td>
</tr>
<tr>
<td>
<p class="biglink"><a class="biglink" href="{{ pathto("changes") }}">{% trans %}
Cookbook{% endtrans %}</a><br/>
<span class="linkdescr">{% trans %}examples and recipes{% endtrans %}</span></p>
</td>
<td>
<p class="biglink"><a class="biglink" href="{{ pathto("changes") }}">{% trans %}
Contribute{% endtrans %}</a><br/>
<span class="linkdescr">{% trans %}contributor guide{% endtrans %}</span></p>
</td>
</tr>
</table>
<p>{% trans %}
You can also download PDF/EPUB versions of the Bonobo documentation:
<a href="http://readthedocs.org/projects/bonobo/downloads/pdf/stable/">PDF version</a>,
<a href="http://readthedocs.org/projects/bonobo/downloads/epub/stable/">EPUB version</a>.
{% endtrans %}
</p>
{% endblock %}

View File

@ -2,7 +2,7 @@
<p><a href="http://eepurl.com/csHFKL" target="_blank">Join announcements list</a>.</p>
<p><a href="https://twitter.com/rdorgueil" class="twitter-follow-button" data-show-count="false">Follow @rdorgueil</a> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script></p>
<p><a href="https://twitter.com/monkcage" class="twitter-follow-button" data-show-count="false">Follow @monkcage</a> <script>!function(d,s,id){var js,fjs=d.getElementsByTagName(s)[0],p=/^http:/.test(d.location)?'http':'https';if(!d.getElementById(id)){js=d.createElement(s);js.id=id;js.src=p+'://platform.twitter.com/widgets.js';fjs.parentNode.insertBefore(js,fjs);}}(document, 'script', 'twitter-wjs');</script></p>
<p>
<iframe src="http://ghbtns.com/github-btn.html?user=python-bonobo&repo=bonobo&type=watch&count=true&size=small"

View File

@ -1,10 +1,10 @@
<p class="logo">
<a href="{{ pathto(master_doc) }}">
<img class="logo" src="{{ pathto('_static/bonobo.png', 1) }}" title="Bonobo"/>
<h1 style="text-align: center; margin-top: -16px;">Bonobo</h1>
</a>
</p>
<a href="{{ pathto(master_doc) }}" style="border: none">
<h1 style="text-align: center; margin-top: 0;">
<img class="logo" src="{{ pathto('_static/bonobo.png', 1) }}" title="Bonobo" style="width: 48px; height: 48px; vertical-align: bottom"/>
Bonobo
</h1>
</a>
<p>
Bonobo is ... blablabla
Data processing for human beings.
</p>

View File

@ -90,6 +90,11 @@ html_sidebars = {
]
}
html_theme_path = ['_themes']
html_additional_pages = {'index': 'index.html'}
# Add any paths that contain custom static files (such as style sheets) here,
# relative to this directory. They are copied after the builtin static files,
# so a file named "default.css" will overwrite the builtin "default.css".