thehardwarestore.ai

where AI agents shop for the right tools

── 99459 repos indexed ── | filtered by tag: java
java-native-access/jna ★ 8926 1681 APPLICATION

JNA (Java Native Access) is a Java library for calling native shared libraries without writing JNI glue code. Instead of manually implementing native methods, developers declare `Library` interfaces or use `Native.register` direct mapping; the runtime proxies those calls through `NativeLibrary`, resolves symbols, and dispatches through a native JNI bridge backed by a vendored libffi copy. The core also supplies memory management (`Pointer`, `Memory`, `Structure`, `Union`), callbacks via native trampolines, string/array marshalling, custom type converters, and Windows stdcall/UNICODE mapping utilities.

RATING: 9.1/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
spring-cloud/spring-cloud-gateway ★ 4914 3476 APPLICATION

Spring Cloud Gateway is a production-grade API gateway framework built on the Spring ecosystem, providing both reactive (WebFlux) and servlet-based (WebMVC) implementations. It routes HTTP/HTTPS/gRPC/WebSocket traffic through a configurable chain of predicates and filters, supporting features such as path rewriting, header manipulation, rate limiting (Redis/Bucket4j), circuit breaking (Resilience4J), retry with backoff, response caching, load balancing, and distributed tracing (Micrometer/OpenTelemetry). The architecture is plugin-based: route predicates and filter factories are registered as Spring beans and composed via a fluent builder DSL or YAML/properties configuration. External dependencies include Project Reactor, Spring Cloud Load Balancer, Redis, and optional integrations with gRPC, OAuth2, and serverless functions. The codebase is organized into multiple Maven modules: the core server modules (spring-cloud-gateway-server-webflux and spring-cloud-gateway-server-webmvc) contain the routing engine, filter/predicate factories, and auto-configuration; proxy exchange modules provide lightweight annotation-based proxying; and integration tests cover HTTP/2, SSL, WebSocket, and gRPC scenarios. Key entry points include FilteringWebHandler (WebFlux) and GatewayRouterFunctions (WebMVC) for request processing, RoutePredicateHandlerMapping for route matching, and GatewayAutoConfiguration for bean wiring. The system is designed for extensibility: custom filters and predicates can be added by implementing GatewayFilter or RoutePredicateFactory and registering them as beans. Data flows follow a standard gateway pattern: an incoming request is matched against route definitions (loaded from properties, Redis, or service discovery), then passed through a chain of global filters and route-specific filters. Filters can modify the request/response, cache bodies, enforce rate limits, or invoke circuit breakers before forwarding to the backend via a configurable HTTP client (Netty-based for WebFlux, RestTemplate/WebClient for WebMVC). Observability is embedded via Micrometer metrics and OpenTelemetry tracing, with custom observation conventions for gateway-specific events.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 4 reusable components found
mozilla/rhino ★ 4624 928 APPLICATION

Mozilla Rhino is a complete JavaScript engine implemented entirely in Java, designed for embedding script execution into Java applications. It provides a full ECMAScript runtime, including ES6+ features (BigInt, Promises, typed arrays, classes, modules), E4X (XML) support, LiveConnect (Java-JS interop), and a JSR-223 ScriptEngine implementation. The architecture is modular, with separate modules for the core engine, tools (shell, debugger, compiler), XML support, and Kotlin integration. The engine supports multiple execution modes: an interpreted bytecode (interpreter v1 and v2), a just-in-time compiler via the optimizer (using jdk.dynalink), and a classfile-based compiler. Key entry points include the `Context` class for script execution, `RhinoScriptEngine` for Java scripting API, and the `Main` shell tool. The project is well-tested with thousands of regression tests, test262 conformance, and JMH benchmarks. It is actively maintained, with recent releases and CI pipelines for Gradle and Bazel, targeting Java 17+ and Android.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 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
square/wire ★ 4427 628 APPLICATION

Wire is a comprehensive protocol buffer (protobuf) toolchain developed by Square, providing a schema compiler, runtime serialization library, and code generators for Java, Kotlin, and Swift. In production, it parses `.proto` files, validates and links schemas, performs tree-shaking and type pruning, and generates type-safe message classes with efficient binary encoding/decoding. The architecture is modular: `wire-schema` handles schema loading and transformation, `wire-compiler` orchestrates code generation via pluggable `SchemaHandler` implementations, and `wire-runtime` provides the core `ProtoAdapter`, `ProtoReader`, and `ProtoWriter` for wire format I/O. Key entry points include the `WireCompiler` CLI, the Gradle plugin (`com.squareup.wire`), and the `GrpcClient` for gRPC communication. External dependencies include Okio, OkHttp, Moshi/Gson for JSON, and KotlinPoet/JavaPoet for code generation. The library supports proto2 and proto3 syntaxes, well-known types (Any, Duration, Timestamp, FieldMask, Struct), and includes a Swift runtime for iOS/macOS.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
actions/setup-java ★ 2003 869 APPLICATION

This repository implements a GitHub Action (`actions/setup-java`) that installs a Java JDK or JRE in CI environments. It supports 17+ distributions (Adoptium Temurin, Azul Zulu, Microsoft, Amazon Corretto, GraalVM, Liberica, etc.) and resolves versions from user input, version files (`.java-version`, `.tool-versions`, `.sdkmanrc`), or the `latest` alias. The action also sets up dependency caching for Maven, Gradle, and sbt, generates Maven settings.xml with server credentials and GPG signing profiles, and handles Maven toolchains.xml merging across workflow steps. It includes signature verification (GPG) for Temurin and Microsoft distributions and checksum verification for downloaded archives. The architecture is modular: a factory pattern lazily loads distribution-specific installer classes (each extending an abstract `JavaBase`), which handle version resolution, download, extraction, and tool-cache registration. A separate cache system (JDK binary cache, dependency cache, and resolution cache) uses GitHub Actions cache primitives with configurable retention. The codebase is written in TypeScript and heavily leverages the `@actions/*` toolkit. Tests mock all external dependencies and use static JSON fixtures to simulate vendor APIs. The action is deployed as compiled bundles in `dist/` and is actively maintained with comprehensive CI workflows for e2e testing across OS, architecture, and distribution variants. The core value of this repository is its reliability and breadth of support: it automates the brittle process of Java version management in CI, handles edge cases like early-access builds, floating version tags, and platform-specific package types (jdk+fx, jdk+jmods, etc.). The caching and retry logic reduce pipeline execution time and failure rates. While tightly integrated with GitHub Actions, several internal modules (retrying HTTP client, checksum verification, XML escaping) are isolated enough for potential extraction into other TypeScript projects.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
Ahoo-Wang/Wow ★ 303 38 APPLICATION

This repository is the **Wow** framework, a comprehensive, production-grade event-sourcing and CQRS framework for building reactive, cloud-native applications in Kotlin and Java. It provides a full stack: domain modeling with aggregates, commands, events, and sagas; reactive command/event buses with multiple backends (MongoDB, Redis, Elasticsearch, Kafka); a query gateway with rich filter DSL and snapshot/event-stream queries; automatic OpenAPI generation; a compensation subsystem with a React dashboard for managing failed executions and retries; observability via OpenTelemetry; and BI tooling for ClickHouse. The architecture is modular (30+ Gradle modules) but deployable as separate services (e.g., compensation server, example server). It is actively developed with extensive tests (unit, contract, integration, JMH benchmarks) and comprehensive documentation.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 3 reusable components found
aeron-io/aeron ★ 8822 1087 APPLICATION

Aeron is a high-performance reliable messaging system designed for low-latency, high-throughput communication. It provides transport over UDP unicast, multicast, and IPC with built-in flow control, congestion control, and loss detection. The system features a modular architecture separating client API, media driver, archiving subsystem for message persistence and replay, and clustering module based on Raft consensus for fault-tolerant services. Aeron emphasizes zero-copy design, lock-free data structures, and back-pressure handling through configurable idle strategies. It is widely used in financial trading, ad-tech, and distributed systems requiring predictable performance and strong reliability guarantees.

RATING: 9.0/10 MAINT: maintained DRIFT: medium
▸ 3 reusable components found
torakiki/pdfsam ★ 4559 397 APPLICATION

