awesome-repositories.com
博客
MCP
awesome-repositories.com

通过 AI 驱动的搜索,发现最优秀的开源仓库。

探索精选搜索开源替代品自托管软件博客网站地图
项目关于排名机制媒体报道MCP 服务器
法律隐私政策服务条款
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·
niieani avatar

niieani/bash-oo-framework

0
View on GitHub↗
5,620 星标·243 分支·Shell·MIT·5 次浏览github.com/niieani/bash-oo-framework/discussions↗

Bash Oo Framework

This project is a collection of specialized shell frameworks that provide object-oriented programming patterns, unit testing tools, and a standard utility library for Bash scripts. It enables the organization of script logic through the implementation of classes, objects, and singleton design patterns to create modular and reusable components.

The framework includes a dedicated exception handling library that captures command failures using try-catch blocks and stores error metadata in objects. It also provides a unit testing framework that executes shell commands as independent test cases and monitors exit codes to detect failures.

Additional capabilities cover application log management with severity-based stream routing and terminal user interface formatting for applying colors and symbols to console output. The standard library also includes tools for manipulating complex data types, such as arrays, strings, and numbers.

Features

  • OO Pattern Implementations - Enables the organization of script logic through the implementation of classes, objects, and singleton design patterns.
  • Object-Oriented Programming - Implements object-oriented programming patterns and classes within Bash shell scripts for modularity.
  • Object-Oriented Scripting - Provides a framework for implementing object-oriented programming patterns and classes within Bash scripts.
  • Exception-Based Error Handling - Intercepts shell command failures using signal traps to simulate try-catch error handling blocks.
  • Shell Exception Libraries - Provides a dedicated system for capturing command failures and storing error metadata in objects.
  • Shell Standard Libraries - Provides a comprehensive collection of reusable functions for handling complex data types and system logging.
  • Object Simulation Namespaces - Simulates object-oriented behavior using variable prefixing and namespaces to organize related data and functions.
  • Bash Script Testing - Executes shell commands as independent test cases to identify failures through exit code monitoring.
  • Unit Testing Frameworks - Provides a framework for executing shell commands as independent test cases and monitoring exit codes.
  • Dynamic Method Invocation - Implements the process of resolving method names at runtime to execute specific shell functions.
  • Shell Expression Evaluators - Provides a mechanism to determine object properties by evaluating strings as expressions in the shell.
  • Shell Data Type Manipulators - Provides a set of specialized methods for processing strings, numbers, and arrays, including regex matching.
  • Dynamic State Variables - Tracks object properties and class instances by storing state in dynamically named global shell variables.
  • Application Log Routing - Routes system messages to different output streams based on severity levels for better debugging.
  • Category-Based Log Routing - Redirects log entries to different file descriptors based on severity levels to separate output streams.
  • Console Output Formatting - Applies colors and symbols to terminal text with automatic fallbacks for environments without visual support.
  • Terminal Output Formatting - Applies colors and symbols to console output with automatic fallbacks for restricted environments.
  • Shell Script Development - Object-oriented boilerplate and standard library for shell.

Star 历史

niieani/bash-oo-framework 的 Star 历史图表niieani/bash-oo-framework 的 Star 历史图表

AI 搜索

探索更多 awesome 仓库

用简单的语言描述您的需求 —— AI 将根据相关性为您从数千个精选开源项目中进行排序。

Start searching with AI

Bash Oo Framework 的开源替代方案

相似的开源项目,按与 Bash Oo Framework 的功能重合度排序。
  • bats-core/bats-corebats-core 的头像

    bats-core/bats-core

    6,115在 GitHub 上查看↗

    BATS is a testing framework and automation tool for shell scripts and Unix programs. It functions as a test runner that validates the behavior of shell scripts by verifying command success and exit codes through automated test suites. The framework provides a compatible interface for the Test Anything Protocol, allowing it to export results for integration with external reporting tools and build pipelines. It also supports the use of container images to ensure consistent execution of test suites across different operating systems. The system manages the automated execution of test cases, inc

    Shell
    在 GitHub 上查看↗6,115
  • wren-lang/wrenwren-lang 的头像

    wren-lang/wren

    8,043在 GitHub 上查看↗

    Wren is an embeddable, class-based scripting language and bytecode interpreter. It provides a dependency-free virtual machine designed for integrating dynamic script execution into host applications via a C API. The language is centered on a modern object-oriented model featuring inheritance, method overloading, and first-class functions. It utilizes a concurrent fiber runtime to manage lightweight, cooperatively scheduled execution paths without relying on operating system threads. The project includes a comprehensive suite of object-oriented primitives, closure-based state capture, and a m

    Wrenbytecodecfibers
    在 GitHub 上查看↗8,043
  • goravel/goravelgoravel 的头像

    goravel/goravel

    4,749在 GitHub 上查看↗

    Goravel is a full-featured development scaffold and framework for building web applications, REST APIs, and gRPC services using the Go programming language. It implements a model-view-controller architecture and provides a comprehensive toolkit for high-performance remote procedure call servers and clients. The framework is distinguished by its extensive integrated ecosystem, which includes a fluent object-relational mapper for database management and a dedicated command-line interface toolkit for administrative automation and project scaffolding. It features a driver-based service abstractio

    Goapiframeworkgo
    在 GitHub 上查看↗4,749
  • idealvin/coostidealvin 的头像

    idealvin/coost

    4,205在 GitHub 上查看↗

    Coost is a concurrent network framework and coroutine scheduler designed for building high-performance TCP, HTTP, and RPC services. It provides a set of tools for handling non-blocking IPv4 and IPv6 communication, integrating SSL encryption and a lightweight execution engine that manages concurrent tasks using shared stacks. The project features a specialized JSON RPC implementation for exchanging structured data over encrypted connections and a high-performance logging system. This logging infrastructure supports topic-based routing, frequency filtering, and automated stack trace capture for

    C++benchmarkcoroutineflag
    在 GitHub 上查看↗4,205
查看 Bash Oo Framework 的所有 30 个替代方案→

常见问题解答

niieani/bash-oo-framework 是做什么的?

This project is a collection of specialized shell frameworks that provide object-oriented programming patterns, unit testing tools, and a standard utility library for Bash scripts. It enables the organization of script logic through the implementation of classes, objects, and singleton design patterns to create modular and reusable components.

niieani/bash-oo-framework 的主要功能有哪些?

niieani/bash-oo-framework 的主要功能包括:OO Pattern Implementations, Object-Oriented Programming, Object-Oriented Scripting, Exception-Based Error Handling, Shell Exception Libraries, Shell Standard Libraries, Object Simulation Namespaces, Bash Script Testing。

niieani/bash-oo-framework 有哪些开源替代品?

niieani/bash-oo-framework 的开源替代品包括: bats-core/bats-core — BATS is a testing framework and automation tool for shell scripts and Unix programs. It functions as a test runner… wren-lang/wren — Wren is an embeddable, class-based scripting language and bytecode interpreter. It provides a dependency-free virtual… goravel/goravel — Goravel is a full-featured development scaffold and framework for building web applications, REST APIs, and gRPC… idealvin/coost — Coost is a concurrent network framework and coroutine scheduler designed for building high-performance TCP, HTTP, and… catchorg/catch2 — Catch2 is a comprehensive framework for C++ software validation, providing an environment for unit testing,… doctest/doctest — doctest is a lightweight C++ unit testing framework and assertion library. It provides a single-header implementation…