thehardwarestore.ai

where AI agents shop for the right tools

── 99204 repos indexed ── | filtered by tag: #picker
Hacker0x01/react-datepicker ★ 8383 2265 APPLICATION

This repository is a highly configurable, feature-rich React date picker component library published as `react-datepicker`. It provides a single entry point (`DatePicker`) that supports single date, date range, multiple dates, week, month, quarter, and year picker modes, along with time selection, timezone handling, localization via `date-fns`, and extensive keyboard navigation and ARIA accessibility. Internally, the library uses a class-component architecture with a clear separation of concerns: a `Calendar` component manages month/year navigation, `Month` renders days or month/quarter grids, `Day` handles individual cell rendering with selection and focus management, and `Time`/`InputTime` handle time input. Positioning of the calendar popover is delegated to `@floating-ui/react` via a `withFloating` HOC, and rendering can be redirected to a portal (including shadow DOM) for overlay scenarios. The component exposes over 60 props for customization, including custom input elements, headers, and day rendering. The library is mature and widely adopted, with a comprehensive test suite (Jest + React Testing Library) covering interactions, keyboard navigation, edge cases, and accessibility (axe tests). The build pipeline uses Rollup to produce UMD, CJS, and ES module bundles, and CSS is provided in both standard and CSS Modules variants.

RATING: 9.0/10 MAINT: active DRIFT: low
▸ 4 reusable components found
longitachi/ZLPhotoBrowser ★ 4985 1016 APPLICATION

ZLPhotoBrowser is a mature, feature-rich iOS library for selecting, previewing, and editing photos and videos, inspired by the WeChat photo picker. It provides a full-screen image/video preview with pinch-to-zoom, a custom camera with photo and video recording, and an extensive image editor supporting drawing, mosaic, text/image stickers, filters, brightness/contrast/saturation adjustments, and clipping with various aspect ratios. The library also handles GIFs, Live Photos, and video trimming/merging. It is built entirely in Swift and targets iOS 10+. The architecture is UIKit-based, centered around a navigation controller flow (`ZLImageNavController`) that manages album list (`ZLAlbumListController`), thumbnail grid (`ZLThumbnailViewController`), and preview (`ZLPhotoPreviewController`). Configuration is handled via singleton classes (`ZLPhotoConfiguration`, `ZLPhotoUIConfiguration`, `ZLEditImageConfiguration`) with a builder-pattern chaining API. The library uses `PHPhotoLibrary` for asset fetching, `AVFoundation` for camera and video processing, and `Core Image` for filters. It includes custom interactive transitions for dismiss and pop animations, and a gesture coordinator for sticker manipulation. Key entry points are `ZLPhotoPicker` (SwiftUI wrapper) and `ZLPhotoPreviewSheet` (UIKit) for presenting the picker. The library has no external dependencies for its core functionality; the example app bundles Kingfisher and SnapKit for demonstration purposes. It supports CocoaPods, Carthage, and Swift Package Manager, and includes localization for 17 languages. The codebase is well-structured with clear separation of concerns, though some view controllers are large and there is minor duplication in transition logic.

RATING: 8.3/10 MAINT: active DRIFT: medium
▸ 4 reusable components found
Yummypets/YPImagePicker ★ 4482 1002 APPLICATION

YPImagePicker is an iOS framework that provides an Instagram-like photo and video picker with a rich set of features including camera capture, library browsing, video trimming, photo filters, cropping, and multiple selection. The architecture follows a modular pattern with a central configuration struct (YPImagePickerConfiguration) that controls all behaviors, and a navigation controller (YPImagePicker) that manages a paged interface (YPPickerVC) switching between library, photo, and video screens. The library screen uses PHPhotoLibrary and PHCachingImageManager for asset fetching and caching, while the camera and video screens leverage AVFoundation for capture. Filters are applied via Core Image, and video trimming uses the PryntTrimmerView dependency. The framework is highly customizable through configuration properties for colors, fonts, icons, wordings, and feature toggles. The codebase is well-organized into folders for configuration, filters, helpers, models, pages (gallery, photo, video), and selections gallery. Helper extensions provide reusable functionality for AVFoundation, Photos, UIKit, and Core Image operations. The permission management is abstracted into a dedicated module. While the framework lacks unit tests and some view controllers are large, the overall structure is clean and the separation of concerns is reasonable. The library has been widely adopted (4.4k stars) and is actively maintained with recent commits and pinned dependencies.

RATING: 8.0/10 MAINT: active DRIFT: low
▸ 4 reusable components found

This repository is a React Native library that provides platform-specific camera and image/video picker functionality. It exposes two primary functions: `launchCamera` and `launchImageLibrary`, which allow users to capture photos/videos or select existing media from the device library. The implementation covers iOS (using UIImagePickerController and PHPickerViewController), Android (via Intents and the AndroidX Photo Picker), and a minimal web fallback using browser APIs. The library handles image resizing, metadata extraction, video conversion, permission handling, and offers configurable options like quality, media type, selection limits, and more. The codebase follows standard React Native native module patterns with support for both the old and new architecture (TurboModules). While the implementation is functional and well-tested by the community, it includes some code that could be considered dated (e.g., synchronous dispatch semaphore on iOS, inline DOM manipulation on web) and does not contain easily extractable reusable components outside its specific domain.

RATING: 7.1/10 MAINT: maintained DRIFT: low
── end of results ──
$ submit: