The Raku Ecosystem, Working

One page per module from raku.land — installed, tested and run under Raku++, with examples you can copy straight into a file.

A module is on this site once Raku++ can do four things with it: parse its sources, install it with rakupp install, run the distribution's own test suite, and run the examples on its page. Every example below is executed under Raku++ 3.28.0 and under Rakudo 2026.08 as the build runs, twice on each, and the build fails if an output moves. What you copy is what ran.

Every page here is written for this site — what the module is for, what its API actually looks like, and the one thing worth knowing before you reach for it. None of it is copied from the distribution's own documentation.

The whole Raku ecosystem — all 2,524 distributions and how each ran →

ModuleTopicVersionStateExamples
Abbreviations
Every leading substring that identifies one word out of a set and no other — the unambiguous prefixes a command-line tool lets you type instead of the whole subcommand.
text2.2.3Works2
Acme::Scrub
Hide a program inside its own source file as zero-width characters, and decode and run it on every later invocation.
curiosities0.2.1Works2
Algorithm::BinaryIndexedTree
A Fenwick tree — an array of cumulative counts supporting a bucket increment and a prefix sum, each in logarithmic time.
data structures0.0.8Works4
Algorithm::DawkinsWeasel
Dawkins's cumulative-selection demonstration — where every step of the sequence is the same mutable object, not a snapshot.
algorithms0.1.1Divergent4
Algorithm::Elo
One Elo update — two integer ratings and who won, in; two new integer ratings, out — on the standard logistic curve with a fixed K of 32.
algorithms0.1.1Works3
Algorithm::Genetic
A skeleton for a genetic search you fill in — where the population is not sorted when `evolve` returns, so `.tail` is usually not the best.
algorithms0.0.2Divergent4
Algorithm::KDimensionalTree
A static k-d tree over numeric vectors, answering k-nearest-neighbour and radius queries, with a pluggable distance function.
data structures0.1.2Divergent3
Algorithm::LCS
The longest common subsequence of two sequences — the subsequence itself, not its length — with the common prefix and suffix stripped before the dynamic-programming table is built.
algorithms0.1.1Works3
Algorithm::Manacher
Manacher's linear scan for palindromic substrings — every maximal palindrome and its position, computed once at construction.
algorithms0.0.1Works3
Algorithm::SetUnion
A disjoint-set forest over the integers 0 ..^ size, with union by subtree size and full path compression, and the node array exposed.
algorithms0.0.1Works4
Algorithm::Soundex
The American Soundex code for a name — an initial letter followed by digits for the consonant groups that follow it.
algorithms0.2Works3
Algorithm::TernarySearchTree
A ternary search tree over whole strings — one character per level, a binary search among the alternatives — with exact lookup and a fixed-length wildcard match.
data structures0.0.5Works4
Algorithm::ZobristHashing
Zobrist hashing — a random value per (position, piece) pair, XORed together — so a one-square change costs two more XORs rather than a rehash.
algorithms0.0.6Works4
AlgorithmsIT
Knuth-Morris-Pratt transcribed from the textbook, with a one-based array class so the code reads like the pseudocode.
algorithms0.0.4Divergent5
allow-no
One line that rewrites `--no-foo` into Raku's `--/foo` before MAIN parses — including after the `--` end-of-options separator.
command line0.0.1Divergent4
App::Rakus
A static HTTP file server as one installable command, on nothing but IO::Socket::INET — with the routing exposed as a pure function you can test without opening a port.
command line0.0.2Works6
as-cli-arguments
Renders a Capture back into the command line that would have produced it — provided every value is already a Str.
command line0.0.10Divergent5
ASCII::To::Uni
A source-rewriting filter that replaces about forty-five ASCII spellings with the Unicode characters Raku also accepts.
source tools0.1.1Divergent3
Astro::Sunrise
The local clock times at which the sun's centre crosses a chosen altitude on a given date at a given point on the globe.
astronomy0.0.4Works5
Automata::Cellular
Run Wolfram's elementary one-dimensional cellular automata — the 256 three-neighbour rules — on a wrap-around row seeded with a single live cell.
simulation0.2.3Works4
AVL-Tree
A height-balanced binary search tree holding one key per node, with an optional payload, rebalancing by rotation on insert and delete.
data structures0.0.2Partial4
Avolution::Emoji
251 shortcode substitutions turning `:smile:` into an emoji — two of them mis-escaped, including the most-typed one of all.
text0.1.1Works4
Base64
Base64 in pure Raku with the two alphabets that matter — standard and URL-safe — from the author of zef, with no dependencies to drag in.
data format0.1.0Works2
Base64::Native
Base64 over a bundled C codec, doing the whole buffer in one call and working in Blobs throughout, with the URL-safe alphabet as a flag.
encoding0.0.10Works4
Brazilian::FederalDocuments
CPF and CNPJ check-digit validation — missing the official 10→0 fold, so it rejects one in six well-formed documents and accepts every repdigit.
validation0.1.1Divergent4
Browser::Open
Picks a command that can open a URL, per kernel — and silently ignores `$BROWSER` when you set it to an absolute path.
system1.0.1Works4
Cache::Async
A thread-safe read-through cache built around a producer closure — every get returns a Promise, and concurrent requests for one key collapse onto a single producer call.
caching0.3.4Works4
Calculator
A two-number arithmetic object — construct it with an x and a y, then ask for their sum, difference, product or quotient.
arithmetic0.0.1Divergent3
CBOR::Simple
A CBOR codec in three subs — encode, decode, and a diagnostic notation that prints what the bytes mean, which is the one that makes the format learnable.
data format0.1.4Works1
CCColor
A hex colour string to four exact fractions of 255 — where lowercase hex silently returns opaque black.
colour0.0.2Divergent4
Chess
Two chess notation grammars — a position in FEN and a game score in PGN — plus a terminal board printer in Unicode chess glyphs.
games0.2.4Works4
Clean
A fifteen-line destructor convention — mark a class with a role, implement clean, and call a sub that runs your block and then cleans up.
resources*Partial3
Color
A color as an object — construct it from hex, RGB, HSL, HSV or CMYK, convert between them all, and adjust it with lighten, darken, saturate, invert and arithmetic.
graphics1.004001Works3
Color::Names
Named colours as data — CSS3, Crayola, X11 and more, each name paired with its RGB triple, plus a substring search and a nearest-match by distance.
graphics2.0.0Works1
Color::Scheme
Rotate a Color's hue by a list of degree offsets and return the resulting colours, with seventeen named offset sets baked in.
colour1.001003Works4
Compress::LZString
A pure-Raku port of the JavaScript lz-string dictionary coder, with five transport encodings of the same bit stream.
compression0.0.1Works4
Compress::Zlib
compress and uncompress over libz, plus the three framings — raw deflate, a zlib header, a gzip header — and a filehandle wrapper that reads or writes a gzip file as if it were text.
encoding1.1.0Works1
Compress::Zlib::Raw
The zlib C library bound function for function — the one-shot helpers, the streaming deflate and inflate state machine, and the checksums — with no Raku wrapper over any of it.
encoding1.0.1Works2
Concurrent::Channelify
Hand a list to a start block that pushes every element into a Channel, so a producing pipeline overlaps with a consuming one.
concurrency0.1.0Divergent3
Config
A settings object with a template of allowed keys, dotted paths into nested values, and readers for hashes, files, environment variables and XDG directories — where every change hands back a new Config.
configuration3.0.4Works2
Config::Clever
Layered JSON configuration by convention — a default file, an environment file and a machine-local override, merged in that order from one directory.
configuration1.0.0Works2
Config::INI
A grammar for the classic key = value / [section] file, plus a writer that walks a hash back out, giving a two-level hash of strings.
configuration1.2Works4
Constants::Netinet::In
Per-platform IPPROTO and IP socket-option constants transcribed from netinet/in.h — and on macOS they are Blocks, not enums.
system0.0.1Works5
Cro::Core
The pieces every Cro library is built from — a URI and IRI parser that implements RFC 3986 resolution, a media-type parser that splits the structured suffix, and the pipeline composer the HTTP and WebSocket libraries plug into.
web0.8.10Works3
Crypt::Random
Random bytes and integers from the operating system's cryptographic source instead of the language's PRNG — a buffer, an integer, an unbiased draw below a bound, and a version-4 UUID assembled from them.
crypto0.4.1Works2
CSV::Parser
A CSV reader that works from an open file handle a line at a time — quoted fields, a header row that becomes the keys, and the separators and quote characters as options — for files too big to slurp.
data format0.1.4Works1
Data::DPath6
A placeholder release — the whole executable content is one method that returns 42.
placeholders0.0.2Works4
Data::Dump
One sub, Dump, that renders any structure — nested data, objects, attributes and all — as indented, optionally colored text a human can actually read.
debugging0.0.18Works1
Data::Generators
Random words, strings, numbers, dates, pet names, job titles — and whole tabular datasets. The fastest way to have data before you have data.
data generation0.1.11Works9
Data::Geographics
29 countries of statistics and 62 350 cities, plus geohashes and a great-circle distance — with a decoder that swaps min and max.
geography0.1.5Divergent5
Data::ICal
Parses an .ics calendar into events with DateTimes — and cannot read back what it writes.
data formats1.0.0Divergent5
Data::RandomKeep
Reservoir sampling — keep N items from a stream of unknown length in constant memory, and get them back sorted by value.
sampling0.1.1Works5
Data::Transformers
Numeric array reshaping — a running-total accumulator, a linear range remapper, and array padding and centring helpers — in three separately used units.
data0.0.2Works4
Data::Tree
A Haskell-shaped rooted tree with builders, folds and two ASCII renderers — where `levels` returns nothing for a falsy root.
data structures0.3Divergent5
Data::TypeSystem
Says what shape a data structure is — a vector of Ints, a tuple, a list of records, a hash of vectors — in one call, so code that accepts "data" can check it was handed a table before treating it as one.
data0.1.8Works2
Date::Calendar::Armenian
The Armenian civil calendar — twelve thirty-day months plus five aveliats, 365 days flat, no leap day ever.
calendars0.1.0Works4
Date::Calendar::Bahai
Convert between Gregorian dates and the Baháʼí calendar in both an arithmetic and an astronomical reckoning, with the cyclical structure exposed alongside year, month and day.
calendars0.1.0Works4
Date::Calendar::Hijri
Convert between Gregorian dates and the arithmetic Hijri calendar — a computed thirty-year cycle with no moon sighting — with day names and strftime.
calendars0.1.0Works4
Date::Calendar::MayaAztec
Maya long count, Haab and Tzolkin plus the Aztec xiuhpohualli and tonalpohualli, under three published correlations, in three locales each.
calendars0.1.0Works5
Date::Calendar::Persian
Convert between Gregorian dates and the Persian solar calendar, whose year begins at the spring equinox, in an arithmetic and an astronomical reckoning.
calendars0.1.0Works4
Date::Calendar::Strftime
The C library's `strftime` as a role — `%Y-%m-%d`, `%j`, `%V`, widths and flags — mixed into a core Date or into any of the author's Date::Calendar classes, so one format string works across calendars.
time0.1.1Works1
Date::Christian::Advent
The date of the First Sunday of Advent for a year, computed three independent ways — which all agree.
calendars0.0.2Works3
Date::Easter
Gregorian Easter Sunday from a year, and the six moveable feasts anchored to it, as Date::Event objects keyed by the date each falls on.
calendars0.0.5Works4
Date::Event
One record type for "something that happens on a date" — a name, a category from a sixteen-value enumeration, the date, the observed date, and an identifier scoped to a set.
time0.0.12Works2
Date::Names
The names of the months and weekdays in fourteen languages — full, abbreviated, in the case and truncation you ask for — and the reverse lookup from a name to its number.
time2.3.2Works1
Date::Utils
The arithmetic a month-grid calendar needs — which weekday column the first falls in, how many rows the month takes, and where "third Monday in January" actually lands.
time0.7.0Works3
DateTime::Format
strftime for Raku's DateTime — the % patterns everyone knows, with month and day names in six languages.
time0.1.5Works2
DateTime::Format::LikeGo
Write a datetime layout the way Go does — by spelling out a reference instant rather than using percent codes — and render a DateTime with it.
time0.0.2Works3
DateTime::Grammar
A DateTime from a dozen conventional date shapes — ISO 8601, the three HTTP formats, slashed numeric dates and spelled-out months — as a grammar factored into a reusable role.
time0.1.3Divergent2
DateTime::Location
A value object for a place — name, coordinates, UTC offset and eight optional descriptive fields — that validates almost none of them.
geography0.0.1Works5
DateTime::Math
Conversions between a number and a duration unit, plus operators that add or subtract a plain number of seconds from a DateTime.
time0.6.2Works4
DateTime::Parse
A DateTime from the date strings the web writes — RFC 1123, the older RFC 850, C's `asctime`, and ISO 8601 — through one constructor that tries the grammars in turn.
time0.9.3Works1
DBIish
One interface to SQLite, PostgreSQL, MySQL and Oracle — connect by driver name, send SQL with placeholders, and get rows back as lists or hashes with the database's types already turned into Raku's.
database0.6.8Works2
DFM::Parser
A grammar for Delphi form files — no actions, no serialiser, and a number list of more than one number never parses.
data formats0.0.1Divergent5
Dictionary::Create
A string builder for DSL dictionary markup — where one of its five tag methods cannot succeed with any argument.
text*Divergent5
Die
Restore Perl's convention that a die message ending in a newline is a finished message for the user — printed to stderr, followed by exit 1.
error handling1.1Works2
Digest
MD5, SHA-1, SHA-2, SHA-3, RIPEMD-160 and HMAC written in Raku itself — one sub per algorithm, a Blob in and a Blob out, and no C to compile, at the speed that implies.
crypto1.1.0Works2
Digest::FNV
The Fowler–Noll–Vo non-cryptographic hash in its three historical variants, at any of six widths from 32 to 1024 bits.
hashing0.1.1Works3
Digest::HMAC
Keyed message authentication (RFC 2104) over any digest you hand it — verify a webhook signature or sign an API request in one line, in pure Raku.
crypto1.0.7Works3
Digest::MD5
MD5 in forty-three lines of Raku — one sub, a message in and sixteen bytes out — for the content addresses and legacy checksums that still ask for it.
crypto1.1.0Works2
Digest::SHA1::Native
SHA-1 through a C implementation compiled at install time — two subs, the raw digest and the hex string, for the checksum and lookup-key uses where SHA-1 is still what the other side expects.
crypto1.0.1Works1
Digest::SHA256::Native
SHA-256 through a C implementation rather than a Raku one — two subs, one returning the raw digest and one the hex string, for when hashing is on a path that runs often enough for the speed to show.
crypto1.0.2Works1
DirsOfInterest
Where an application should put its data, config, cache and logs — eighteen lookups, ten of which throw on macOS.
system1.0.0Works5
Doublephone
Double Metaphone over a bundled C implementation — one call turns a word into two four-letter phonetic keys.
text comparison0.1.3Works3
Email::MessageID
Generate a value for a Message-ID header from a nanosecond timestamp, a short random run and the process id, attached to the machine's hostname.
email0.0.1Works3
Encode
Byte-to-text decoding for the legacy single-byte encodings the core does not carry — ISO-8859-2 and Windows-1251 above all — as one sub and three lookup tables.
encoding0.0.4Works2
Encoding::Huffman::PP6
Bit-packed Huffman coding with the HPACK table built in — and a decoder that destroys every digit and every space.
encoding0.0.3Divergent6
Env::Dotenv
Read a .env file in the current directory and turn each line into a key and a value, either copied into the process environment or returned as a hash.
configuration0.0.6Divergent2
EuclideanRhythm
Spread a number of hits as evenly as the integers allow over a number of slots, using Bjorklund's construction, and hand the bar back as booleans.
music0.0.6Works3
File::Directory::Bubble
The list-building half of a recursive delete — every descendant in an order safe to remove in, and how far a deletion would cascade up the parent chain.
filesystem0.1Works4
File::Directory::Tree
mkdir -p, rm -r and "empty this directory" as three Raku subs — the whole-tree operations the core deliberately leaves out.
files0.2Works3
File::Find
Walk a directory tree as a lazy sequence, filtered by name, type or path, without writing the recursion yourself.
files0.2.5Works3
File::Path::Resolve
A path string turned into an absolute IO::Path, with a leading tilde expanded to the home directory first and every `..` collapsed.
files0.0.1Works2
File::Presence
Four compound questions about a path — does it exist and is it readable and is it a file — answered as one boolean each, with no exception when the path is not there.
files0.2.0Works2
File::Stat
The raw `stat(2)` fields an IO::Path does not expose — inode, device, mode bits, link count, block counts, owner and group — as a live query against a path.
files1.0.3Works3
File::Temp
A temporary file or directory with a name nobody can guess, created safely, and removed for you when the program ends.
files0.0.12Works4
File::Which
The shell's which, as a function — find the full path of an executable on PATH, on every platform, before you try to run it.
files1.0.4Works2
File::Zip
Read a zip archive by shelling out to the system unzip — validate the path, list the members, extract to a directory.
archives0.1.2Works3
Finance::CompoundInterest
Four time-value-of-money formulas — future value of a lump sum or a payment stream, and the two inverses that solve for periods or payment size.
finance0.1.0Works3
Fortune
Read and write the Unix fortune file format — records separated by a delimiter line, with an optional binary index — and ship a Slackware database so it works out of the box.
text0.1.0Works3
Game::Stats
Descriptive statistics and discrete probability as five small classes — an append-only sample, its mean and variance, covariance and correlation, and a Bayes helper.
statistics0.2.11Divergent3
Game::Sudoku
A 9x9 grid held as an 81-character string, answering validity, completeness and per-cell candidates, with a separate solver unit.
games1.1.4Works4
Games::Maze
Carve a rectangular maze by recursive backtracking and render it as ASCII, one header line plus one line per row.
games0.0.1Works4
Geo::Ellipsoid
Solve the two classical geodesy problems on an ellipsoidal Earth — distance and bearing between two points, and the point a distance and bearing away — over nineteen named reference ellipsoids.
geodesy1.0.1Works4
Geo::Geometry
The OGC simple-feature shapes as Raku classes — points, lines, rings, polygons and the collections — each able to serialise itself to standard binary WKB.
graphics0.1.3Works2
Geo::Hash
Encodes a latitude and longitude into a geohash string and decodes one back, over a bundled C library — three subs, and the prefix property that makes the format worth using at all.
geo0.0.3Works3
Geo::Location
A place as decimal degrees, as `N30d21m22s`, or in the compact rise/set form — and supplying only one coordinate relocates you to Florida.
geography0.0.4Divergent5
Geo::WellKnownBinary
Decode OGC Well-Known Binary — the packed byte format PostGIS keeps geometry in — into Geo::Geometry objects, in either byte order and every Z/M/ZM variant.
geospatial0.1.6Divergent4
Getopt::Long
Command-line parsing in the GNU style — long and short options, negatable flags, typed values, repeats — declared either as patterns in the Perl tradition or by the signature of the sub you want called.
command line0.4.2Divergent2
Getopt::Long::Grammar
Parse a command line held in a single string — command word, options and positional arguments — into a Match or a plain hash, without ever touching @*ARGS.
grammars0.0.2Works4
Git::Status
Run git status in a directory and present the porcelain output as seven typed lists plus a clean flag, read once at construction.
git0.0.4Partial3
Glob::Grammar
A grammar for shell wildcard syntax, with an actions class that translates a glob into the source text of a Raku regex.
text0.0.2Divergent2
Grammar::DiceRolls
A grammar for tabletop dice notation — 3d6, 2d6+1d4-1 — with two action classes, one returning a total and one every individual die.
grammars0.3.1Works4
Grammar::TodoTxt
A grammar for the todo.txt task format — completion marker, priority, two dates, and a description in which projects, contexts and key:value labels are picked out from ordinary words.
grammars0.1.0Works3
Gray::Code::RBC
Convert between integers and reflected binary Gray code, where consecutive values differ by exactly one bit, at arbitrary precision.
encoding0.0.4Works4
Haikunator
Generate a random adjective-noun-number label in the Heroku style — a throwaway name a person can read aloud and remember.
identifiers0.1.0Works3
Hash::Merge
Deep-merges hashes into a new one — nested hashes combined key by key, arrays appended rather than replaced, and the later argument winning every collision.
data2.0.0Works2
Hash::Ordered
A hash whose keys come back in the order they were first assigned, through the ordinary hash syntax — a container trait rather than a new type to learn.
data0.0.9Works2
head-skip-tail
Sub forms of `head`, `skip` and `tail` for compilers that lack them — a no-op on Rakudo, and load-bearing on Raku++.
compatibility0.0.1Divergent4
Highlight::Terminal
A lookup table from Raku syntax-category names to SGR colour parameters, plus the two methods that wrap text in the matching escape.
terminal0.0.2Works3
Holidays::US::Federal
The eleven US federal holidays for a year, with the date each is observed when the holiday falls on a weekend.
calendars0.0.5Works4
HTML::Escape
One exported sub that turns the five characters HTML cares about into entities — the smallest correct answer to "I am about to interpolate a string into markup".
web0.0.1Works1
HTML::EscapeUtils
Escape five characters, unescape 2222 named and numeric entities — and throw on any entity it does not recognise.
encoding0.0.3Divergent6
HTML::Lazy
A lazy HTML builder where every constructor returns a thunk and nothing is rendered until the outermost one is passed to render.
markup0.0.1Partial4
HTML::Parser
Six lines: a role declaring one attribute and one stubbed method — an interface for somebody else's parser, not a parser.
interfaces0.1.1Works5
HTTP::HPACK
HTTP/2 header compression — the static and dynamic index tables, the integer and string primitives, and the Huffman code — as an encoder and a decoder you pair per connection.
web1.0.3Works2
HTTP::ParseParams
Parse an HTTP cookie string or an x-www-form-urlencoded body into a hash, with the dialect chosen by a flag.
http1.0.0Partial4
HTTP::Status
Every registered HTTP status code as an object that knows its title, its class, its RFC and where it came from — plus the one-line predicates for "is this an error?".
web0.0.5Works3
HTTP::Tiny
An HTTP/1.1 client with no dependencies — one object, one method per verb, a hash back with the status, the headers and the body — for the program that has to fetch or post something and would rather not carry a framework to do it.
web0.2.6Works2
I18n::Simple
User-facing strings in flat YAML files, looked up by key with placeholders filled from named arguments — layered so a translation can be loaded over a base language.
language0.1.2Works2
IDNA::Punycode
The bootstring encoding behind internationalised domain names — one sub each way, turning Unicode text into an `xn--` label and back.
encoding1.0.1Works2
if
One pragma — `use if CONDITION, 'Module'` — that loads a distribution only when the condition holds, so a platform-only dependency costs nothing on the platforms that do not need it.
system0.1.5Divergent1
Image::Markup::Utilities
Turn an image file into a base64 data URI and wrap it in Markdown or HTML, so images can be embedded inline in notebooks and documents.
images0.1.2Works3
Image::PNG::Inflated
Wraps a raw RGBA buffer in a valid PNG container without compressing it — and never checks that the buffer matches the size you declared.
images0.1.0Divergent4
Inline::BASIC
Runs a line-numbered BASIC program from a Raku string — where every expression goes through EVAL, so `2 ^ 10` prints 210.
languages0.0.2Works6
Intl::LanguageTaggish
The interface every language-tag type is expected to satisfy — one role with four required methods — so unrelated internationalisation libraries can accept each other's tags.
language0.2Works2
IO::Glob
Shell wildcards in Raku — `*.txt`, `src/**/*.rakumod`, `{one,two}` — as a matcher for strings and paths and as a way to list a directory, with the shell's grammar rather than a regex to write.
files0.9.0Works1
IO::Path::Dirstack
A shell-style directory stack — pushd changes the working directory and remembers where you were, popd goes back.
filesystem0.1.1Works3
IO::Path::XDG
The freedesktop.org base directories as six subs — config, data and cache homes, their search lists, and the runtime directory — with the specification's defaults filled in.
files0.2.0Divergent2
IRC::TextColor
IRC's in-band colour codes with names, plus a converter that turns ANSI terminal escapes into the IRC equivalents so console output can be relayed to a channel.
terminal0.4.1Works2
JSON::Class
A role that gives any class a `to-json` and a `from-json` — public attributes out, typed objects back in, nested classes and typed arrays included — built on JSON::Marshal and JSON::Unmarshal.
data format0.0.21Works2
JSON::Fast
JSON in, Raku data out, and back again. Two exported subs, a handful of adverbs, and the numbers come back typed the way you would have typed them.
data format0.20.1Works9
JSON::JWT
JSON Web Tokens signed and verified — unsigned, HMAC-SHA256 with a shared secret, or RSA-SHA256 with a PEM key — where decoding and verifying are the same call.
crypto1.1.2Works2
JSON::Marshal
An object's public attributes turned into JSON, with four traits for the per-attribute decisions — skip it, skip it when empty, run it through a converter, or publish only what is marked.
data format0.0.25Works3
JSON::Name
One attribute trait that records a different JSON key for an attribute — for the `@type` and `created_at` spellings a Raku identifier cannot have.
data format0.0.7Works2
JSON::Native
JSON::Fast's interface with a native fast path — a C extension compiled at install time, or Raku++'s own codec — and JSON::Fast itself everywhere else. Same program, same answers, on both engines.
data format0.0.2Works6
JSON::OptIn
One empty marker role and the trait that applies it — the shared answer to "was this attribute deliberately made JSON-visible", so several serialisation modules can agree without depending on each other.
data format0.0.2Works2
JSON::Pretty
A `to-json` that formats for a human — one value per line, two spaces of indent, a space either side of the colon — imported over the one you already have.
data format0.1.1Works2
JSON::Pretty::Sorted
A pretty-printing JSON writer with a caller-supplied ordering hook threaded through the whole document.
json0.0.2Partial4
JSON::Tiny
The original Raku JSON module — two exported subs around a grammar small enough to read in one sitting, and clean enough to subclass when your "JSON" has comments in it.
data format1.0Works4
JSON::Unmarshal
JSON into typed objects — matching keys to public attributes, recursing into nested classes and typed arrays, and checking each value against the attribute's declared type.
data format0.18Works3
Lazy::Static
Wrap a block in a closure that runs it at most once, on first call, and hands every later caller — on any thread — the same value.
concurrency0.0.1Works3
LCS::All
Every longest common subsequence of two sequences, not just one, returned as lists of index pairs into the originals.
algorithms0.2.0Works3
LEB128
LEB128 variable-length integers, signed and unsigned — the format DWARF, WebAssembly and Protocol Buffers pack integers with — at arbitrary precision.
encoding1.0Works4
lemmatize
Dictionary-driven lemmatisation with 24 bundled language tables — and its English table folds the plural pronouns onto the singular ones.
linguistics0.0.3Divergent4
License::SPDX
The SPDX licence list as a bundled data table, looked up by identifier or walked in full, with each licence an object carrying its name, approval flags and reference URLs.
metadata3.28.0Works3
Lingua::Conjunction
Turn a list into a natural-language phrase — a, b, and c — with control over the conjunction, the Oxford comma, the separator and the language.
text1.3Works4
Lingua::EN::Conjugate
English verb phrases from a bare verb and a pronoun — tense, modal, aspect, voice, negation and question order, as an ordered list of words.
linguistics0.3Divergent6
Lingua::EN::Stopwords
Three fixed English stop-word lists in three separate units — and the exported hash is the module's own, not a copy.
linguistics0.0.2Divergent4
Lingua::EN::Syllable
Estimate how many syllables an English word has, by counting vowel groups and applying a list of corrective patterns.
text1.0.3Works4
Lingua::Lipogram
Does this text avoid all of these letters? — one multi with five candidates, where `<ch>` and `('ch',)` mean completely different things.
linguistics0.1.0Works5
Lingua::NumericWordForms
Numbers spelled out as words and read back again, across nineteen languages — with automatic detection of which language a spelled-out number is in.
language0.6.2Works3
Lingua::Palindrome
Palindromy at three granularities — characters, words, lines — behind a filter with four flags and one character class it cannot remove.
linguistics0.1.0Works5
Lingua::Pangram
Does this text use every required character? — with five per-language wrappers, one of which tests for `ss` when it means `ß`.
linguistics0.1.1Works5
Lingua::Stem::Es
The Snowball Spanish stemmer, ported — one string in, one stem out, and the merges it makes are not the ones you expect.
linguistics0.0.1Works5
List::Allmax
`max` and `min` that return every tied winner — with a `:by` that is re-applied on both sides of every comparison.
lists0.0.1Divergent5
Locale::Dates
Weekday and month names, am/pm markers and strftime templates for seven locales — falling back to English, silently, and case-sensitively.
localisation0.0.7Divergent5
Locale::US
Two-letter postal codes to place names and back — 59 rows, not 50, and every name comes back SHOUTED.
localisation0.0.2Divergent3
Log
A log4j-shaped logger — five levels, a pattern string, a registry of named loggers, and the two context stores that let a request tag every line it causes.
debugging0.3.2Works2
Logger
The continuation of the Log distribution under a new name — the same levels, pattern and contexts, plus a settable pattern and a hook for the timestamp.
debugging0.4.6Works2
LR1
An LR(1) parser generator and runner in one module — where you never declare the start symbol, so the obvious grammar fails.
parsing0.0.5Works5
LZW::Revolunet
A port of a JavaScript LZW routine that replaces repeated substrings with single characters drawn from a private code space.
compression0.3.2Divergent3
Math::BijectiveBase
Bijective positional numerals — the system spreadsheet columns use, where there is no zero digit — with five alphabets, one of them radix 35.
numbers0.0.1Works4
Math::Curves
Two curve primitives for interpolation — a straight-line function and Bezier evaluation at a parameter for two, three or four control points.
maths0.0.1Divergent3
Math::DistanceFunctions
Ten ways to measure how far apart two numeric vectors are — Euclidean, Manhattan, Chebyshev, cosine, Canberra, Bray–Curtis, Hamming and the general p-norm — as plain subs over two lists.
maths0.1.4Works2
Math::DistanceFunctions::Edit
Edit distance with transpositions counted as one operation, done in C — how many single-character changes turn one string into another, for spelling suggestions and fuzzy matching.
text0.1.3Works3
Math::DistanceFunctions::Native
Vector distance and similarity primitives backed by a bundled C implementation — Euclidean, squared Euclidean, cosine, dot product and norm.
maths0.1.2Works3
Math::FourierTransform
A naive O(N²) discrete Fourier transform over `Complex` — exact conventions, and a signature that demands a typed array.
numbers0.0.1Divergent4
Math::Nearest
Nearest-neighbour search over a point set — the k closest or everything inside a radius — with a k-d tree or an exhaustive scan behind one callable finder.
maths0.0.7Divergent3
Math::Polynomial::Chebyshev
Chebyshev polynomials of the first and second kind — exact on exact input, until the denominator outgrows a Rat.
numbers0.0.2Works5
Math::Random
Seedable pseudo-random generators as objects — a Mersenne Twister matching the reference implementation, and a linear congruential one with Java's constants.
maths0.1.3Divergent2
Math::SelfDescriptiveNumbers
The self-descriptive numbers of any base — from three special cases and a closed form, not from a search.
numbers0.0.1Works5
Math::SpecialFunctions
Gamma, factorial, binomial coefficients, Bernoulli numbers and the Euler–Mascheroni constant — exact integers and rationals where the answer is exact, floating point where it cannot be.
maths0.1.1Works2
Math::Zeckendorf
The unique sum of non-consecutive Fibonacci numbers, and its dual — as digits or as the numbers themselves, except through a list.
numbers0.0.5Works5
MessageStream
A role giving your class a one-to-many message bus — where subscribing twice leaks a tap you cannot see or remove.
messaging0.2.0Divergent6
META6
A distribution's META6.json as a typed object — name, version, provides, the four kinds of dependency — read from a string or a file and written back out, with every field the specification names as a method.
data format0.0.31Works1
Method::Also
An "is also" trait that gives one method several names — aliases for a friendlier API, or for the protocol hooks Raku itself looks up, with no forwarder methods to write.
language0.0.10Works2
MIME::Base64
Bytes to ASCII and back — the encoding behind Basic auth, data URIs, and every place binary has to travel through a text-only channel.
encoding1.2.5Works5
MIME::QuotedPrint
Quoted-printable encoding and decoding — bytes outside printable ASCII become =XX escapes — with a byte pair, a text pair, and the RFC 2047 header variant.
encoding1.0.0Works4
MIME::Types
The table from a file extension to a media type and back — `html` to `text/html`, `text/html` to its three extensions — as an object built from the list Apache ships, with nothing computed at all.
web0.3Works1
ML::Clustering
k-means over numeric vectors with eleven distance functions — and by default the reported centres are not the clusters' centroids.
machine learning0.2.0Divergent5
ML::ROCFunctions
The confusion-matrix rate family plus a trapezoidal AUROC — with an MCC computed from rates rather than counts.
statistics0.1.4Works5
Moonphase
The classic low-precision lunar series, accurate to about a thirtieth of a degree — returning an angle that is not normalised.
astronomy0.0.2Divergent4
Mortgage
The standard annuity formulas plus a month-by-month amortisation — correct arithmetic behind a parameter named `$p` that is not a payment.
finance*Divergent5
NativeHelpers::Array
Four subs that move data between a Raku Array or Buf and the CArray a C function wants — typed, sized and copied — so a NativeCall binding can hand a list to C and read one back without writing the loop each time.
native0.0.6Works1
NativeLibs
Open a shared library by name, resolve symbols out of it, and probe which ABI version exists at run time — with two distributions of this name installed.
native interface0.0.9Divergent5
Netstring
Bernstein's netstring framing — a decimal byte count, a colon, the payload, a comma — as two encoders and one socket reader.
encoding0.0.4Divergent4
Noise::Simplex
Seeded 2-D and 3-D simplex noise — bit-identical across engines, and it tiles every 147.8 units.
graphics0.1.2Works5
Number::Bytes::Human
Convert byte counts to and from short human-readable strings — 1048576 to 1M and back — using binary magnitudes.
formatting0.0.4Partial4
Numeric::Nearest
Binary-search a sorted list for the closest element — and the plural form crashes on any list of two, three or four.
numbers0.5.1Works5
Object::Container
A name-to-object registry with lazy initialisers — and a lock that stays locked if an initialiser throws.
dependency injection0.0.2Divergent5
OO::Monitors
A `monitor` declarator — a class whose every method call takes the object's own lock on the way in, so one thread at a time is inside it and the methods carry no locking code of their own.
concurrency1.1.7Works3
OpenSSL
The OpenSSL library through NativeCall — digests, symmetric ciphers, RSA, X.509 and the TLS socket that IO::Socket::SSL is built on — in nineteen units, of which most programs want two.
crypto0.2.9Works1
Operator::feq
An infix `feq` for fuzzy equality — on edit distance over the stringified operands, which is not what "fuzzy equals" suggests.
operators0.1.2Divergent5
P5chr
Perl's `chr` and `ord` — where `chr` above 127 answers a literal question mark carrying the codepoint you asked for in its `.ord`.
perl 5 compatibility0.0.10Works4
P5getgrnam
The POSIX group-database calls, shaped so the return value matches what Perl's built-ins of the same name hand back.
system0.0.10Works3
P5getnetbyname
The POSIX network-database calls, returning Perl's four-field record of name, aliases, address type and network number.
system0.0.9Works3
P5getpriority
Scheduling priority and process groups — getpriority, setpriority, getppid, getpgrp and setpgrp — bound directly, returning plain integers.
system0.0.8Works3
P5getprotobyname
The POSIX protocol-database calls, returning Perl's three-field record of name, aliases and IANA protocol number.
system0.0.7Works4
P5getpwnam
The POSIX password-database calls, reshaping the platform's struct passwd into the field order Perl's getpw built-ins use.
system0.0.11Works3
P5getservbyname
The POSIX service-database calls, shaped so the return value matches what Perl's built-ins of the same name hand back, with ports byte-swapped into host order for you.
system0.0.8Works5
P5hex
Perl's `hex` and `oct` — where `oct("0xff")` returns 0, silently, exactly as Perl's does not.
perl 5 compatibility0.0.10Works4
P5index
Perl's `index` and `rindex` — returning -1 for "not found" where Raku returns Nil, and taking the position argument Perl's way.
perl 5 compatibility0.0.7Works4
P5lcfirst
Perl's `lcfirst` and `ucfirst` — which uppercase the first character where Raku's `.tc` titlecases it.
perl 5 compatibility0.0.12Works3
P5length
Perl's `length` — which returns undef for an undefined argument, and that undef still compares equal to zero.
perl 5 compatibility0.0.9Divergent3
P5localtime
Perl's `localtime` and `gmtime` — an epoch second broken into calendar fields, or formatted as the fixed-width C timestamp — for code being carried across from Perl.
time0.0.11Works2
P5opendir
Perl's directory-handle vocabulary — opendir, readdir, telldir, seekdir, rewinddir, closedir — over a snapshot of the names taken at open time.
filesystem0.0.10Works3
P5reverse
Perl's `reverse` — which dispatches on the argument's type rather than on calling context, because Raku has no calling context.
perl 5 compatibility0.0.10Divergent3
Package::Updates
Ask the host's system package manager which installed packages have newer versions available, as a hash of name to current and new.
system1.0.0Works2
Parameterizable
Gives a class the `Foo[Bar]` subscript syntax by supplying a `^parameterize` metamethod that mixes in a role you choose.
metaprogramming0.0.3Divergent4
path-coverage
Two lint scripts for a distribution's source tree — neither of which can see a `.rakumod` file.
developer tools0.2Works4
Path::Canonical
Collapses `.`, `//` and `..` in a path string — textually, never touching the filesystem, and always returning an absolute path.
paths*Works4
Path::Finder
A composable file-tree walker — build an immutable rule out of predicates, hand it a directory, and get back the paths that match, with whole subtrees pruned rather than filtered.
files0.4.7Works2
Path::Through
Four multis that treat an `IO::Path` as a list of `/`-separated parts — where `shift` on an absolute path removes the leading slash.
paths0.0.1Divergent4
paths
A recursive file finder that returns a lazy Seq of absolute paths, with separate matchers for directories and files — and a `:recurse` flag that does not mean what its name suggests.
files10.2Works1
PathTools
Five shell-flavoured filesystem helpers — list a tree, delete paths, create a directory chain, mint temporary paths — all Str in and Str out.
filesystem0.2.0Works3
Physics::Error
The measurement uncertainty attached to a physical quantity — the plus-or-minus — converting between absolute, relative and percentage forms.
science0.1.9Works3
Pod::Literate
A grammar that splits a Raku source file into alternating documentation and code chunks, handing back the matched substrings.
pod0.0.2Works3
Pod::Tangle
Strips the Pod out of a Raku file and keeps the code — and a single abbreviated directive makes it return an empty file.
pod0.0.2Divergent4
Proc::Easy
One sub that wraps run, always capturing both output streams, and hands back the exit code, stderr and stdout together.
process0.0.2Divergent4
Prompt::Gruff
Ask a question and get an answer — with re-prompting, verification and a regex constraint, and a built-in harness so you can test it.
command line0.0.1Works6
QueryOS
Identify the host operating system and split its version string into parts, so a program can branch on platform without parsing $*DISTRO by hand.
system0.1.2Partial3
Result
A Rust-style Result wrapper — a computation yields an Ok carrying a value or an Err carrying a message, and you chain onto it rather than throwing.
error handling0.2.5Works4
Scientist
Run new code beside old code and record whether they disagreed — with an `eqv` comparison that calls 42 and 42.0 a mismatch.
testing0.0.4Works5
Serialise::Map
An interface-only role declaring that a class can hand out a Map of its state and rebuild itself from one.
serialisation0.1.1Works3
Shareable
Inherit from it to get save-yourself-to-a-file — where the store file is `.raku` text that gets `EVAL`ed back.
serialisation0.0.1Divergent5
Shell::Command
cp -r, rm -rf, mkpath, cat and which as portable Raku subs — the shell one-liners your script was about to shell out for, without the shell.
files1.2Works2
Sort::Naturally
Key transforms that put `file2` before `file10` — ranking digit runs by length first, which puts `0100` after `999`.
sorting0.2.3Works5
sortuk
Ukrainian-alphabet sorting with an explicit 32-character table — and the alphabet has 33 letters.
localisation0.0.2Works5
Statistics::Distributions
Twenty-one named probability distributions, and one call that draws from any of them. Pure Raku, one dependency, no compiler and no C library.
statistics0.1.8Works14
Statistics::LinearRegression
Ordinary least-squares in exact Rat arithmetic — and a degenerate fit returns a defined Rat with denominator zero.
statistics1.1.2Works5
Storable::Lite
Persist a Raku value to a file and read it back, using Raku source as the on-disk format.
serialisation0.0.2Works3
StrictNamedArguments
An `is strict` trait that makes a method reject named arguments it did not declare — and silently breaks `callsame`.
language0.1.0Divergent5
String::Fold
Re-flow a string into lines no wider than a given width, splitting on whitespace and greedily refilling — a reflow rather than a wrap, since every existing break is discarded.
text formatting0.2.0Works3
String::Stream
A one-class in-memory sink you print into and read back — and, without inheriting anything, a drop-in `$*OUT`.
io0.8Divergent4
String::Utils
About forty small string routines that the core does not have — substring-before and -after, accent stripping, n-grams, abbreviations, whitespace introspection — each one a sub rather than a method.
text0.0.40Works1
sublist
Find one list inside another — by stringifying both slices, so element boundaries vanish, and without exporting anything.
lists1.2Divergent4
SVG
SVG written as nested pairs and serialised to the XML — the drawing described as data, so a program that computes a chart or a diagram produces the file without writing angle brackets.
graphics1.0Works1
Swedish::TextDates_sv
Swedish dates spelled out — "tolfte juli 2017" or "12 juli 2017" — plus weekday names, returned as enum elements rather than strings.
localisation0.1.2Works5
Sys::Domainname
Report the machine's DNS domain, by running hostname and removing everything up to the first dot.
system0.1.0Works2
Sys::Hostname
A three-line shim exporting `hostname()` — and the one `Kernel` method that survives being called on the type object.
system0.0.11Works4
Syslog::Parse
An RFC 3164 syslog grammar and a Supply that follows a growing file — with two months of the year missing from the grammar.
log parsing0.0.3Divergent5
System::Query
Collapses a nested config by environment, distro, kernel or backend — and `by-kernel` reads `$*DISTRO`.
configuration0.1.6Divergent5
TAP
The Test Anything Protocol as a library — parse TAP from a string, a file or a running program, add runs up into one verdict, and print the report you know from prove6.
testing0.3.15Divergent5
Term::Size
Terminal width and height in cells and pixels, from a bundled C helper — where only `populate` ever reports failure.
terminal0.1.1Divergent4
Terminal::ANSI
The ANSI escape sequences with names — bold, colour, cursor movement, alternate screen — offered twice over: as subs that write to the terminal, and as an object whose methods hand you the string instead.
terminal0.0.25Works1
Terminal::ANSIColor
Colour and style for terminal output, by name rather than by escape code — and one function to take it all back off again.
terminal0.14Works5
Terminal::Boxer
Render a flat list of cells as a bordered grid in any of eleven line-drawing styles, plus a borderless one and a generic form that takes your own eleven glyphs.
text formatting0.3.1Works4
Terminal::Getpass
Read a password from the terminal with echo switched off — one sub, a prompt, and the terminal restored afterwards however it ends.
terminal0.0.11Works1
Terminal::Spinners
Progress spinners and percentage bars for a terminal — ten animations and four bar styles, drawn by backspacing over the previous frame.
terminal1.6.0Works2
Terminal::WCWidth
How many columns a character really takes up on a terminal — two for CJK, none for a combining mark, and a refusal for a control code — so that padded columns survive text that is not ASCII.
terminal0.1.5Works3
Test::META
One test that proves your distribution's META6.json is complete, parseable and honest — before an installer or the ecosystem indexer finds out it is not.
testing0.0.20Works2
Test::Output
Captures what a block writes to STDOUT and STDERR, either handing you the text or asserting on it directly as a test — the missing piece for testing code whose real output is printed, not returned.
testing1.001006Works2
Texas::To::Uni
Rewrites ASCII operator spellings into their Unicode equivalents — by plain substring substitution, inside string literals and all.
source tools0.1.0Divergent6
Text::BorderedBlock
Draw a heavy-ruled box around a block of text, with an optional header and footer, growing to fit the widest line but never below a configurable minimum.
text formatting0.1.0Works3
Text::Caesar
The rotate-by-N alphabet cipher, over the 26 uppercase ASCII letters only — and it is neither length-preserving nor invertible.
ciphers0.2Works5
Text::Calendar
Render month grids as plain text — one month, several side by side, or a whole year — with a transposed layout and the raw week data available.
calendars0.1.6Works5
Text::Center
Centre a value in a field of a given width, padding both sides with a fill string — returning the text untouched rather than truncating when it will not fit.
text formatting0.0.3Works3
Text::Chart
One function draws a vertical bar chart into a string — no axis, no labels, no scaling, and a layout that assumes one grapheme is one column.
text output0.0.3Divergent5
Text::Diff::Sift4
The Sift4 string-distance approximation — one linear pass counting matches inside a sliding offset window — as a cheap stand-in for Levenshtein.
text comparison2.0.1Works3
Text::Homoglyph
A table of Unicode look-alikes for each printable ASCII character, behind one function whose guard checks length instead of membership.
unicode0.0.2Works4
Text::LDIF
An RFC 2849 LDIF parser that returns a nested Hash — or Nil, with no clue which of its several strict rules you broke.
data formats1.0.6Works5
Text::Levenshtein
Classic full-matrix edit distance — and it returns an Array, so every numeric comparison you would naturally write answers a different question.
string distance0.2.4Works4
Text::Levenshtein::Damerau
How many single-character edits turn one string into another — plain Levenshtein, and the Damerau variant that counts a swapped pair as one edit — with a cut-off for when you only care whether it is close.
text0.3.0Works1
Text::Lorem
Lorem-ipsum words, sentences and paragraphs from a 184-slot vocabulary — sampled without replacement, so a long request is truncated.
test data1.0.1Divergent5
Text::Markdown
A Markdown parser with an HTML backend — headings, emphasis, code, quotes and links — written as a grammar, and covering rather less of Markdown than its name suggests.
text1.1.1Works1
Text::MiscUtils
Four small text utilities under one distribution — English plurals and ordinals, terminal-aware wrapping and column widths, and the variation selectors that decide whether a glyph is drawn as emoji.
text0.0.13Works2
Text::Sift4
A linear-time approximation of edit distance — fast, and not a metric: swapping the two arguments can change the answer.
string distance0.0.6Divergent4
Text::Spintax
Parse `{a|b|c}` alternation once, render as many random variants as you like — and any stray brace produces an undefined node, not an error.
text generation0.1Divergent5
Text::T9
Phone-keypad predictive text — given a digit string and a word list, the words that map to exactly that sequence.
text0.1Divergent5
Text::UpsideDown
The "flipped" Unicode imitation — an exact involution over printable ASCII, because the table is merged with its own inverse.
text1.0.0Works4
Text::Utils
A drawer of string chores — thousands separators, whitespace normalising, lists written out in English, comment stripping, substring counts and two kinds of line wrapping — each sub behind its own export tag.
text4.0.2Works2
Text::Wrap
One sub that folds a string to a width — paragraphs kept apart, a prefix per line if you want one, and long words either left whole or cut — for text that is going to a terminal or a plain-text file.
text0.0.5Works1
Time::Duration::Parser
Turn a human-written duration — "2 hours", "1 week 2 days", "1:30" — into a number of seconds, with a month fixed at 30 days and a year at 365.
time0.0.3Works4
Timezones::US
The nine US standard-time zones and the post-2007 DST transition rule — computed from the calendar, not from a database.
time0.0.7Divergent5
TinyFloats
Convert between Raku Nums and the bit patterns of four small floating-point formats — binary16, bfloat16, TensorFloat-32 and E5M2.
numeric0.0.5Divergent4
TinyID
Positional base-N encoding where the alphabet and its order are the secret — and where many distinct strings decode to the same ID.
identifiers1.0.6Works5
Today
One term, `today`, that evaluates to `Date.today` — five lines, and a sharp lesson about what a term is.
time0.0.8Divergent4
Trap
A class that impersonates an output handle well enough for print, say and printf, and keeps what was written instead of sending it anywhere.
testing0.0.5Divergent3
TrigPi
sin(πx), cos(πx) and cis(πx) computed so the values that ought to be exactly 0 and ±1 are — including a negative zero.
numbers1.6.0Divergent4
UK::Sort
Ukrainian dictionary order — and not a thin wrapper around `coll`, because `coll` gets і, ї and й wrong.
localisation0.0.1Works5
Unicode::PRECIS
The PRECIS framework of RFC 8264 — decide whether a string is acceptable as a username or a password, and normalise it for comparison.
unicode0.5.2Partial3
Unicode::UTF8-Parser
Turn a reactive stream of UTF-8 bytes into a stream of characters, holding partial multi-byte sequences across emissions.
encoding0.3Divergent3
UNIX::Privileges
Look a user or group up, drop to it in the correct order, change a path's owner, and chroot — over a small bundled C helper.
system0.1.6Works3
URI
RFC 3986 in a Raku grammar. Take a URI apart into scheme, host, path and query, put a new one together, and get the escaping right without thinking about it.
web0.3.8Works11
URI::Encode
Percent-encoding and decoding per RFC 3986 — with the distinction that matters kept intact, between escaping a whole URL and escaping one value going into it.
web1.0Works3
Util::Bitfield
Pick apart the sub-byte fields of a packed binary word — extract, insert and mask — with bit positions counted from the most significant end, as protocol diagrams draw them.
bit manipulation0.1.0Partial4
UUID
Version-4 UUIDs — 122 random bits in the one format every database, log pipeline and API on earth already accepts.
identifiers1.0.0Works2
UUID::V4
Version-4 UUIDs and a predicate that recognises them — two subs, no state, no configuration, and a flaw in how the random bytes reach the string that is worth knowing before you rely on it.
identifiers1.0.0Works2
wordfinder
Words whose distinct-letter set equals your query's — an anagram-set match, not a "contains", behind a bundled dictionary you cannot reach.
word games0.0.1Works5
X::Intl
Two empty marker roles so internationalization libraries can tag their exceptions with a common type — and one of them does not compose.
exceptions0.1Divergent4
XDG::BaseDirectory
Where a program should keep its config, data, cache and state on a Unix desktop, by the freedesktop.org rules — the environment variables read, the defaults filled in, and the search lists in order.
files0.0.15Works1
XML
Parse an XML document into a tree you can walk, and build one node by node — with one sharp edge to know about before you write any output.
data format0.3.6Works4
XML::Entity::HTML
The full HTML5 named-entity set — 2119 names — behind two subs, with a `*@numeric` parameter that can never do anything.
encoding0.1.2Divergent5
XML::Query
CSS-shaped selectors over an XML::Document — where `.class` is an exact attribute match, so a multi-class element never matches.
xml1.1Divergent5
XML::Writer
Serialise a nested Raku data structure into XML, where a Pair with a Positional value is an element and one without is an attribute.
markup*Works5
YAMLish
Read and write YAML — configuration files as people actually write them, with the type guessing that implies, and one famous trap.
data format0.1.3Works6
Zodiac::Chinese
The sexagenary year — direction, element and animal — from a DateTime, with the year rolling over at midnight on 1 February.
calendars0.0.1Divergent5

308 modules, 1081 examples. Modules are added as they are checked — see the module FAQ for how installing works, and the conformance site for the engine itself.