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
alibaba avatar

alibaba/BeeHiveArchived

0
View on GitHub↗
4,339 stars·780 forks·Objective-C·GPL-2.0·17 viewsgithub.com/alibaba/BeeHive/blob/master/README.md↗

BeeHive

BeeHive is a modular architecture framework for iOS applications. It provides a dependency injection container, an event bus middleware, a module lifecycle manager, and a service locator to organize an application into independent functional modules.

The framework distinguishes itself by utilizing asynchronous module loading to reduce application startup time and prevent main thread blocking. It employs macro-driven automatic module registration to decouple instantiation from application logic and uses protocol-based service mapping to resolve dependencies without requiring direct imports.

The project covers high-level capabilities for inter-module communication and event orchestration, allowing for the broadcasting of custom business triggers across isolated units. It also includes infrastructure for global application state distribution and the coordination of initialization and teardown sequences across the module lifecycle.

Features

  • iOS Application Architectures - Organizes large iOS applications into independent functional modules to improve maintainability and reduce coupling.
  • Typed Event Broadcasts - Defines and broadcasts application-specific typed events to notify registered modules of business triggers.
  • System Event Routing - Broadcasts system and custom events to multiple isolated modules to prevent tight coupling.
  • Concrete Type Mappings - Maps abstract protocols to concrete class implementations to resolve dependencies without direct module imports.
  • Component Lifecycle Coordination - Coordinates standardized startup and teardown sequences across decoupled modules to synchronize application state.
  • Dependency Injection Containers - Provides a centralized container for registering and resolving service protocols to decouple components.
  • Event Bus Systems - Implements a communication layer for broadcasting events across isolated modules using a decoupled bus.
  • Interface-Based Isolation - Organizes functionality into independent units that communicate through defined interfaces to separate implementation from service calls.
  • Dependency Injection - Manages the registration and invocation of service interfaces to eliminate direct dependencies between components.
  • Module Lifecycle Management - Provides a coordinator for managing the initialization and teardown of independent functional modules.
  • Inter-Module Communication - Provides a central event bus to route system and custom events between isolated functional modules.
  • Interface-Based Service Swapping - Maps protocols to concrete implementations to enable dynamic service resolution and component swapping.
  • Service Instance Managers - Retrieves service instances by protocol using singleton patterns or multiple instance creation.
  • Service Locators - Implements a service locator pattern to map protocols to concrete implementations for dynamic service resolution.
  • Service-to-Application Mappings - Maps protocols to specific class implementations to allow dynamic service resolution.
  • Global Application State - Stores and distributes environment variables and application-wide configuration data across all registered modules.
  • Module Lifecycle Events - Broadcasts system-wide events that notify modules of state changes throughout their operational lifecycle.
  • App Launch Optimizations - Loads app modules asynchronously to reduce launch time and prevent main thread blocking.
  • Asynchronous Module Loading - Loads app modules asynchronously in the background to reduce launch time and prevent the main thread from blocking.
  • Automatic Module Registrations - Uses compiler macros to automatically discover and register functional units during the build process.
  • Singleton Instance Sharing - Ensures shared service instances are retrieved via a central registry to maintain consistent state.
  • Module Initialization Coordination - Coordinates specific actions during application and module initialization phases to decouple setup logic.
  • Macro-Based Registrations - Uses compiler macros to automatically discover and register functional modules during the build process.

Star history

Star history chart for alibaba/beehiveStar history chart for alibaba/beehive

How this analysis was created: This summary and feature list were written by an AI model that read the project's README and public documentation pages. Each feature links to the documentation it came from; stars, license and language come straight from the GitHub API. The model does not read the source code, and the analysis is refreshed when the project is re-analysed. Learn more on our About page.

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

Open-source alternatives to BeeHive

Similar open-source projects, ranked by how many features they share with BeeHive.
  • sergdort/cleanarchitecturerxswiftsergdort avatar

    sergdort/CleanArchitectureRxSwift

    4,100View on GitHub↗

    This project is a Swift iOS architecture template that implements the Clean Architecture pattern. It organizes software into distinct layers to decouple business rules from external frameworks, user interfaces, and infrastructure to improve testability and maintenance. The template incorporates Domain Driven Design to isolate core business logic and utilizes a modular application structure to divide features into independent modules. It employs the Coordinator pattern to remove routing logic from view controllers and a dependency injection framework to ensure components remain independent and

    Swift
    View on GitHub↗4,100
  • typestack/typeditypestack avatar

    typestack/typedi

    4,242View on GitHub↗

    TypeDI is a TypeScript dependency injection container and inversion of control tool. It functions as a centralized registry and service locator that manages object instantiation and decouples component dependencies using type inference and decorators. The project provides scoped dependency management to isolate service instances within specific contexts, preventing data leakage between different execution flows. It supports flexible service resolution through the use of type-safe tokens and the ability to map unique identifiers or class constructors to specific service instances. The contain

    TypeScriptdependency-injectioninversion-of-controlioc
    View on GitHub↗4,242
  • prismlibrary/prismPrismLibrary avatar

    PrismLibrary/Prism

    6,794View on GitHub↗

    Prism is a XAML application framework and MVVM architectural framework designed to build loosely coupled and testable applications across WPF, Xamarin Forms, and WinUI. It serves as a structural pattern implementation that separates business logic from the user interface to improve maintainability and testing. The framework provides a XAML event bus for exchanging data and triggering actions between independent components without direct coupling. It also functions as a dependency injection integrator, bridging external inversion-of-control containers to manage service delivery across multiple

    C#c-sharphacktoberfestmvvm
    View on GitHub↗6,794
  • xiaojinzi123/componentxiaojinzi123 avatar

    xiaojinzi123/Component

    2,925View on GitHub↗

    Component is a modularization, navigation routing, and service location framework designed for Android applications. It provides architectural primitives that split large codebases into decoupled feature modules, enabling independent module execution and automated module lifecycles during startup and shutdown. Compile-time annotation processing generates routing metadata and proxy classes to eliminate manual configuration overhead while supporting interface-based service discovery and type-safe screen transitions. The framework manages cross-module communication and navigation through a centr

    Javaandroidandroid-architectureandroidx
    View on GitHub↗2,925
See all 30 alternatives to BeeHive→

Frequently asked questions

What does alibaba/beehive do?

BeeHive is a modular architecture framework for iOS applications. It provides a dependency injection container, an event bus middleware, a module lifecycle manager, and a service locator to organize an application into independent functional modules.

What are the main features of alibaba/beehive?

The main features of alibaba/beehive are: iOS Application Architectures, Typed Event Broadcasts, System Event Routing, Concrete Type Mappings, Component Lifecycle Coordination, Dependency Injection Containers, Event Bus Systems, Interface-Based Isolation.

What are some open-source alternatives to alibaba/beehive?

Open-source alternatives to alibaba/beehive include: sergdort/cleanarchitecturerxswift — This project is a Swift iOS architecture template that implements the Clean Architecture pattern. It organizes… typestack/typedi — TypeDI is a TypeScript dependency injection container and inversion of control tool. It functions as a centralized… prismlibrary/prism — Prism is a XAML application framework and MVVM architectural framework designed to build loosely coupled and testable… xiaojinzi123/component — Component is a modularization, navigation routing, and service location framework designed for Android applications.… code4craft/tiny-spring — tiny-spring is a Java inversion of control container and aspect-oriented programming framework. It provides a system… facebookarchive/inject — Inject is a dependency injection framework for Go that automates the assembly of complex object graphs. By leveraging…