Skip to content

4Dream-UA/FastShell.Framework

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

112 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

FASTSHELL.FRAMEWORK

license last-commit repo-top-language repo-language-count

4Dream Community


Table of Contents


Overview

FastShell is a CLI & TUI framework for Python that makes building command-line tools intuitive and efficient. With its decorator-based approach, you can focus on your application logic rather than argument parsing boilerplate. The framework is designed as an alternative to tools like Click and Rich, but with a strong focus on:

  • easy setup (minimal code to get started),
  • flexible decorators (commands registered via a simple API),
  • extended validation of arguments and options,
  • built-in interactivity (confirmations, aliases, help system),
  • customizable output (colors, styles, function return handling).

Features

  • Command registration via decorators with clean and Pythonic way to create commands.
  • Simple command setup minimum boilerplate, commands are ready to run instantly.
  • Built-in flags and helpers (global help, per-command help, aliases, required arguments, etc).
  • Customizable execution flow with full control over return values, multi-type parameter parsing, etc.
  • TUI: colors, emojies, markdown, panel, progress bar, table.
  • Debugging-friendly with debugging mode make testing with pytest simple.
  • Extensible architecture.
  • Lightweight.

Getting-Started

Documentation

Soon... It will contain english, ukrainian and russian versions.

Installation

Install FastShell.Framework using one of the following methods:

Build from source:

  1. Clone the FastShell.Framework repository:
❯ git clone https://github.com/4Dream-UA/FastShell.Framework.git
  1. Navigate to the project directory:
cd <your_folder>

PyPi: Soon...


Future

  • Task 1: Release in PyPi.
  • Task 2: Do table as a object, no string.
  • Task 3: Do panel as a object, not string.

Contributing

  • 💬 Discord: Share your insights, provide feedback, or ask questions.
  • 🐛 Report Issues: Submit bugs found or log feature requests for the FastShell.Framework project.
Contributing Guidelines
  1. Fork the Repository: Start by forking the project repository to your github account.
  2. Clone Locally: Clone the forked repository to your local machine using a git client.
    git clone https://github.com/4Dream-UA/FastShell.Framework.git
  3. Create a New Branch: Always work on a new branch, giving it a descriptive name.
    git checkout -b new-feature-x
  4. Make Your Changes: Develop and test your changes locally.
  5. Commit Your Changes: Commit with a clear message describing your updates.
    git commit -m 'Implemented new feature x.'
  6. Push to github: Push the changes to your forked repository.
    git push origin new-feature-x
  7. Submit a Pull Request: Create a PR against the original project repository. Clearly describe the changes and their motivations.
  8. Review: Once your PR is reviewed and approved, it will be merged into the main branch. Congratulations on your contribution!
Contributor Graph


License

This project is protected under the MIT License. For more details, refer to the LICENSE file.


About

FastCLI Framework is a lightweight and extensible framework for building CLI applications in Python. It combines the simplicity of command decorators with the flexibility of output customization. It’s perfect for quick CLI utilities lightweight with zero unnecessary dependencies, and fully extensible for any custom parsers or output formats.

Resources

License

Stars

Watchers

Forks

Packages

 
 
 

Contributors

Languages