Utilities
General-purpose utility libraries and helper functions. Packages among the 3,000 most downloaded in the past 90 days.
-
3872.7m
-
651.4m
-
1.6k1.4m
-
101.2m
-
61910.2k
-
1.2k796.7k
-
367741.4k
-
deep_merge 1.0.0
Deep (recursive) merging for maps, keyword lists and whatever else you may want via implementing a simple protocol.
118602.3k last 90 days118602.3k -
367560.7k
-
aja 0.7.4
Extension of the Elixir standard library focused on data stuctures, data manipulation and performance
225535.7k last 90 days225535.7k -
typed_struct 0.3.0
A library for defining structs with a type without writing boilerplate code.
770528.2k last 90 days770528.2k -
139489.2k
-
uniq 0.6.3
Provides UUID generation, parsing, and formatting. Supports RFC 4122, and the v6 draft extension
121483.8k last 90 days121483.8k -
retry 0.19.0
Simple Elixir macros for linear retry, exponential backoff and wait with composable delays.
458451.9k last 90 days458451.9k -
497435.8k
-
2414.9k
-
-413.6k
-
221336.5k
-
cldr_utils 2.29.7
Map, Calendar, Digits, Decimal, HTTP, Macro, Math, and String helpers for ex_cldr.
16333.3k last 90 days16333.3k -
558319.5k
-
ex2ms 1.7.0
Translates Elixir functions to match specifications for use with `ets`.
201317.7k last 90 days201317.7k -
money 1.14.0
Elixir library for working with Money safer, easier, and fun, is an interpretation of the Fowler's Money pattern in fun.prog.
846277.0k last 90 days846277.0k -
adventurous 0.1.12
Basic utilities for typical leet code exercises (such as Advent of Code)
216.3k last 90 days-216.3k -
195213.7k
-
9188.8k
-
18163.0k
-
136151.6k
-
766151.0k
-
43148.3k
-
puid 2.7.1
Simple, fast, flexible and efficient generation of probably unique identifiers (`puid`, aka random strings) of intuitively specified entropy using pre-defined or custom characters.
99143.5k last 90 days99143.5k -
225138.3k
-
nanoid 2.1.0
Elixir port of NanoID (https://github.com/ai/nanoid), a tiny, secure URL-friendly unique string ID generator.
232128.3k last 90 days232128.3k -
moar 4.3.0
A dependency-free utility library containing 100+ useful functions.
23122.4k last 90 days23122.4k -
advent_of_code_helper 0.3.1
Package to allow you to get input for all advent of code puzzles, rather than pasting them in manually.
8116.5k last 90 days8116.5k -
map_diff 1.3.4
Calculates the difference between two (nested) maps, and returns a map representing the patch of changes.
131106.6k last 90 days131106.6k -
594104.7k
-
morphix 0.8.1
Morphix is a small package of convenience methods for working with Maps, Tuples, and Lists.
40100.0k last 90 days40100.0k -
ex_maybe 1.1.1
This library fills a bunch of important niches. A Maybe can help you with optional arguments, error handling, and records with optional fields.
099.9k last 90 days099.9k -
499.6k
-
199.4k
-
uuid_v7 0.6.0
UUID v7 with an 18-bit randomly-seeded counter. (Re: Section 6.2, from the IETF Draft.)
7396.8k last 90 days7396.8k -
1877.6k
-
countries 1.6.0
Countries is a collection of all sorts of useful information for every country in the [ISO 3166](https://de.wikipedia.org/wiki/ISO_3166) standard.
15676.1k last 90 days15676.1k -
4367.8k
-
-66.5k
-
Provides some helper methods to build manager and admin applications quicker
3566.3k last 90 days3566.3k -
altworx_utils 0.0.5
A collection of common utility functions for various situations.
166.2k last 90 days166.2k -
atomic_map 0.9.3
A small utility to convert deep Elixir maps with mixed string/atom keys to atom-only keyed maps
4664.6k last 90 days4664.6k -
blankable 1.0.0
Implementation of `blank?` in Elixir. Aims to work in a practically identical fashion to ActiveSupport's #blank? method.
2961.3k last 90 days2961.3k -
enum_type 1.1.3
An Elixir friendly Enum module generator that can be used by itself or with Ecto.
2058.2k last 90 days2058.2k -
13857.4k
-
050.0k
-
049.8k
-
-49.7k
-
249.4k
-
1749.1k
-
3642.5k
-
740.5k
-
alara_uuid 0.1.3
High-quality UUID generation for Erlang with distributed entropy powered by ALARA.
040.0k last 90 days040.0k -
10939.5k
-
a_message 1.0.0
"A message" struct w/ four required keys: from, to, subject, body
238.7k last 90 days238.7k -
5238.3k
-
coerce 1.0.2
Coerce allows defining coercions, standardized conversions, between data types.
237.8k last 90 days237.8k -
2037.3k
-
135.3k
-
redis_mutex 1.1.0
RedisMutex is a library for creating a Redis lock for a single Redis instance
1334.3k last 90 days1334.3k -
033.3k
-
2133.1k
-
2732.7k
-
ex_ulid 0.1.0
Universally Unique Lexicographically Sortable Identifier (ULID) in Elixir.
3432.7k last 90 days3432.7k -
-31.9k
-
7131.8k
-
any 0.3.2
Convert any type into an atom, binary, boolean, float, integer or list
231.6k last 90 days231.6k -
631.4k
-
1129.6k
-
uxid 2.3.0
Generates identifiers like: cus_01EPEY1JMKXVBT and txn_01EPEY2P06TR1RTV07XA82ZGJJ. Includes Ecto type.
3929.5k last 90 days3929.5k -
629.4k
-
deadline 0.7.1
Deadline is a small library for managing deadlines and deadline propagation.
2427.1k last 90 days2427.1k -
mutex 3.0.4
This package implements a simple mutex as a GenServer. It allows to lock keys and handles locking multiple keys without deadlocks.
3520.7k last 90 days3520.7k -
remodel 0.0.4
Remodel is an Elixir presenter package used to transform data structures. This is especially useful when a desired representation doesn't match the schema defined within the database.
14120.1k last 90 days14120.1k -
819.9k
-
2519.5k
-
3119.5k
-
9919.1k
-
stream_split 0.1.7
Split a stream into a head and tail, without iterating the tail
3718.9k last 90 days3718.9k -
017.4k
-
16417.3k
-
8816.8k
-
516.7k
-
adap 0.0.1
Create a data stream across your information systems to query, augment and transform data according to Elixir matching rules.
16.7k last 90 days-16.7k -
316.7k
-
116.7k
-
116.6k
-
Amortization Schedule generator for periodic payments or installments. Using this table can show you how much will go toward the principal and how much will go toward the interest for each month.
416.6k last 90 days416.6k -
016.5k
-
116.2k
-
615.8k
-
1515.6k
-
015.5k
-
36015.3k
-
ark 0.13.0
Ark is a collection of small utilities useful for prototyping, testing, and working with Elixir common patterns.
015.2k last 90 days015.2k -
514.7k
-
iteraptor 1.15.0
This small library allows the deep iteration / mapping of Enumerables.
7114.5k last 90 days7114.5k -
2914.1k
-
chameleon 2.5.0
Chameleon is a utility for converting colors from one color model to another. Conversions can be made to/from RGB, CMYK, Hex, HSL, Pantone, and even Keywords. For example: "FFFFFF" -> %{c: 0, m: 0, y: 0, k: 0}
2812.7k last 90 days2812.7k -
browse 0.5.0
Shared browser automation contract and pool implementation for Elixir browser backends
012.7k last 90 days012.7k -
browse_chrome 0.4.1
Manage headless Chrome instances via the Chrome DevTools Protocol
312.6k last 90 days312.6k -
oas_generator_utils 1.1.0
Resuable utilities for projects generated with oas_generator for Open API Spec, JSON schema and MCP client or server.
2612.3k last 90 days2612.3k -
7311.2k
-
510.9k
-
1.2k10.8k
-
nested_filter 1.2.2
Drill down into a nested map and filter out keys according to user specified values
3510.7k last 90 days3510.7k -
numerator 0.3.0
Numerator does calculate paginations without creating any markup.
4010.4k last 90 days4010.4k -
1210.1k
-
1989.8k
-
tailwind_merge 0.1.0
Utility function to efficiently merge Tailwind CSS classes in Elixir without style conflicts.
49.8k last 90 days49.8k -
wait_for_it 2.1.2
Elixir library providing various ways of waiting for things to happen
179.2k last 90 days179.2k -
global_value 1.0.0
Create singleton values accessible anywhere in your application.
49.1k last 90 days49.1k -
928.6k
-
948.6k
-
fe 0.1.5
Collection of useful data types brought to Elixir from other functional languages.
418.5k last 90 days418.5k -
268.1k
-
338.0k
-
258.0k
-
handler 0.5.0
A helper to run functions that you want to limit by heap size or time
37.4k last 90 days37.4k -
1097.3k
-
1127.1k
-
187.0k
-
116.6k
-
156.5k
-
236.5k
-
tailwind_combine 0.1.0
Utility function to efficiently merge Tailwind CSS classes in Elixir without style conflicts.
16.5k last 90 days16.5k -
936.5k
-
366.4k
-
216.2k
-
375.8k
-
-5.8k
-
-5.7k
-
365.7k
-
165.7k
-
95.4k
-
brex_result 0.4.0
Tools to handle three common return values in Elixir: `:ok | {:ok, value} | {:error, reason}`
875.2k last 90 days875.2k -
405.0k
-
wild 1.0.1
A wildcard matching library that implements unix-style blob pattern matching functionality for Elixir binaries. It works on all binary input and defaults to working with codepoint representations of binaries, but other modes are also available.
44.9k last 90 days44.9k -
key_tools 0.4.1
Simple functions for coercing Elixir Maps: atomizing, snake_casing, etc.
74.6k last 90 days74.6k -
254.5k
-
-4.5k
-
64.3k
-
523.9k
-
293.9k
-
53.9k
-
lazy_for 1.1.0
Lazy implementation of Kernel.SpecialForms.for/1 based on streams
33.8k last 90 days33.8k -
-3.8k
-
13.8k
-
atomize_keys 1.2.0
A tool to convert string map keys to atoms or atom map keys to strings.
03.7k last 90 days03.7k -
83.4k
-
-3.3k
-
currying 1.0.3
The Currying library allows you to partially apply (or 'curry') any Elixir function, in a very transparent way. It also optionally implements the infix operator `~>` as a synomym for currying.
453.3k last 90 days453.3k