awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
niieani avatar

niieani/bash-oo-framework

0
View on GitHub↗
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.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

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.
5,620 stars·243 forks·Shell·MIT·22 views

Star history

Star history chart for niieani/bash-oo-frameworkStar history chart for niieani/bash-oo-framework

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Frequently asked questions

What does niieani/bash-oo-framework do?

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.

What are the main features of niieani/bash-oo-framework?

The main features of niieani/bash-oo-framework are: 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.

Which projects share features with niieani/bash-oo-framework?

Projects with overlapping indexed features include: 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…

Projects sharing features with Bash Oo Framework

These projects share indexed features with Bash Oo Framework. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • bats-core/bats-corebats-core avatar

    bats-core/bats-core

    6,115View on 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
    View on GitHub↗6,115
  • wren-lang/wrenwren-lang avatar

    wren-lang/wren

    8,172View on 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
    View on GitHub↗8,172
  • goravel/goravelgoravel avatar

    goravel/goravel

    4,905View on 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
    View on GitHub↗4,905
  • idealvin/coostidealvin avatar

    idealvin/coost

    4,205View on 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
    View on GitHub↗4,205
  • Compare all 30 related projects→