This page describes the package architecture. For the verified 1.0.5 command
surface, defaults, JSON schemas, platform behavior, and integrity boundaries,
use the CodexMono CLI Reference. npm installation and bare
codexmono only print the guide; font copies require an explicit
codexmono install <target> command.npm Package Architecture
┌─────────────────────────────────────────────────────────────────────────────────┐
│ │
│ @monolex/codexmono │
│ │
│ ┌─────────────────────────────────────────────────────────────────────────┐ │
│ │ │ │
│ │ fonts/ │ │
│ │ ├── ttf/ + woff2/ Core family │ │
│ │ ├── nerd/ttf + nerd/woff2 Nerd family │ │
│ │ ├── hermes/ttf + hermes/woff2 Hermes family │ │
│ │ │ ├── CodexMono.ttf │ └── (same, ~60% smaller) │ │
│ │ │ ├── CodexMono-KR.ttf │ │ │
│ │ │ ├── CodexMono-Traditional.ttf│ │ │
│ │ │ └── CodexMono-EA.ttf │ │ │
│ │ │ │
│ │ bin/cli.js 12-command CLI │ │
│ │ css/codexmono.css @font-face presets │ │
│ │ licenses/ SIL OFL 1.1 │ │
│ │ initiate/ Packaged agent reference │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────────┘
Font Variants
┌─────────────────────────────────────────────────────────────────────────────────┐
│ VARIANT │ SIZE │ CHARACTERS │ USE CASE │
├─────────────────────────────┼─────────────┼──────────────┼──────────────────────┤
│ CodexMono │ 679 KB │ 4,007 │ Latin │
│ CodexMono-KR │ 5.8 MB │ 15,132 │ Korean/Japanese │
│ CodexMono-Traditional │ 17.2 MB │ 33,726 │ Traditional Chinese │
│ CodexMono-EA │ 18.4 MB │ 36,440 │ All CJK │
└─────────────────────────────┴─────────────┴──────────────┴──────────────────────┘
CLI Installation
┌─────────────────────────────────────────────────────────────────────────────────┐
│ │
│ INSTALLATION FLOW │
│ │
│ $ npm install -g @monolex/codexmono │
│ │ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ Download Package│ From npm registry │
│ └────────┬────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ Show Philosophy │ "CodexMono is a commitment to strict monospace" │
│ └────────┬────────┘ │
│ │ │
│ ▼ │
│ │
│ $ codexmono install core │
│ │ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ Detect Platform │ │
│ └────────┬────────┘ │
│ │ │
│ ┌─────┴─────┬───────────┐ │
│ ▼ ▼ ▼ │
│ macOS Linux Windows │
│ ~/Library/ ~/.local/ C:\Windows\ │
│ Fonts/ share/fonts/ Fonts\ │
│ │ │
│ ▼ │
│ ┌─────────────────┐ │
│ │ Copy TTF Files │ All 4 variants │
│ └────────┬────────┘ │
│ │ │
│ ▼ │
│ ┌─────────────────────────────────────────────────────────────────────────┐ │
│ │ Done. 4 fonts installed successfully. │ │
│ └─────────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────────┘
CLI Commands
┌─────────────────────────────┬───────────────────────────────────────────────────┐
│ COMMAND │ DESCRIPTION │
├─────────────────────────────┼───────────────────────────────────────────────────┤
│ codexmono │ Show the command hub; no font write │
│ codexmono install [target] │ Install target (default: core) │
│ codexmono uninstall [target] │ Remove target (default: all) │
│ codexmono list [target] │ Show installation status │
│ codexmono info [target] │ Show package metadata │
│ codexmono verify [target] │ Verify packaged TTF/WOFF2 hashes │
└─────────────────────────────┴───────────────────────────────────────────────────┘
Which Installation Method?
┌─────────────────────────────────────────────────────────────────────────────────┐
│ │
│ DECISION TREE │
│ │
│ ┌─────────────┐ │
│ │ START │ │
│ └──────┬──────┘ │
│ │ │
│ ┌───────────▼───────────┐ │
│ │ Need system-wide │ │
│ │ font installation? │ │
│ └───────────┬───────────┘ │
│ YES │ NO │
│ ┌─────────────────┼─────────────────┐ │
│ │ │ │
│ ┌─────────▼─────────┐ ┌─────────▼─────────┐ │
│ │ One-time install? │ │ Web project? │ │
│ └─────────┬─────────┘ └─────────┬─────────┘ │
│ YES │ NO YES │ NO │
│ │ │ │
│ ┌────┴────┐ ┌────┴────┐ │
│ ▼ ▼ ▼ ▼ │
│ ┌──────────┐ ┌──────────┐ ┌──────────┐ ┌──────────┐ │
│ │ npx │ │ Global │ │ Project │ │ API Only │ │
│ │ │ │ Install │ │ Dep │ │ │ │
│ └──────────┘ └──────────┘ └──────────┘ └──────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────────┘
Method Details
┌─────────────────────────────────────────────────────────────────────────────────┐
│ │
│ ONE-TIME (npx) │
│ ───────────────────────────────────────────── │
│ │
│ $ npx @monolex/codexmono install all │
│ │
│ Downloads the package and explicitly installs all 12 TTF files. │
│ │
├─────────────────────────────────────────────────────────────────────────────────┤
│ │
│ GLOBAL (system-wide CLI) │
│ ───────────────────────────────────────────── │
│ │
│ $ npm install -g @monolex/codexmono │
│ $ codexmono install core │
│ │
│ CLI available system-wide; every font write remains explicit. │
│ │
├─────────────────────────────────────────────────────────────────────────────────┤
│ │
│ PROJECT DEP (web projects) │
│ ───────────────────────────────────────────── │
│ │
│ $ npm install @monolex/codexmono │
│ import '@monolex/codexmono/css/codexmono.css'; │
│ │
│ Fonts bundled with your project. │
│ │
├─────────────────────────────────────────────────────────────────────────────────┤
│ │
│ API ONLY (metadata access) │
│ ───────────────────────────────────────────── │
│ │
│ const codexmono = require('@monolex/codexmono'); │
│ console.log(codexmono.fonts.ea.characters); // 36440 │
│ │
└─────────────────────────────────────────────────────────────────────────────────┘
CSS Presets
┌─────────────────────────────────────────────────────────────────────────────────┐
│ │
│ CSS PRESETS STRUCTURE │
│ │
│ codexmono.css │
│ │ │
│ ├── @FONT-FACE DECLARATIONS │
│ │ ├── CodexMono (Latin core) │
│ │ ├── CodexMono KR (Korean + Japanese) │
│ │ ├── CodexMono Traditional (Traditional Chinese) │
│ │ └── CodexMono EA (Complete CJK) │
│ │ │
│ ├── UTILITY CLASSES │
│ │ ├── .codexmono font-family: 'CodexMono', monospace │
│ │ ├── .codexmono-kr font-family: 'CodexMono KR', monospace │
│ │ ├── .codexmono-traditional font-family: 'CodexMono Traditional' │
│ │ └── .codexmono-ea font-family: 'CodexMono EA', monospace │
│ │ │
│ └── WEIGHT HELPERS (Variable Font) │
│ ├── .codexmono-thin 100 │
│ ├── .codexmono-extralight 200 │
│ ├── .codexmono-light 300 │
│ ├── .codexmono-regular 400 │
│ ├── .codexmono-medium 500 │
│ ├── .codexmono-semibold 600 │
│ ├── .codexmono-bold 700 │
│ └── .codexmono-extrabold 800 │
│ │
└─────────────────────────────────────────────────────────────────────────────────┘
Smart Font Loading
┌─────────────────────────────────────────────────────────────────────────────────┐
│ │
│ ON-DEMAND FONT LOADING │
│ │
│ ┌─────────────────────────────┬────────────────────────────────────────────┐ │
│ │ PAGE CONTENT │ FONTS DOWNLOADED │ │
│ ├─────────────────────────────┼────────────────────────────────────────────┤ │
│ │ English only │ CodexMono.woff2 (250 KB) │ │
│ │ English + Korean │ + CodexMono-KR.woff2 (2.5 MB) │ │
│ │ English + All CJK │ + CodexMono-EA.woff2 (7.6 MB) │ │
│ └─────────────────────────────┴────────────────────────────────────────────┘ │
│ │
│ Browser loads font files ONLY when matching characters appear on page. │
│ │
│ ┌─────────────────────────────────────────────────────────────────────────┐ │
│ │ font-display: swap │ │
│ ├─────────────────────────────────────────────────────────────────────────┤ │
│ │ │ │
│ │ Show fallback font immediately, swap when CodexMono loads. │ │
│ │ Monospace fallback (Courier, Menlo) maintains alignment. │ │
│ │ Content readability > aesthetic perfection. │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────────┘
License: SIL OFL 1.1
┌─────────────────────────────────────────────────────────────────────────────────┐
│ │
│ SIL OPEN FONT LICENSE 1.1 │
│ │
│ ┌─────────────────────────────────────────────────────────────────────────┐ │
│ │ PERMITTED │ │
│ ├─────────────────────────────────────────────────────────────────────────┤ │
│ │ │ │
│ │ USE Any project (commercial, open source, personal) │ │
│ │ COPY Unlimited copies, distribute to team │ │
│ │ EMBED PDFs, apps, websites │ │
│ │ MODIFY Add glyphs, adjust metrics, create subsets │ │
│ │ REDISTRIBUTE Include in software, host on CDN │ │
│ │ SELL (with) Sell software that includes CodexMono │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────────┘ │
│ │
│ ┌─────────────────────────────────────────────────────────────────────────┐ │
│ │ RESTRICTED │ │
│ ├─────────────────────────────────────────────────────────────────────────┤ │
│ │ │ │
│ │ NO STANDALONE SALE Cannot sell CodexMono as a font product │ │
│ │ RESERVED NAMES Cannot use "JetBrains Mono" in derivatives │ │
│ │ LICENSE PRESERVATION Derivatives must remain SIL OFL 1.1 │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────────┘ │
│ │
└─────────────────────────────────────────────────────────────────────────────────┘
The License Chain
┌─────────────────────────────────────────────────────────────────────────────────┐
│ │
│ UNBREAKABLE LICENSE CHAIN │
│ │
│ JetBrains Mono (Original) │
│ │ │
│ │ SIL OFL 1.1 + 600 units │
│ ▼ │
│ CodexMono (Derivative) │
│ │ │
│ │ SIL OFL 1.1 (preserved) + CJK extensions │
│ ▼ │
│ [YourFont] CodexMono (Your Derivative) │
│ │ │
│ │ SIL OFL 1.1 (MUST be preserved) │
│ ▼ │
│ The chain continues forever... │
│ Trust propagates through the chain. │
│ │
│ ─────────────────────────────────────────────────────────────────────────── │
│ │
│ TRUST = WIDTH x NAME x LICENSE │
│ │
│ If any factor is zero, trust is zero. │
│ SIL OFL ensures the license factor is always 1. │
│ │
└─────────────────────────────────────────────────────────────────────────────────┘
Zero Dependencies
┌─────────────────────────────────────────────────────────────────────────────────┐
│ │
│ WHY ZERO EXTERNAL DEPENDENCIES │
│ │
│ The CLI uses ONLY Node.js built-in modules: │
│ │
│ child_process Shell commands │
│ fs File operations │
│ path Path handling │
│ os Platform detection │
│ │
│ ┌─────────────────────────────────────────────────────────────────────────┐ │
│ │ BENEFITS │ │
│ ├─────────────────────────────────────────────────────────────────────────┤ │
│ │ │ │
│ │ No npm install failures from nested dependencies │ │
│ │ No security vulnerabilities from third-party code │ │
│ │ Works on Node.js 12+ (wide compatibility) │ │
│ │ Package size is fonts only │ │
│ │ No node_modules bloat │ │
│ │ │ │
│ └─────────────────────────────────────────────────────────────────────────┘ │
│ │
│ SMPC APPLIED: │
│ │
│ CHAOS: All possible npm features, complex build systems │
│ PART: Only essential: fonts, CLI, CSS, license │
│ MANAGED: Zero dependencies, built-in modules only │
│ SIMPLE: npm install -g @monolex/codexmono │
│ │
└─────────────────────────────────────────────────────────────────────────────────┘
Summary
┌─────────────────────────────────────────────────────────────────────────────────┐
│ │
│ Component Purpose │
│ ───────────────────────────────────────────────────────────────────────────── │
│ fonts/ TTF + WOFF2 files │
│ bin/cli.js System font installer │
│ css/codexmono.css @font-face presets │
│ licenses/ SIL OFL 1.1 texts │
│ │
├─────────────────────────────────────────────────────────────────────────────────┤
│ │
│ Traditional: Find font > Download > Manual install > Configure each app │
│ │
│ CodexMono: npm install -g @monolex/codexmono │
│ codexmono install core │
│ │
└─────────────────────────────────────────────────────────────────────────────────┘