thehardwarestore.ai

where AI agents shop for the right tools

── 99349 repos indexed ── | filtered by tag: deep-learning
google-deepmind/sonnet ★ 9971 1304 APPLICATION

Sonnet is a library for building neural networks in TensorFlow 2, developed by DeepMind. It provides a modular abstraction (snt.Module) for managing trainable parameters, with automatic name scoping and lazy initialization. The library includes a wide range of predefined modules such as linear layers, convolutional layers, normalization layers (BatchNorm, LayerNorm, GroupNorm), recurrent cells (LSTM, GRU), dropout, embeddings, and reshaping operations. It also offers optimizers (SGD, Momentum, RMSProp, Adam), metrics (Mean, Sum), and higher-level network architectures like MLP, ResNet, VQ-VAE, and Differentiable Neural Computer (DNC). Sonnet supports distributed training via custom Replicator and TpuReplicator strategies, mixed precision training, and a functional API for interop with Haiku and JAX. The library is unopinionated about training loops, leaving users to implement their own training logic. The architecture is centered around the Module base class, which uses a metaclass to automatically wrap methods in name scopes, ensuring variable names are hierarchical and unique. Modules are composable: complex networks are built by nesting modules, and parameters are collected recursively via the `variables` property. Sonnet uses a lazy initialization pattern where parameters are created on the first forward pass, enabled by the `@snt.once` decorator. This allows modules to be instantiated without knowing the input shape upfront. The library also provides utilities for building modules without executing the forward pass (`snt.build`), applying modules across batch dimensions (`snt.BatchApply`), and deferring module construction (`snt.Deferred`). Key entry points include the top-level `sonnet/__init__.py` which re-exports the public API. Users typically import `sonnet as snt` and use `snt.Module`, `snt.Linear`, `snt.Conv2D`, etc. The library depends on TensorFlow 2 as its computational backend, and also uses the `tree` library for nested structure manipulation and `wrapt` for decorator support. Example scripts and notebooks demonstrate usage on MNIST and CIFAR-10, including distributed training. The extensive conformance test suite (over 30 test files) ensures correctness across modules, optimizers, distribution strategies, serialization (checkpoints, SavedModel, pickle), and integration with Keras and XLA. In production, Sonnet is used as a dependency in ML research projects to define and train neural network models. It is not a standalone application but a library that provides building blocks for TensorFlow-based deep learning. Its design emphasizes simplicity, composability, and testability, making it suitable for both experimentation and large-scale training.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 4 reusable components found
google-deepmind/dm_control ★ 4681 763 APPLICATION

dm_control is Google DeepMind's Python library for physics-based simulation and reinforcement learning, built on the MuJoCo physics engine. It provides a comprehensive suite of benchmark RL tasks (cartpole, cheetah, humanoid, etc.), a modular composer framework for constructing custom environments from reusable entities and tasks, locomotion and manipulation domains, multi-agent soccer, motion capture integration for imitation learning, and an interactive viewer. The architecture is library-based with subpackages for core MuJoCo bindings, MJCF model manipulation, environment composition, and rendering. Key entry points include suite.load() for standard tasks, composer.Environment for custom environments, and viewer.launch() for interactive visualization. The codebase is well-tested, actively maintained, and demonstrates strong engineering practices with clean abstractions like the variation system, observable framework, and named indexing.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
OpenNMT/CTranslate2 ★ 4662 526 APPLICATION

CTranslate2 is a high-performance inference engine for Transformer models, optimized for CPU and GPU deployment. It supports a wide range of architectures including encoder-decoder (BART, T5, NLLB, M2M-100, Whisper), decoder-only (LLaMA, GPT-2, Mistral, Gemma, Qwen), and encoder-only (BERT, DistilBERT, XLM-RoBERTa) models. The system provides a C++ library with Python bindings, a command-line tool (ct2-translator), and converters from popular frameworks like HuggingFace Transformers, Fairseq, Marian, OpenNMT-py/tf, and OPUS-MT. Key features include quantized inference (INT8/INT16/FP16/BF16/AWQ), flash attention, multi-GPU tensor parallelism, streaming generation, and token-level penalties. The architecture follows a modular design with device-agnostic operations, layer abstractions, and a model registry that allows plugging in new architectures without modifying the core engine. The codebase is actively maintained with frequent releases, extensive test coverage (C++ and Python), and CI pipelines for multiple platforms and backends.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 2 reusable components found
tensorflow/probability ★ 4432 1126 APPLICATION

TensorFlow Probability (TFP) is a production-grade library for probabilistic modeling and Bayesian inference. It provides a comprehensive suite of probability distributions, bijectors (normalizing flows), MCMC kernels (HMC, NUTS, SMC, etc.), variational inference, Gaussian processes, structural time series, and Bayesian optimization. The library supports TensorFlow, JAX, and NumPy backends through a rewrite system, enabling seamless switching between hardware accelerators. The architecture is modular: each distribution, bijector, and kernel inherits from well-defined abstract base classes with `parameter_properties` for automatic shape and constraint inference. Key entry points include `tfp.distributions`, `tfp.bijectors`, `tfp.mcmc`, `tfp.vi`, `tfp.sts`, and `tfp.experimental` for cutting-edge methods. The code is heavily tested across all backends, with property-based tests and numerical stability checks. While primarily an application library, it also includes research-grade components in `discussion/` and `spinoffs/` (Inference Gym, AutoBNN, FunMC) that serve as benchmarks and experimental prototypes.

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 5 reusable components found
libxsmm/libxsmm ★ 977 205 APPLICATION

LIBXSMM is a high-performance library for specialized dense and sparse matrix operations, with a focus on small matrix multiplication (GEMM) and element-wise tensor operations. It generates optimized machine code at runtime via JIT compilation, supporting multiple architectures (x86 SSE/AVX/AVX‑512/AMX, AArch64 NEON/SVE/SME, RISC‑V RVV, PowerPC VSX/MMA) and mixed-precision formats (FP64/32/16, BF16, FP8, INT8/16/32, MXFP4). The architecture is a JIT code generator library with a descriptor-based dispatch API (`libxsmm_dispatch_gemm`, `libxsmm_dispatch_meltw_unary`), backed by architecture-specific microkernel generators in `src/generator_*.c`. Key entry points include the public header `include/libxsmm.h`, the CPU feature detection (`libxsmm_cpuid_*.c`), and the binary export tool for offline kernel generation. Data flows consist of application-provided matrix/vector descriptors flowing through the dispatch layer, which selects or JIT-compiles a kernel, then executes it against user buffers. External dependencies are minimal (standard C library, optionally OpenMP, Linux perf for profiling); the library can operate header-only. LIBXSMM is used in HPC applications (CP2K, SeisSol, PyFR) and deep learning frameworks (PyTorch extension, Intel Extension for PyTorch).

RATING: 9.3/10 MAINT: active DRIFT: low
▸ 3 reusable components found
ultralytics/ultralytics ★ 62181 11816 APPLICATION

Ultralytics is a production-grade computer vision library built around the YOLO model family. In production it provides a unified Python/CLI API for loading pretrained and custom models, running inference, training, validation, export, benchmarking, and object tracking across detection, instance and semantic segmentation, pose estimation, oriented bounding boxes, classification, and depth estimation. The architecture is a modular Python package: an engine layer (Model, BasePredictor, BaseTrainer, BaseValidator), a unified AutoBackend inference dispatcher supporting 20+ formats from PyTorch to TensorRT/ONNX/OpenVINO/CoreML/TFLite, a YAML-driven model configuration system, dataset loaders with caching and augmentation, pluggable experiment-tracking callbacks, and a family of ready-to-use solution classes for counting, heatmaps, queue management, and similar vision applications. The CLI entrypoint (`yolo`) and Python classes (`YOLO`, `SAM`, `RTDETR`, etc.) are the primary entry points, backed by active CI, Docker images, and extensive examples in Python, C++, and Rust.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 3 reusable components found
huggingface/pytorch-image-models ★ 37196 5215 APPLICATION

This repository is <code>timm</code> (PyTorch Image Models), a high-quality library providing a vast collection of image classification model architectures (100+), pretrained weights, training utilities, and data pipelines. It is not an application but a reusable library/framework, designed for research and production use. The codebase is well-structured with clear separation of concerns: <code>timm/layers</code> for building blocks (activations, normalizations, attentions, pooling), <code>timm/models</code> for model definitions with a consistent registry pattern, <code>timm/data</code> for data loading and augmentation (including AutoAugment, RandAugment, Mixup, CutMix), <code>timm/optim</code> for 30+ optimizers, <code>timm/scheduler</code> for learning rate schedulers, and <code>timm/task</code> for training task abstractions. The library supports distributed training, mixed precision, ONNX export, Hugging Face Hub integration, and dynamic input sizes (NaFlex). It is actively maintained by Hugging Face and the community, with frequent releases and a large number of pretrained models.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 6 reusable components found
google-ai-edge/mediapipe ★ 37180 6184 APPLICATION

MediaPipe is a cross-platform framework for building multimodal machine learning pipelines, primarily targeting on-device inference. It provides a graph-based execution model where modular 'calculators' process typed 'packets' through directed acyclic graphs. The framework includes a rich library of pre-built calculators for image processing, tensor manipulation, audio analysis, and ML inference, as well as high-level task APIs for vision (face/hand/pose landmarking, image classification, segmentation), text (classification, language detection), audio (classification), and generative AI (LLM inference). The architecture is layered: a core C++ framework (mediapipe/framework/) defines the graph runtime, stream handlers, and packet infrastructure; a calculator library (mediapipe/calculators/) provides reusable processing nodes; and task-specific APIs (mediapipe/tasks/) offer consistent interfaces across C++, Java, Python, iOS, Web, and C. The system relies on TensorFlow Lite (LiteRT) for model execution, OpenCV for image operations, protobuf for configuration, and Abseil for utilities. Key entry points include the Python package (mediapipe/__init__.py), the C++ task APIs (mediapipe/tasks/cc/), and the web TypeScript modules (mediapipe/web/). The codebase is large and actively developed, with ongoing migration from older API patterns to newer ones (api2/api3), and some deprecated components (legacy Python solutions, older calculator interfaces).

RATING: 9.2/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
facefusion/facefusion ★ 30200 4927 APPLICATION

This repository is a production-grade face manipulation platform (facefusion). It operates as a modular monolith, combining a powerful CLI, a Gradio web UI, a job queue system, and a plugin-based processor architecture. The system ingests images or videos, detects faces using various ONNX models (RetinaFace, YOLO, etc.), and applies a configurable pipeline of processors (face swapping, enhancement, editing, age modification, lip-syncing, background removal, etc.). It relies heavily on ffmpeg for video/audio handling and ONNX Runtime for model inference. The architecture is exceptionally clean, with clear separation of concerns between the UI, CLI, workflows, jobs, and individual processors. It is not a research notebook or a simple script; it is a well-engineered application designed for end-to-end media processing, demonstrating high craftsmanship in state management, thread safety, and extensibility.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
lucidrains/vit-pytorch ★ 25534 3495 APPLICATION

vit-pytorch is a comprehensive PyTorch library implementing dozens of Vision Transformer (ViT) architectures and extensions, along with self-supervised pretraining methods (MAE, DINO, SimMIM, MP3, LeJEPA) and video transformers (ViViT, NaViT-3D, CCT-3D). It is a research-oriented codebase offering a consistent API across models, all accepting standard hyperparameters like image_size, patch_size, depth, and heads. The library covers a wide spectrum of attention mechanisms (cross-attention, shifted windows, channel attention, sparse gating), tokenization strategies (patch merging, region-based, t2t, SPT), and training utilities (recorders, extractors, distillation wrappers). While primarily a collection of model implementations, it also includes action transformers for robotics (VAT, VAAT) and N-dimensional ViTs, demonstrating both breadth and depth of recent transformer research. The code is highly modular, relying on shared building blocks such as Attention, FeedForward, and Transformer classes, with heavy but well-organized use of einops for tensor manipulation. Some variants are experimental and may lack the polish of the core models, but the overall architecture is clean and serves as a valuable reference for implementing and comparing ViT variations. The repository is actively maintained, with recent commits and a large user base, but its sheer size and variety mean that not every model is exhaustively tested—core components are covered by basic forward-pass tests, while many advanced variants rely on the underlying patterns being sound.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 5 reusable components found
arogozhnikov/einops ★ 9616 403 APPLICATION

Einops is a Python library that provides a uniform, readable, and reliable API for tensor manipulation across multiple deep learning frameworks (NumPy, PyTorch, TensorFlow, JAX, and others). It uses Einstein-like notation (e.g., 'b c h w -> b h w c') to express axis reordering, composition, decomposition, reduction, and repetition in a single, explicit string. The library is built around a core transformation engine that parses axis patterns into a cached 'TransformRecipe', which is then applied via a backend abstraction layer. This architecture allows einops to support 10+ frameworks with minimal code duplication, while also providing framework-specific layer wrappers (Rearrange, Reduce, EinMix) for seamless integration into model definitions. The library is designed for production and research use, with a focus on reducing errors from manual view/permute/transpose operations.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 4 reusable components found
unit8co/darts ★ 9545 1053 APPLICATION

Darts is a Python library for time series forecasting and anomaly detection. It provides a unified API for a wide range of models, from classical statistical methods (ARIMA, Exponential Smoothing) to deep learning architectures (N-BEATS, TFT, TiDE, Transformer) and foundation models (Chronos, TimesFM, PatchTST-FM). The library also includes data preprocessing transformers (scaling, missing value filling, Box-Cox, DTW), anomaly detection scorers and detectors, explainability tools (SHAP, TFT attention), and comprehensive evaluation metrics. The architecture is modular: core TimeSeries data structure, model registry with lazy imports, transformer pipeline, and safe serialization. External dependencies include pandas, numpy, scikit-learn, PyTorch, PyTorch Lightning, and many optional packages for specific models. The codebase is well-tested with extensive unit and integration tests, and follows good engineering practices with CI/CD, dependency audits, and semantic versioning.

RATING: 9.2/10 MAINT: active DRIFT: low
▸ 4 reusable components found
rasbt/reasoning-from-scratch ★ 5147 801 DATA_RESEARCH

This repository is the official companion code for the book "Build a Reasoning Model (From Scratch)" by Sebastian Raschka (Manning, 2025). It is primarily a data_research codebase focused on building, evaluating, and training reasoning LLMs from scratch using the Qwen3 0.6B model as a base. The code covers inference-time scaling (temperature/top-p sampling, self-consistency), reinforcement learning from verifiable rewards (GRPO/RLVR), self-refinement, and knowledge distillation from larger teachers (DeepSeek-R1, Qwen3 235B). It includes a full custom Qwen3 implementation with KV cache, RoPE, and grouped-query attention, plus training scripts, notebooks, benchmark evaluations (MATH-500, MMLU), and Hugging Face export adapters. While educational in nature, it demonstrates production-quality engineering for research experiments. The repository is hybrid: it provides a reusable Python package for text generation and training, but its dominant character is data_research due to its notebook-driven, experimental, and benchmark-focused workflow.

RATING: 9.2/10 REPRO: 7.5/10 MAINT: active DRIFT: low
▸ 6 reusable components found
galilai-group/stable-worldmodel ★ 2178 265 DATA_RESEARCH

Stable-worldmodel is a research framework for goal-conditioned world models in reinforcement learning, providing a full pipeline from data collection and storage to model training and planning-based evaluation. The codebase is primarily a research platform with strong software engineering practices—pluggable data formats (Lance, HDF5, video, folder), a command-line interface (swm), and a Hydra-based configuration system for reproducible experiments. It includes implementations of multiple world model architectures (LeWM, PLDM, PreJEPA/DINO-WM, TD-MPC2, GCRL), planning solvers (CEM, MPPI, iCEM, gradient-based, Lagrangian), and environment wrappers with domain randomization across 30+ tasks (DeepMind Control, Gymnasium, PushT, OGBench, Craftax, robotics). The repository demonstrates high craftsmanship in its data engineering: the data format registry extends cleanly, the Lance format supports cloud-native streaming from Hugging Face Buckets, and utilities like GoalDataset, HistoryBuffer, and ReplayBuffer solve recurring RL data management problems. The project is actively maintained with extensive test coverage, comprehensive documentation, and a scalable training pipeline using stable-pretraining and Lightning. While the primary goal is research (testing hypotheses about world model generalization under variation), the codebase includes application-level production quality—CI/CD, CLI, checkpoint management, and robust error handling—making it a rare hybrid that serves both researchers and engineers.

RATING: 9.2/10 REPRO: 7.5/10 MAINT: active DRIFT: low
▸ 5 reusable components found
streamlit/streamlit ★ 45838 4395 APPLICATION

Streamlit is an open-source Python framework (Apache-2.0) that converts Python scripts into interactive web applications. It is a product/framework repository — the platform on which data apps are built — not a user-facing application. The architecture is a hybrid: a Python backend (`lib/streamlit/`) that executes scripts and manages a session state machine, plus a TypeScript/React frontend (`frontend/`) that renders the browser UI. The two halves communicate via a WebSocket connection using protobuf-serialized messages and Arrow-based dataframes for tabular data. Key entry points include `streamlit run` (CLI in `lib/streamlit/web/cli.py`), the React frontend with component libraries (`@streamlit/component-v2-lib`), and a WebSocket connection layer (`frontend/connection/src/constants.ts`). The framework supports custom components, theming, charts (Vega-Lite, PyDeck, Mermaid), and dataframes. The repository also contains extensive Playwright E2E tests, pytest unit tests, and custom tooling including a custom ESLint plugin and license-header enforcement scripts. Notable engineering practices include exact dependency pinning with upper caps, protobuf generation as a build step, and a component authoring SDK. However, the codebase shows some maintenance burden: version sync across 7 package.json files via regex, brittle E2E selectors, mixed source/test content, and hardcoded exclusion lists in license checks. The repository is actively maintained with recent commits and strict contribution hygiene.

RATING: 9.1/10 MAINT: active DRIFT: low
▸ 5 reusable components found
NVIDIA/nccl ★ 5171 1447 APPLICATION

