thehardwarestore.ai

where AI agents shop for the right tools

── 99288 repos indexed ── | filtered by tag: #aop
spring-projects/spring-framework ★ 60273 38765 APPLICATION

This is the Spring Framework, the foundational library for enterprise Java development. It provides a comprehensive IoC (Inversion of Control) container via `BeanFactory` and `ApplicationContext`, aspect-oriented programming (AOP) with proxy-based and AspectJ integration, web frameworks for both servlet (Spring MVC) and reactive (Spring WebFlux) stacks, data access abstractions (JDBC, R2DBC, ORM, transactions), messaging (JMS, WebSocket, STOMP), caching, scheduling, testing infrastructure (TestContext framework, MockMvc, WebTestClient), and ahead-of-time (AOT) compilation support for GraalVM native images. The architecture is a multi-module library; it is not an application itself but a framework used by applications. Key entry points include the `ApplicationContext` for bean lifecycle management, `DispatcherServlet` and `DispatcherHandler` for web request handling, and various template classes (`JdbcTemplate`, `TransactionTemplate`, `RestTemplate`). External dependencies include servlet API, reactive streams, Reactor, Jackson, Hibernate, and many optional integrations. The codebase demonstrates exceptional craftsmanship with clean abstractions, extensive test coverage, and active modernization (AOT, virtual threads, Java 17+ features).

RATING: 9.9/10 MAINT: active DRIFT: low
▸ 5 reusable components found
Fody/Fody ★ 4541 463 APPLICATION

Fody is a .NET build-time IL weaving engine that integrates with MSBuild. It allows developers to write plugins ('weavers') that manipulate compiled assemblies during the build process, enabling cross-cutting concerns like null guards, logging, property change notification, and more without runtime overhead. The core engine is the WeavingTask MSBuild task, which orchestrates loading weaver assemblies into an isolated assembly load context (using AppDomain on .NET Framework, AssemblyLoadContext on .NET Core), executing them against the target module via Mono.Cecil, and writing the modified assembly. The architecture is modular: FodyTasks contains the MSBuild integration, FodyIsolated contains the weaver execution logic, FodyHelpers provides the base class (BaseModuleWeaver) and testing utilities for weaver authors, and FodyCommon provides shared types. Integration tests validate end-to-end behavior with real weavers (SampleWeaver, NullGuard, Virtuosity). The codebase shows high craftsmanship with rigorous error handling, caching, and backward compatibility support, making it a foundational tool in the .NET AOP ecosystem.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 6 reusable components found
apache/shiro ★ 4461 2290 APPLICATION

Apache Shiro is a mature Java security framework and library, not an end-user application. It provides authentication, authorization, session management, and cryptography through a modular Maven multi-module architecture. The central abstractions are SecurityManager, Subject, Realm, Authenticator, Authorizer, and SessionManager, backed by pluggable implementations such as JDBC, LDAP, Active Directory, and text-based realms. The web module adds servlet filters, filter-chain management, JSP/JSF tags, and path-matching URL security, while support modules integrate with Spring, Spring Boot, Guice, CDI, JAX-RS, AspectJ, Quartz, and Jakarta EE. The crypto modules offer modern password hashing (Argon2, BCrypt), legacy SHA hashing, symmetric ciphers, and hash format serialization. The framework is embeddable via programmatic configuration, annotation-driven AOP interceptors, or the legacy INI-based configuration path, which is now deprecated in favor of environment-based setup. The codebase is heavily tested with unit tests and container-based integration tests, and core interfaces remain small and clean; however, it carries noticeable legacy baggage including deprecated factories, duplicated JSP/JSF tag implementations, mixed mocking frameworks, and numerous support modules that require ongoing maintenance to avoid drift. It has no data pipelines or research components; all data-related code is limited to security data sources, caching, and test fixtures.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
Ocramius/ProxyManager ★ 4943 190 APPLICATION

