I build small, sharp, dependency-free libraries β the kind of thing you reach for when you don't want to pull in a 200-package transitive tree to do one obvious job.
This profile is the home of a 60-night portfolio sprint: two new open-source projects every night, each shipped with rigorous tests, full type coverage, and a real README. So far: 60 / 112 projects, all built to the same bar.
Every repository on this profile satisfies the same checklist:
- TDD-built β failing tests first, then minimum code to pass, then refactor.
- 100% line coverage as a default, 100% branch coverage for everything since Night 27. (No "this branch is unreachable" excuses β if it's truly unreachable, it gets deleted.)
mypy --strictclean β every public symbol typed, noAnyleaks,py.typedmarker shipped.- Functions β€ 30 lines, nesting β€ 3 levels β verified by an AST walk before each push.
- Zero runtime dependencies unless absolutely required. Pure Python (or pure TypeScript) wherever possible.
- MIT licensed. README with install / quick start / API reference / running tests for every repo.
bencode β Strict, dependency-free BitTorrent-style bencode encoder/decoder. Round-trips are exact: rejects every non-canonical encoding (leading zeros, i-0e, dict keys out of order or duplicated, trailing data).
morse β International Morse Code encoder/decoder with prosigns and Farnsworth timing. Includes the classical PARIS-derived formula for inter-letter / inter-word gap durations.
tomlmini β Zero-dependency TOML v1.0 common-subset parser. Handles values, tables, AoTs, inline tables, datetimes; rejects ambiguous dotted-key edge cases.
iniparse β Zero-dep INI / config parser with section inheritance and ${...} interpolation.
querystring β Stable encoder-configurable form-encoding with parse / serialize / merge / pick / omit.
urltemplate β RFC 6570 URI Template expansion (levels 1-3), zero deps.
csvquote β RFC-4180 CSV field quoting/unquoting + single-line split_row, strict/lenient.
csvtable β Pretty-print CSV/TSV (or any rows) as aligned ASCII / Unicode / Markdown / plain tables β column-width inference, per-column align, 3-mode truncation, wide-char width.
mdtable β Render GFM Markdown tables from headers + rows with strict pipe escaping and per-column alignment.
dotenv-mini β Strict, predictable .env reader/writer; no $VAR interpolation, full quoting/escape round-trip.
hexdump β Format bytes as canonical hexdump output; round-trip parse back to bytes.
hexstr β Pack/unpack ints & bytes into hex strings with prefixes, widths, sign modes, byte order.
humanint β Parse and format human-readable integers (1.5k, 2M, 3.2B).
numparse β Forgiving parser for loose numeric strings ($1,234.56, 1.5k, 2 MiB, 1h30m, 12.5%).
numfmt β Locale-free number formatter (currency, percent, scientific).
durfmt β Format timedeltas and numeric seconds as human durations (1h 30m 12s, 01:30:12), zero deps.
timeago β Human-readable relative time formatting (3 hours ago, in 2 days).
chronoparse β Natural-language date/time parser, zero deps.
crontab-lite β Parse and evaluate standard cron expressions, zero deps.
unitcalc β Simple unit conversion library (length, mass, temperature, time).
semverlite β Strict semver parsing and comparison.
rangeset β Manage non-overlapping integer ranges with set operations.
stringcase β Convert strings between snake / camel / pascal / kebab / constant / dot / title / path cases.
slugify-x β Unicode-aware URL slug generator.
levendist β String distance metrics: Levenshtein, Damerau-Levenshtein, Hamming, Jaro, Jaro-Winkler, LCS.
wordwrap β ANSI-aware paragraph wrap / fill / shorten with hanging indents and wide-character support.
expand β GNU-style tab-to-space expansion + unexpand, custom tab stops, leading-only / all modes.
globmatch β fnmatch-compatible matcher with extglob, POSIX classes, ** globstar, AST + backtracking interpreter.
pathmask β Glob-style path matcher with negation and brace expansion.
shell-quote β Zero-dependency POSIX shell quoting, splitting, and safety checks.
markdownlint β Validate Markdown against common style rules.
pigeon β POSIX gettext-style Plural-Forms parser/evaluator with built-in locale tables.
cidrcalc β IPv4 CIDR arithmetic β parse, network/broadcast, membership, subnets, aggregate. No ipaddress dep.
uuidgen β UUID v4/v5 batch generator with base62 short form, strict parse, named namespace tables.
base62-ts β Base62 encoder/decoder for non-negative integers and byte arrays, custom alphabets. (TypeScript)
bitvec β Compact bit vector with set operations, slicing, and efficient storage.
trie β Trie (prefix tree) with fast prefix search and autocomplete.
ringbuf β Fixed-capacity ring buffer with O(1) append, overwrite-oldest, indexable, reversible.
flatdict β Flatten / unflatten nested dicts with dotted keys.
strtable β Format tabular data as aligned ASCII/Unicode tables.
tinycache β Thread-safe LRU + TTL cache decorator.
retryback β Tiny retry decorator with exponential backoff and jitter.
diffstat β Compute unified diff statistics (additions, deletions, changes).
envdiff β Compare two .env files and report drift.
jsonpatch-lite β Minimal RFC-6902 JSON patch implementation.
colortool β Convert and manipulate colors across HEX / RGB / HSL.
tsparser β Tiny TypeScript tokenizer/parser for a subset of expressions.
parseopts-ts β Zero-dep argv parser: typed options, aliases, negatable booleans, arrays, choices, -- terminator, stop-at-positional.
Pick any project. The README starts with one sentence telling you what it does. The next paragraph tells you what it doesn't do β the non-goals matter as much as the surface area. Then quick start, then API reference, then running tests.
Tests are not an afterthought. Every public function has a happy-path test, an edge-case test, and an error test. Coverage is reported in the README. mypy --strict is part of the test gate.
If you're a recruiter or a maintainer evaluating my work: open tomlmini, globmatch, or csvtable for a sense of how I handle real-format edge cases. Open bencode for an example of strict canonical-format validation. Open levendist for tight numeric work.
Nights 31β60 of the sprint will fill out the remaining 60 projects: argv-strict (a stricter parseopts), emitter-ts (typed event emitter), bencode's TS sibling, phone-number normalization, color-difference metrics (CIE76/94/2000), a few more parsers, and a flagship β microbpe, a from-scratch tokenizer trainer with byte-pair-encoding semantics.
Build log lives in forge-builds/ (private). State files (SOUL.md, MEMORY.md, BUILD-LOG.md, CHRONICLE.md) track every commit night-by-night.
Built nightly. Tested ruthlessly. MIT licensed.