NVIDIA NCCL (NVIDIA Collective Communications Library) is a production-grade C/C++ library providing high-performance GPU-to-GPU communication primitives for distributed deep learning and HPC. It implements collective operations (allreduce, allgather, reduce, broadcast, reduce-scatter, alltoall) and point-to-point send/recv, optimized for NVIDIA GPUs over InfiniBand, Ethernet, NVLink, NVSwitch, and AWS EFA. The library exposes a C API with Python (nccl4py) and Rust (nccl4rust) bindings, a device-side API for embedding communication in GPU kernels, and a plugin system for custom networking, profiling, tuning, and environment handling. It is the de facto communication layer underlying PyTorch Distributed, TensorFlow, and other frameworks. Architecturally, NCCL is a monolithic core with a modular plugin system. The core handles communicator management, collective algorithm selection (ring, tree, pipeline, NVLS, etc.), task scheduling, and transport abstraction. Plugins are dynamically loaded shared libraries with versioned interfaces (net v6–v12, GIN v11–v14, RMA v13–v16, profiler v1–v7, tuner v2–v6) that allow custom network backends, performance profiling, and algorithm tuning. The codebase includes extensive performance modeling (cost models for ring/tree/NVLS/CE), kernel code generation for symmetric memory collectives, and a parameter registry for runtime configuration via environment variables. Contrib sub-projects extend NCCL into specialized domains: UB-X (symmetric memory collectives), M2N (tensor resharding), EP (expert-parallel dispatch), NIIN (NVSHMEM compatibility), and PACE (parallelism-aware collectives). The library demonstrates high engineering craftsmanship with clean abstractions for transport, plugin versioning, and device-side communication. Notable reusable patterns include the typed parameter system (env-var parsing with caching), strong stream dependency tracking, symmetric pointer resolution for GPU memory, and versioned plugin adapters that maintain backward compatibility across interface revisions. The codebase is actively maintained with frequent commits, extensive documentation, and a large ecosystem of examples and tests. However, technical drift is medium due to the proliferation of plugin API versions, contrib projects that may diverge from core, and hardcoded performance model constants that require updates for new GPU generations.

RATING: 9.1/10 MAINT: active DRIFT: medium
▸ 5 reusable components found
FluxML/Flux.jl ★ 4741 625 APPLICATION

Flux.jl is a pure-Julia machine learning library emphasizing flexibility and hackability for deep learning and differentiable programming. It provides lightweight abstractions over Julia's native GPU support and automatic differentiation systems, enabling users to define, train, and evaluate neural networks with minimal boilerplate while remaining fully customizable. The library supports multiple AD backends (Zygote, Enzyme, Mooncake, FiniteDifferences) and hardware accelerators (CUDA, AMDGPU, Metal) via a unified device abstraction layer. The architecture centers around composable layers (Dense, Conv, RNN, etc.), optimization utilities, and training loops. Key entry points include the Flux module (src/Flux.jl) reexporting layers, optimizers, training functions (train!, trainstep!, setup), gradient functions (gradient, withgradient), device functions (gpu, cpu), and loading utilities. Data flows typically involve defining a model as a Chain of layers, computing loss via modular loss functions, initializing an optimizer, and iterating over data with gradient updates. Device transfers are handled via functor-based traversal for seamless CPU/GPU movement. Flux.jl demonstrates strong engineering practices through reusable patterns like the @layer macro for automatic functor integration and pretty-printing, a modular loss function design with shared numerical utilities, and optimizer composition via chaining gradient transformations. While the library has undergone breaking changes to improve consistency (e.g., v0.14.0 dropping Julia <1.9 support, v0.15.0 recurrent cell redesign), it remains actively maintained with frequent updates. The extensive test suite and performance benchmarks validate correctness across backends, though dependency complexity from supporting multiple AD/hardware systems introduces moderate technical drift.

RATING: 9.1/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
opencv/opencv ★ 91073 57040 APPLICATION

OpenCV is a comprehensive computer vision and machine learning library written primarily in C++ with bindings for Python, Java, JavaScript, Swift, and other languages. Its architecture is modular, with core modules for fundamental data structures (Mat, UMat, Scalar), image processing (imgproc), video I/O (videoio), deep neural network inference (dnn), feature detection (features), object detection (objdetect), camera calibration (calib), 3D geometry (geometry), point cloud processing (ptcloud), and more. The library provides a hardware abstraction layer (HAL) for CPU optimizations (SIMD, IPP, Carotene) and supports GPU acceleration via CUDA, OpenCL, and Vulkan backends. Key entry points include cv::imread/cv::imwrite for image loading, cv::VideoCapture for video streams, and cv::dnn::readNet for model inference. Data flows typically involve reading image or video data, applying processing pipelines (filtering, feature extraction, detection), and outputting results. External dependencies include vendored third-party libraries for image codecs (libjpeg-turbo, libwebp, libtiff, openjpeg), compression (zlib-ng), serialization (protobuf, flatbuffers), text shaping (harfbuzz), and linear algebra (mlas, clapack). The codebase is actively maintained with frequent commits, extensive test and performance benchmarks, and support for multiple platforms including Windows, Linux, macOS, Android, and iOS.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 3 reusable components found
ultralytics/yolov5 ★ 58005 17467 APPLICATION

YOLOv5 is a production-oriented PyTorch framework for object detection, instance segmentation, and image classification, with a hybrid research/educational flavour from its tutorial notebooks. The dominant character is application: the repository provides CLI tools (`train.py`, `val.py`, `detect.py`, `export.py`, plus `segment/` and `classify/` variants), a Flask REST API, Docker images, PyTorch Hub support, CI smoke tests, benchmarking scripts, and experiment-tracking integrations for W&B, ClearML, and Comet. It is not just an experiment repo; it is designed to be deployed and exported to edge and cloud inference targets. Core architecture is config-driven: model YAMLs are parsed by `models/yolo.py` into `DetectionModel`, `SegmentationModel`, or `ClassificationModel` geometries, while `models/common.py` holds reusable layers and the central `DetectMultiBackend` inference wrapper for PyTorch, TorchScript, ONNX Runtime, OpenVINO, TensorRT, CoreML, TensorFlow, TFLite/Edge TPU, Paddle, and Triton. The primary data flow is dataset YAML -> dataloaders with augmentation (`utils/augmentations.py`) -> model forward -> task-specific loss (`utils/loss.py`, `utils/segment/loss.py`) -> train/val loops. `export.py` converts trained checkpoints into 12+ deployment formats using a decorated `@try_export` pattern, and `data/` embeds dataset download/conversion scripts for COCO, ImageNet subsets, VOC, VisDrone, and others. Maintenance is active, but the codebase sits in a legacy/support position relative to the unified `ultralytics` package. Technical drift is medium: some loggers are deprecated, many `models/hub/` configs are experimental, and the code depends heavily on the external `ultralytics` package, which creates version-compatibility risk. The code is generally clean and modular, though it has task-level duplication across detection, segmentation, and classification paths and limited unit test coverage outside smoke tests.

RATING: 9.0/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
naptha/tesseract.js ★ 38753 2396 APPLICATION

Tesseract.js is a JavaScript library that brings the Tesseract OCR engine to the browser and Node.js by wrapping a WebAssembly port (tesseract.js-core). It enables optical character recognition (OCR) from images in over 100 languages, supporting multiple output formats (plain text, hOCR, TSV, PDF, JSON blocks, etc.) and pre-processing options like auto-rotation and rectangle cropping. The library's architecture is centered around two abstractions: Workers (each managing a Tesseract instance in a Web Worker or Worker Thread) and Schedulers (managing pools of Workers for parallel job execution). Key entry points are `createWorker` (which handles language loading, core initialization, and provides `recognize`, `detect`, `setParameters`, etc.) and `createScheduler` (which queues jobs among multiple Workers). Images can be provided as URLs, base64 strings, Buffers, File/Blob objects, or DOM elements (browser only). The core flow involves loading the appropriate WebAssembly binary based on SIMD support, downloading and caching language data (via IndexedDB or filesystem), initializing the Tesseract API, running recognition, and dumping results through a clean output abstraction. External dependencies include tesseract.js-core, wasm-feature-detect, idb-keyval, zlibjs, bmp-js, and node-fetch. The codebase is well-structured, modular, and has comprehensive tests (both Node and browser via Karma+Mocha), though some modules (like `createWorker`) mix concerns of worker lifecycle, job management, and message handling in a single file.

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