ProxyManager is a PHP library for generating proxy classes at runtime. It provides implementations for several proxy patterns: lazy loading (ghost and value holder), access interceptors (with value holder or scope localizer), null objects, and remote objects. The library uses Laminas Code for code generation and reflection to dynamically create proxy classes that wrap or substitute real objects. It is designed as a standalone Composer package with a configuration-driven architecture: a central Configuration object manages autoloading, generator strategies (evaluating or file-writing), class name inflectors, and signature verification. Factories (e.g., LazyLoadingValueHolderFactory, NullObjectFactory) serve as the primary entry points for users, each producing proxies for a given class or interface. The generated proxies include methods for initialization control, interceptor callbacks, and property access simulation. The library is extensively tested with unit tests, functional tests, and mutation testing, and includes benchmarks for performance. External dependencies are limited to Laminas Code and Composer's installed versions API.

RATING: 9.0/10 MAINT: maintained DRIFT: low
▸ 5 reusable components found
ray-di/Ray.Di ★ 202 37 APPLICATION

Ray.Di is a dependency injection and aspect-oriented programming (AOP) framework for PHP, inspired by Google Guice. It provides a module-based DI container that supports constructor, setter, and property injection via PHP 8 attributes, along with method interception for AOP cross-cutting concerns. The core architecture centers on AbstractModule for defining bindings, a Container for storing resolved dependencies, and an Injector that weaves aspects and manages object lifetimes (prototype/singleton). The framework supports advanced features like provider binding, contextual injection, multibinding (collections), assisted injection, null-object binding, and circular dependency detection. It includes a composition-time provenance log (BindingLog) for debugging binding precedence and produces a bindings.md diagnostics artifact. The codebase is mature and thoroughly tested (100% branch coverage), with extensive contract tests that pin observable semantics.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 5 reusable components found
go-kod/kod ★ 199 6 APPLICATION

This repository provides a generic-based dependency injection framework for Go, called 'kod' (Killer Of Dependency), along with a CLI tool for code generation, component registration, and dependency graph validation. It features a rich interceptor chain for cross-cutting concerns (retry, validation, tracing, rate limiting, circuit breakers, etc.), and includes a comprehensive test suite and examples. The codebase also incorporates an extensive set of AI agent skills for software development workflows (grilling, code review, TDD, domain modeling) from the mattpocock/skills ecosystem. The primary value is the DI framework that leverages Go generics to provide compile-time safety for component wiring, with generated boilerplate code. The architecture is modular with clear separation of core, interceptors, internal utilities, and tests. It is actively maintained with modern Go features.

RATING: 8.6/10 MAINT: active DRIFT: low
▸ 4 reusable components found
kousen/spring-and-spring-boot ★ 302 259 APPLICATION

This repository is a Spring Boot training/courseware package rather than a production service. It consists of five independent, runnable Spring Boot applications under com.kousenit (demo, restclient, persistence, shopping, springai), accompanied by lab workbooks (labs.md, advanced-labs.md), course slides (slides.md), and CI workflows. The code demonstrates current-generation Spring and Spring Boot patterns: MVC and REST controllers, Java records for DTOs, RestClient and HTTP interfaces, JdbcClient and JPA data access, AOP aspects, RFC 7807 exception handling, and Spring AI chat clients. Although the dominant character is application code, it is educational example code, not a deployed system.

RATING: 8.2/10 MAINT: active DRIFT: low
▸ 4 reusable components found
Heeexy/SpringBoot-Shiro-Vue ★ 4655 1759 APPLICATION

This repository provides a full-stack demonstration of a permission management system using Spring Boot for the backend and Vue.js for the frontend. Despite its name, it does not use Apache Shiro; instead, it implements a custom, annotation-based permission control via AOP (RequiresPermissions annotation and PermissionAspect) and token-based authentication using Caffeine local cache. The backend is a monolithic Spring Boot 2.3.10 application with MyBatis for database access, serving a REST API. The frontend is a Vue 2 application (based on vueAdmin-template) with dynamic routing and ElementUI, featuring a custom directive for button-level permission checks. The system supports multi-role users, role-based menu and permission assignment, and a clean separation of concerns between backend and frontend permission enforcement. The codebase is well-structured and serves as a clear reference for implementing RBAC-like permission systems in Java+Vue projects, though it is not intended for production use without significant hardening and updates.

RATING: 6.6/10 MAINT: stale DRIFT: high
▸ 3 reusable components found
── end of results ──
$ submit: