Philiprehberger's Gems

icon
See profile on Gravatar
#Total RankDaily RankNameSummary
14,25641,737philiprehberger-http_clientA zero-dependency HTTP client built on Ruby's net/http with automatic retries, request/...
24,75137,933philiprehberger-phoneParse phone numbers from various formats, validate against country rules, and format as...
34,87241,737philiprehberger-rate_limiterA zero-dependency Ruby gem for rate limiting with sliding window and token bucket algor...
45,007197philiprehberger-time_agoFormat timestamps as human-readable relative strings like "3 minutes ago" or "in 2 hour...
55,181176philiprehberger-email_validatorValidates email addresses with RFC 5322 syntax checking, MX record verification, dispos...
65,82934,862philiprehberger-retry_kitA lightweight retry library with exponential/linear/constant backoff, configurable jitt...
77,17774,024philiprehberger-cron_kitA zero-dependency Ruby gem for parsing 5-field cron expressions and running an in-proce...
87,21246,531philiprehberger-task_queueA lightweight, zero-dependency, thread-safe in-process async job queue with configurabl...
97,23374,024philiprehberger-passwordValidate passwords against configurable policies (length, complexity, common password d...
107,23994,007philiprehberger-templateA lightweight Mustache-style template engine supporting variable interpolation, section...
117,27661,331philiprehberger-structured_loggerA zero-dependency Ruby gem for structured JSON logging with context merging, child logg...
128,18494,007philiprehberger-cache_kitA lightweight, thread-safe in-memory LRU cache with TTL expiration and tag-based bulk i...
138,35346,531philiprehberger-config_kitA zero-dependency Ruby gem for layered configuration resolution. Define typed config ke...
148,3858,567philiprehberger-env_loaderLoad environment variables from multiple .env files with configurable precedence, type ...
158,467129,210philiprehberger-jwt_kitA complete JWT toolkit for Ruby. Encode and decode tokens with automatic claim manageme...
168,7048,109philiprehberger-sanitize_htmlHTML sanitizer with configurable allow lists for tags and attributes. Strip dangerous e...
178,71094,007philiprehberger-paginationPagination library supporting offset-based, cursor-based, and keyset strategies. Return...
188,71453,031philiprehberger-slugGenerate URL-safe slugs from any string with built-in Unicode transliteration, configur...
198,72253,031philiprehberger-corsRack-compatible CORS middleware supporting configurable allowed origins, methods, heade...
208,751129,210philiprehberger-json_schemaValidate Ruby data structures against JSON Schema definitions with support for type che...
218,75861,331philiprehberger-circuitCircuit breaker pattern with closed, open, and half-open states, configurable failure t...
228,77294,007philiprehberger-middlewareA composable middleware stack that supports lambda and class-based middleware, named en...
238,77561,331philiprehberger-env_validatorDefine environment variable schemas with type casting, required/optional flags, and def...
248,78032,343philiprehberger-resultA lightweight Result type for Ruby with Ok and Err variants, monadic map/flat_map opera...
258,78146,531philiprehberger-state_machineA minimal state machine for Ruby objects. Define states, events, transitions, guard con...
268,78734,862philiprehberger-memoMemoize methods with a simple decorator. Supports TTL expiration, LRU eviction, thread-...
278,807129,210philiprehberger-string_kitString case conversion, slug generation, transliteration, padding, HTML stripping, whit...
288,80974,024philiprehberger-inflectorProvides pluralize, singularize, camelize, underscore, tableize, classify, ordinalize, ...
298,81594,007philiprehberger-id_genGenerate unique identifiers in multiple formats: time-sortable ULIDs, compact nanoids, ...
308,81846,531philiprehberger-schedulerA lightweight in-process task scheduler for Ruby. Schedule recurring tasks using simple...
318,82374,024philiprehberger-cron_parserParse standard 5-field cron expressions and calculate next/previous occurrences, match ...
328,827129,210philiprehberger-parallel_eachParallel iteration methods (map, each, select, reject, find, flat_map, any?, all?, none...
338,82832,343philiprehberger-poolA generic thread-safe object pool for Ruby with configurable size, checkout timeouts, i...
348,84961,331philiprehberger-feature_flagA lightweight feature flag library supporting in-memory, ENV, and YAML backends with pe...
358,85746,531philiprehberger-webhook_signatureSign and verify webhook payloads using HMAC-SHA256 with timestamp-based replay preventi...
368,861129,210philiprehberger-webhook_builderA webhook delivery client that signs payloads with HMAC-SHA256, retries failed deliveri...
378,87261,331philiprehberger-date_kitDate utilities including business day counting and arithmetic, quarter boundaries, week...
388,87574,024philiprehberger-tryA tiny utility for concise error handling. Wrap risky expressions with Try.call, chain ...
398,87761,331philiprehberger-maybeA Maybe/Optional type for Ruby providing Some and None containers with safe chaining, p...
408,87946,531philiprehberger-csv_kitStreaming CSV processor with row-by-row transforms, validations, column plucking, strea...
418,88361,331philiprehberger-csv_builderBuild CSV files from record collections using a declarative DSL with column definitions...
428,88761,331philiprehberger-data_mapperA zero-dependency Ruby gem for transforming data between formats with a mapping DSL, fi...
438,89461,331philiprehberger-uri_kitParse, build, and manipulate URLs with query parameter management, normalization, domai...
448,90061,331philiprehberger-json_pathEvaluate JSONPath expressions against Ruby hashes and arrays. Supports dot notation, ar...
458,90494,007philiprehberger-json_mergeApply and generate JSON patches using RFC 7396 Merge Patch and RFC 6902 JSON Patch. Sup...
468,90994,007philiprehberger-test_factoryLightweight DSL for building test data objects without ActiveRecord. Define factories w...
478,91094,007philiprehberger-mime_typeDetect MIME types from file extensions, filenames, and binary content using magic byte ...
488,91761,331philiprehberger-http_mockStub HTTP requests in tests with a fluent API for matching methods, URLs, headers, and ...
498,92053,031philiprehberger-random_dataGenerate random test data including names, emails, phone numbers, UUIDs, sentences, par...
508,92137,933philiprehberger-cli_kitLightweight CLI toolkit combining argument parsing with flags and options, interactive ...
518,92974,024philiprehberger-colorA lightweight Ruby library for terminal ANSI color and styling with chainable API, RGB/...
528,93174,024philiprehberger-progressDisplay progress bars with percentage, ETA, and throughput, or spinners for indetermina...
538,93641,737philiprehberger-tableFormat data as terminal tables with Unicode, ASCII, Markdown, or compact styles. Build ...
548,93874,024philiprehberger-signed_payloadA zero-dependency Ruby gem for signing and verifying JSON payloads using HMAC-SHA256 wi...
558,93934,862philiprehberger-multipartBuild and parse multipart/form-data request bodies with a clean DSL for adding text fie...
568,94294,007philiprehberger-header_kitParse and build Accept, Accept-Language, Accept-Encoding, Authorization, Cache-Control,...
578,94674,024philiprehberger-lruThread-safe LRU cache backed by a hash and doubly-linked list for O(1) get/set, with co...
588,94734,862philiprehberger-checksumCompute MD5, SHA-1, SHA-256, SHA-512, and CRC32 checksums for strings and files. HMAC-S...
598,95374,024philiprehberger-cryptA high-level encryption toolkit providing AES-256-GCM encryption and decryption, key ro...
608,95653,031philiprehberger-schema_validatorA zero-dependency Ruby gem for validating hash data against schemas with type checking,...
618,97174,024philiprehberger-config_validatorDefine configuration schemas with required and optional keys, type constraints, default...
628,97261,331philiprehberger-safe_yamlSafe YAML loading with restricted types, schema validation, and size limits. Wraps YAML...
638,98094,007philiprehberger-toml_kitParse and generate TOML v1.0 documents with full type support including datetimes, inli...
648,98694,007philiprehberger-timeout_kitA cooperative timeout library providing deadline and timeout patterns that avoid Thread...
658,99294,007philiprehberger-semaphoreCounting semaphore built on Mutex and ConditionVariable for concurrent access control w...
668,99494,007philiprehberger-lock_kitFile locks using flock and PID file locks with stale detection for coordinating between...
678,99674,024philiprehberger-retry_queueProcesses collections of items with configurable per-item retry logic, exponential back...
689,00594,007philiprehberger-pluralizePluralize and singularize English words without ActiveSupport. Includes 200+ rules, irr...
699,010129,210philiprehberger-tarPure-Ruby implementation of tar archive creation and extraction using the standard 512-...
709,01546,531philiprehberger-html_builderBuild HTML programmatically using a clean tag DSL with nested blocks, automatic content...
719,01694,007philiprehberger-gzip_kitSimple API for gzip compression and decompression with support for strings, files, and ...
729,019129,210philiprehberger-xml_builderProgrammatic XML construction with a clean DSL, auto-escaping, CDATA, comments, process...
739,02741,737philiprehberger-moneyA lean money library that stores amounts as integer subunits (cents) to avoid floating-...
749,03553,031philiprehberger-durationParse human strings and ISO 8601 durations, perform arithmetic and comparison, and outp...
759,03794,007philiprehberger-semverA lightweight Ruby library for parsing, comparing, sorting, and matching semantic versi...
769,03974,024philiprehberger-version_compareParse semantic version strings into comparable objects with support for sorting, findin...
779,04174,024philiprehberger-human_sizeFormat byte counts as human-readable strings (1.5 MB) and parse them back. Supports SI ...
789,045129,210philiprehberger-metric_unitsUnit conversion library supporting length, weight, temperature, volume, speed, pressure...
799,05274,024philiprehberger-ip_addrParse and classify IPv4/IPv6 addresses with private, loopback, and multicast detection....
809,05794,007philiprehberger-geo_pointGeographic point calculations including Haversine/Vincenty distance, bearing, midpoint,...
819,06594,007philiprehberger-image_sizeReads width, height, format, DPI, and color depth from image file headers (PNG, JPEG, G...
829,06746,531philiprehberger-task_runnerRun shell commands with captured stdout/stderr, exit code, duration measurement, config...
839,068129,210philiprehberger-file_watcherWatch files and directories for changes using polling. Detects created, modified, and d...
849,07053,031philiprehberger-maskAutomatically detect and redact sensitive data like emails, credit cards, SSNs, and tok...
859,0738,506philiprehberger-log_filterPattern-based log filtering — drop or transform log lines matching rules. Includes pres...
869,08127,037philiprehberger-event_emitterA thread-safe event emitter for Ruby with sync and async listeners, wildcard event matc...
879,09061,331philiprehberger-metricA thread-safe in-process metrics library providing counters, gauges, histograms, and su...
889,09137,933philiprehberger-etagGenerate strong and weak ETags, evaluate If-None-Match and If-Match headers, and serve ...
899,09574,024philiprehberger-token_bucketThread-safe token bucket rate limiter with configurable capacity and refill rate, suppo...
909,107129,210philiprehberger-locale_kitParse BCP 47 language tags, negotiate content language from Accept-Language headers, an...
919,10974,024philiprehberger-fuzzy_matchMatch strings approximately using multiple algorithms: Levenshtein edit distance, Damer...
929,11761,331philiprehberger-safe_execSafely evaluate arithmetic, comparison, and boolean expressions from untrusted input. U...
939,1188,601philiprehberger-natural_sortNatural sort for strings containing numbers. Splits strings into text and numeric chunk...
949,12094,007philiprehberger-regex_libA library of tested, documented regex patterns for common data formats. Includes named ...
959,132129,210philiprehberger-truncateTruncate strings by word count, character count, or sentence count with word-boundary a...
969,13761,331philiprehberger-word_wrapWrap text to a specific width at word boundaries. Supports indentation, hanging indent,...
979,14134,862philiprehberger-job_meterThread-safe instrumentation for background jobs. Record execution duration and success/...
989,143129,210philiprehberger-rate_counterMeasure event rates (requests/sec, errors/min) using a sliding window counter. Thread-s...
999,14574,024philiprehberger-rate_windowThread-safe time-windowed rate tracker that records values into bucketed time slots. Su...
1009,14974,024philiprehberger-stopwatchHigh-resolution stopwatch using monotonic clock with start, stop, reset, lap timing, pa...
1019,15494,007philiprehberger-treeA generic tree data structure supporting depth-first and breadth-first traversal, node ...
1029,15974,024philiprehberger-graphGraph data structure supporting directed and undirected modes with adjacency list stora...
1039,16194,007philiprehberger-dependency_graphBuild and resolve dependency graphs using topological sort, detect cycles, generate par...
1049,16374,024philiprehberger-priority_queueA binary heap-based priority queue supporting min-heap, max-heap, and custom comparator...
1059,1658,718philiprehberger-queue_stackThread-safe queue and stack data structures with configurable capacity limits, blocking...
1069,16774,024philiprehberger-ring_bufferFixed-capacity ring buffer that overwrites oldest entries on overflow, with index acces...
1079,16953,031philiprehberger-bloom_filterBloom filter implementation using a bit array with double hashing. Supports configurabl...
1089,17653,031philiprehberger-intervalInterval data type supporting closed, open, and half-open boundaries with overlap detec...
1099,17761,331philiprehberger-hash_ringConsistent hash ring with virtual nodes, weighted members, and replication support. Min...
1109,183129,210philiprehberger-event_storeThread-safe in-memory event store for CQRS patterns. Supports named streams, event appe...
1119,18894,007philiprehberger-rule_engineA lightweight rule engine with a declarative DSL for defining conditions and actions. S...
1129,19237,933philiprehberger-pipeA Ruby library for functional pipeline composition with named steps, pipeline compositi...
1139,19746,531philiprehberger-struct_kitDefine data classes with typed fields, default values, validation rules, and pattern ma...
1149,19874,024philiprehberger-guard_clauseA chainable guard clause DSL for validating method preconditions with built-in checks f...
1159,20737,933philiprehberger-dot_accessAccess deeply nested hash values using dot notation (config.database.host) with nil-saf...
1169,20874,024philiprehberger-typed_hashDefine typed hash schemas with per-key type declarations, optional coercion functions, ...
1179,21446,531philiprehberger-batchProcesses collections in configurable chunks with progress tracking callbacks and per-i...
1189,22261,331philiprehberger-enumDefine type-safe enums in Ruby with automatic ordinals, custom values, lookup methods, ...
1199,22761,331philiprehberger-debounceDebounce delays execution until a quiet period elapses. Throttle limits execution frequ...
1209,239129,210philiprehberger-expiring_mapA thread-safe hash map where each key has its own TTL, with automatic expiration, max s...
1219,24174,024philiprehberger-deep_freezeRecursively freeze entire object graphs (hashes, arrays, strings, structs, Data) to cre...
1229,24274,024philiprehberger-differA Ruby library for deep structural diffing of hashes, arrays, and nested objects with a...
1239,24694,007philiprehberger-base_convertEncode and decode data in Base32 (Crockford), Base58 (Bitcoin), Base62, and Base85 (ASC...
1249,24874,024philiprehberger-counterCount element frequencies from any enumerable with most-common and least-common queries...
1259,25274,024philiprehberger-math_kitDescriptive statistics, linear interpolation, rounding modes, and moving averages. Ligh...
1269,26046,531philiprehberger-base64_urlURL-safe Base64 encoding and decoding using Base64.urlsafe_encode64/decode64 with no pa...
1279,26274,024philiprehberger-circuit_boardHealth check framework that aggregates dependency checks with configurable timeouts and...
1289,26861,331philiprehberger-hexEncode and decode hexadecimal strings with 0x prefix handling, produce xxd-style hex du...
1299,27537,933philiprehberger-compact_idConvert UUIDs to compact Base58 or Base62 representations (22 chars vs 36). Guaranteed ...
1309,28237,933philiprehberger-encoding_kitDetect encoding from BOM and heuristics with confidence scores, convert between encodin...
1319,28594,007philiprehberger-color_convertA color conversion library supporting hex, RGB, HSL, and HSV formats with parsing, mani...
1329,28674,024philiprehberger-pathname_kitPathname utility library providing atomic writes, safe deletes, directory creation, glo...
1339,288129,210philiprehberger-ini_parserParse and generate INI configuration files with sections, inline comments, multiline va...
1349,29461,331philiprehberger-approxCompare numeric values, arrays, and hashes for approximate equality using configurable ...
1359,29830,304philiprehberger-env_diffParse .env files or environment hashes, compare them, and get a clear report of added, ...
1369,30046,531philiprehberger-changelog_parserParse Keep a Changelog formatted markdown files with version querying, category managem...
1379,30094,007philiprehberger-state_bagThread-local key-value state bag with scoped overrides via blocks, automatic restoratio...
1389,30474,024philiprehberger-bit_fieldNamed bit flags with a DSL for defining flags at bit positions, symbolic read/set/clear...
1399,30861,331philiprehberger-audit_trailA lightweight audit trail library for tracking changes to hashes and objects with actor...
1409,31334,862philiprehberger-assertA lightweight runtime assertion library for Ruby with chainable matchers, soft assertio...