X-Git-Url: http://git.droids-corp.org/?p=protos%2Flibecoli.git;a=blobdiff_plain;f=doc%2Findex.rst;fp=doc%2Findex.rst;h=a5f8731fc3abc56c45695871d9b7231a8e5a0346;hp=0000000000000000000000000000000000000000;hb=e18710da81b4c53b357dde2ca55005344edc314f;hpb=31ab7b9ac5570db9da50014abb31adb618218324 diff --git a/doc/index.rst b/doc/index.rst new file mode 100644 index 0000000..a5f8731 --- /dev/null +++ b/doc/index.rst @@ -0,0 +1,45 @@ +.. SPDX-License-Identifier: BSD-3-Clause + Copyright 2019 Olivier Matz + +Libecoli Documentation +====================== + +This is the documentation of *libecoli*. This library simplifies the +creation of interactive command line interfaces (*Ecoli* stands for +Extensible COmmand LIne). + +What can it be used for? + +- complex interactive cli interface in C (ex: a router cli) +- interactive cli for shell scripts +- application arguments parsing, natively supporting bash completion +- parsers + +What are the main features? + +- dynamic completion +- contextual help +- integrated with libedit, but can use any readline-like library +- modular: the cli behavior is defined through an assembly of basic + nodes +- extensible: the user can write its own nodes to provide specific + features +- C API +- YAML API and Shell API: used from shell scripts + +Who use it? + +- 6WIND_ for its Turbo Router cli + +.. _6WIND: https://www.6wind.com + +.. toctree:: + :maxdepth: 2 + :caption: Contents: + + overview + installation + user_guide + architecture + api + contributing