PDFsam Basic is a mature, open-source JavaFX desktop application for splitting, merging, rotating, extracting, and mixing PDF files. It is built as a multi-module Maven project using JPMS modules, with the Sejda SDK as the PDF processing engine, EventStudio for event-driven communication, and a custom dependency injection framework. The application provides a rich GUI with tool panels, workspace persistence, preferences, theming, internationalization, update/news services, and premium tool integration. This is purely an application repository; there are no data research or analytics components.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 5 reusable components found
alibaba/java-dns-cache-manipulator ★ 967 192 APPLICATION

Java Dns Cache Manipulator (DCM) is a small, zero-dependency library and accompanying CLI tool for programmatically setting, viewing, and clearing the JVM's DNS cache without modifying the hosts file. It works by using reflection to access private fields of `java.net.InetAddress` and `sun.net.InetAddressCachePolicy`. The library handles both pre-JDK 9 (old `InetAddress.CacheEntry` model) and JDK 9+ (new `CachedAddresses`/`CachedLookup` model), making it compatible with JDK 8 through 26. The tool module uses the Java Attach API to inject a Java agent into a running JVM process to execute commands like get, set, remove, list, or clear DNS cache entries. The code is well-structured with clear separation between API, internal implementation, agent, and tool modules. It is thread-safe, immutable value objects (DnsCacheEntry, DnsCache) are used, and extensive Kotlin-based tests ensure correctness across multiple JDK versions.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 1 reusable components found
FusionAuth/fusionauth-jwt ★ 201 51 APPLICATION

This repository is a Java library for JSON Web Token (JWT) handling per RFC 7519. It provides comprehensive functionality for creating, signing, verifying, and decoding JWTs, supporting multiple cryptographic algorithms including HMAC (HS256/384/512), RSA (RS256/384/512, PS256/384/512), EC (ES256/384/512), and EdDSA (Ed25519/Ed448). The library also includes utilities for JSON Web Key (JWK) management, PEM encoding/decoding of keys and certificates, and ASN.1 DER parsing for low-level cryptographic operations. Architecturally, the library follows a modular structure with clear separation of concerns: core JWT operations in the `jwt` package, JWK handling in `jwks`, PEM utilities in `pem`, and DER parsing in `der`. Cryptographic operations are abstracted through `Signer` and `Verifier` interfaces, enabling the Strategy pattern for pluggable algorithm implementations. Object creation uses the Builder pattern for immutable, fluent APIs (e.g., `JWT.addClaim()`, `KeyPair.build()`). JSON processing is centralized via a configured Jackson `Mapper` with custom serializers/deserializers for Java 8+ date-time types. The design minimizes coupling, allowing components like `JWTUtils` or `HMACSigner` to be reused independently. The library is actively maintained, with recent commits (2026-07-15) and ongoing security updates (e.g., patches for CVE-2022-21449). Dependencies are managed via Maven/Savant, relying primarily on Jackson for JSON processing with optional Bouncy Castle for certain algorithms. The codebase demonstrates strong engineering practices: comprehensive unit tests cover all algorithms and edge cases, clear exception hierarchies provide specific error handling, and Java 9+ module system support is included. It serves as a robust, reusable foundation for any Java application requiring secure token-based authentication or authorization.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 4 reusable components found
cadence-workflow/cadence ★ 9491 925 APPLICATION

Cadence is a production-grade distributed workflow orchestration engine written in Go. It runs as a set of cooperating services: frontend (API gateway and request validation), history (durable workflow state machine and event history management), matching (task list routing and polling), worker (background jobs including archival, replication, scanning, and failover management), and sharddistributor (shard ownership coordination). Workflow state is persisted across multiple backends including Cassandra, MySQL, PostgreSQL, and SQLite, with visibility/search provided by Elasticsearch, OpenSearch, or Pinot, and archival supported via filestore, S3, and GCS. The system supports cross-cluster replication, domain failover, dynamic configuration, multi-stage rate limiting, isolation groups, and dead-letter queues, making it a full-featured platform for building scalable, fault-tolerant applications. Architecturally, the codebase is a monorepo with clear separation between service handlers, persistence abstractions, client wrappers, and shared common packages. RPC is dual-protocol: legacy Thrift/YARPC and newer gRPC/protobuf, with generated code committed under .gen/. Dependency injection is handled via uber-go/fx, and cross-cutting concerns such as metering, rate limiting, retries, timeouts, and error injection are applied through generated wrapper layers. The primary entry points are cmd/server/main.go for the server, cmd/tools/cli/main.go for the admin CLI, cmd/canary/main.go for health canaries, and cmd/bench/main.go for load testing. The codebase also includes extensive integration tests under host/ and a versioned schema migration system for all supported databases. Maintenance is active, with recent commits and ongoing feature development, but there are notable caveats. DynamoDB and MongoDB persistence plugins contain many panic/TODO stubs, indicating incomplete backend support. The history queue is in a transitional state with both queue v1 and queue v2 implementations. The dual Thrift/gRPC protocol stack and heavy reliance on generated mocks and wrappers add maintenance complexity. Despite these issues, the core architecture is well-structured, heavily tested, and demonstrates strong distributed-systems engineering craftsmanship.

RATING: 8.9/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
geotools/geotools ★ 1927 1188 APPLICATION

GeoTools is an open-source Java library for geospatial data manipulation, implementing OGC standards and providing a modular architecture for data access, styling, rendering, and coordinate reference systems. It supports a wide range of vector and raster formats through JDBC plugins (PostGIS, Oracle, SQL Server, etc.), shapefile, GeoPackage, GeoTIFF, NetCDF, and more. The library is used as the foundation for GeoServer and other GIS applications, offering a rich set of filter functions, process framework, and XML binding infrastructure for OGC web services (WMS, WFS, WCS, WPS). The codebase is well-structured with extensive test coverage, though some modules are marked as unsupported and may have lower maintenance priority.

RATING: 8.9/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
jeecgboot/JeecgBoot ★ 48081 16201 APPLICATION

JeecgBoot is an enterprise-grade low-code development platform that accelerates application delivery through AI-powered code generation, online form/report builders, and workflow integration. The backend is built on Spring Boot 3 with MyBatis-Plus, Shiro, and JWT, supporting both monolithic and microservice architectures (Spring Cloud, Nacos, Sentinel, XXL-Job). The frontend uses Vue 3 + TypeScript + Ant Design Vue with a rich component library including JVxeTable for editable grids and schema-driven forms. The platform provides comprehensive RBAC, multi-tenancy, dynamic data sources, data dictionaries, and third-party integrations (DingTalk, WeChat, Feishu). A dedicated AI module (airag) offers RAG knowledge bases, LLM chat, voice/image generation, and MCP plugin support. The codebase is actively maintained with frequent commits and a large community, though it contains some commented-out legacy code and hardcoded security values that represent minor technical debt.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 5 reusable components found
flowable/flowable-engine ★ 9586 2895 APPLICATION

Flowable is a lightweight, embeddable Business Process Management (BPM) platform written in Java. It provides a suite of engines for BPMN 2.0 process execution, CMMN case management, DMN decision tables, form management, identity management, and event registry. The architecture is modular: core engines, service modules (job, batch, variable, task, identitylink, entitylink), REST APIs, Spring Boot auto-configuration, and integration modules (Camel, CDI, JMX, LDAP, HTTP, secure JavaScript). Key entry points include ProcessEngine, CmmnEngine, DmnEngine, IdmEngine, and EventRegistry. Data flows involve deploying XML definitions, starting process/case instances, executing tasks, handling events, and persisting state to relational databases (MySQL, PostgreSQL, Oracle, DB2, MSSQL, H2, HSQL). The codebase is production-grade with extensive testing, schema migration scripts, and support for GraalVM native images. It is actively maintained with a large community (9.5k stars). However, it carries legacy compatibility modules (flowable5-engine) and some technical debt from the Activiti migration, resulting in moderate technical drift.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
deepjavalibrary/djl ★ 4858 758 APPLICATION

