/eggella

Create awesome command line applications with less effort

Primary LanguagePythonGNU General Public License v3.0GPL-3.0

Eggella

ENG RU

Eggella is a shield volcano in central Kamchatka. The volcano is located on the west axis of the southern Sredinny Range.


About

Eggella is a framework for easy creating REPL applications.

Design inspired by vulcano and various chatbots frameworks and built top on prompt-toolkit

Features:

  • Python 3.8+ support
  • Command line arguments auto cast from function annotations
  • Cross-platform (prompt-toolkit guarantees)
  • FSM (finite state machine) to organize a branch interface system
  • Error handlers
  • Customized events
  • Auto create auto suggest commands completer
  • Auto generate help, and man page

Install

pip install eggella

Hello world

from eggella import Eggella


app = Eggella(__name__)


@app.on_command()
def hello():
    """print `Hello, world!`"""
    return "Hello, world!"


if __name__ == '__main__':
    app.loop()

quickstart

See the documentation and examples!