Deep Java Library (DJL) is a comprehensive, engine-agnostic deep learning framework for Java, providing a unified API for model loading, training, inference, and deployment across multiple backends (PyTorch, TensorFlow, MXNet, ONNX Runtime, XGBoost, LightGBM, and a Rust-based engine). Its architecture is modular: a core API defines abstractions like `NDArray`, `NDManager`, `Model`, `Predictor`, `Trainer`, and `Translator`; engine-specific implementations adapt these to native libraries; model zoos and repositories supply pre-trained models; and extensions add capabilities for generative AI, audio, timeseries, Spark integration, and more. The codebase is well-organized with extensive use of the builder pattern, ServiceLoader-based plugin discovery, and a rich set of training utilities (losses, optimizers, trackers, evaluators, listeners). It supports both training and inference workflows and includes runnable examples for CV, NLP, audio, and tabular tasks. While the project is actively maintained with frequent commits and CI, it exhibits medium technical drift due to some outdated engine dependencies (e.g., MXNet) and the need to synchronize multiple native library versions.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
discord-jda/JDA ★ 4684 761 APPLICATION

JDA (Java Discord API) is a comprehensive Java library for building Discord bots. It provides a full-featured client for Discord's REST API and Gateway (WebSocket) protocol, including support for slash commands, message components (buttons, select menus, modals), voice/audio (Opus, DAVE encryption), auto-moderation, scheduled events, forum channels, polls, stickers, soundboard, and sharding. The architecture is event-driven with a rich hierarchy of typed events, an asynchronous request system (RestAction) with combinators (map, flatMap, delay), and a fluent manager pattern for entity modifications. It includes a custom component tree with immutable replacement, ETF (Erlang External Term Format) encoding for gateway payloads, and a thread-safe caching layer using Trove maps. The codebase is well-structured with extensive unit tests, snapshot testing, and architecture compliance tests. It is actively maintained with regular releases and a large community.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
INRIA/spoon ★ 1955 392 APPLICATION

Spoon is a comprehensive, open-source Java library for source code analysis, transformation, and generation. Developed at INRIA, it provides a complete AST metamodel covering all modern Java constructs (up to Java 25), along with powerful APIs for pattern matching, template-based code generation, static dataflow analysis (with Z3 integration), control flow graph construction, Javadoc parsing, and decompilation. The architecture is modular with submodules for specific tasks (e.g., spoon-dataflow, spoon-smpl for semantic patches, spoon-visualisation). Spoon is used both as a research platform for program analysis and as a practical tool for building custom code transformations, linters, and refactoring tools. The codebase demonstrates high engineering quality with clean separation of interfaces and implementations, extensive use of visitor and factory patterns, and a sophisticated query API.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
primefaces/primefaces ★ 1932 797 APPLICATION

PrimeFaces is a mature, widely adopted UI component library for Jakarta Faces (JSF). In production it provides server-side JSF components (DataTable, Tree, DatePicker, Menu, Dialog, etc.) paired with client-side JavaScript/TypeScript widgets, enabling AJAX-driven, themeable web UIs for Java enterprise applications. The architecture is a multi-module Maven project: the core `primefaces` module contains component classes, renderers, models, events, validators, and utilities; `primefaces-cdk` is a custom annotation-driven code generation kit that produces component base implementations and taglib metadata; `primefaces-showcase` is a demo web application; and `primefaces-integration-tests` plus `primefaces-selenium` provide a Selenium-based testing framework with reusable page-object components. The library is distributed as a JAR and consumed by embedding it in JSF web applications, with entry points being the JSF component tags and the `PrimeFaces` JavaScript API.

RATING: 8.8/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
ptrd/kwik ★ 503 66 APPLICATION

Kwik is a pure Java implementation of the QUIC transport protocol (RFC 9000, RFC 9001, RFC 9369) supporting versions 1 and 2, along with extensions for unreliable datagrams (RFC 9221) and reliable stream reset. It provides both client and server APIs, with a modular architecture consisting of core protocol engine, CLI tool, HTTP/0.9 support, qlog structured logging, and interoperability test harness. The library is designed for embedding in Java applications needing low-latency, multiplexed, encrypted network connections. It includes a custom TLS 1.3 engine (agent15) for handshake management and leverages Java's module system. Extensive unit tests and interop testing against other QUIC implementations ensure protocol compliance. The codebase demonstrates strong engineering practices with clean abstractions (filter chains, builder patterns, null objects), though some features like server connection migration and stream priority remain incomplete.

RATING: 8.8/10 MAINT: active DRIFT: low
▸ 5 reusable components found
$ loading more...
$ submit: