Filter by tag:
React
TypeScript/JavaScript
OSHA 30 Preparation HelperDeployed at
Interactive study tool for OSHA 30 certification preparation with a focus on active learning. Features a quiz-based approach that challenges users to select correct answers rather than passively reading them. Includes nearly 1,500 searchable questions with keyword and full-text search powered by flexsearch. Supports alternative answer phrasings and offers randomized quick-test mode for efficient review sessions.
React
TypeScript/JavaScript
PixiJS
Parcheesi: The Board GameDeployed at
Local multiplayer board game designed for shared-screen play on a single device. UI elements are oriented toward each player's edge, enabling face-to-face gameplay. Built with PixiJS for smooth 2D rendering and animations.
Cloudflare Workers
TypeScript/JavaScript
QR Code Compression Worker
Cloudflare Worker that generates QR codes with an optimized API for resource-constrained IoT devices. Packs 3×3 module grids into 9-bit integers, reducing CPU and memory overhead on low-end hardware:
1 +-----+-----+-----+-----+ +-----+-----+-----+-----+ 2 |0 0 0|1 1 0|1 0 1|0 0 1| | | | | | 3 |1 1 0|1 0 1|1 0 1|0 1 1| | 24 | 235 | 365 | 308 | 4 |0 0 0|1 1 0|1 0 1|0 0 1| | | | | | 5 +-----+-----+-----+-----+ -> +-----+-----+-----+-----+ 6 |0 0 0|1 0 0|1 1 1|0 0 1| | | | | | 7 |0 0 0|1 0 1|1 1 1|0 0 1| | 0 | 233 | 511 | 292 | 8 |0 0 0|1 1 0|1 1 1|0 0 1| | | | | | 9 +-----+-----+-----+-----+ +-----+-----+-----+-----+
Bits being layed out this way:
1 +------------+ 2 |1 2 4 | 1<<0 1<<1 1<<2 3 |8 16 32 | 1<<3 1<<4 1<<5 4 |64 128 256 | 1<<6 1<<7 1<<8 5 +------------+
TypeScript/JavaScript
npm
Termi-linkPublished to
Drop-in replacement for the popular terminal-link package, providing clickable hyperlinks in supported terminals.

Why Termi-link?

The original terminal-link inserts invisible Zero Width Space characters (U+200B) around links in unsupported terminals, causing broken URLs and 404 errors on Windows. Termi-link eliminates this issue while maintaining full API compatibility.
TypeScript/JavaScript
npmeslint
eslint-plugin-no-in-arrayPublished to
Type-aware ESLint rule that detects misuse of the in operator with arrays in TypeScript.
The in operator checks for property keys, not values — causing subtle bugs:
typescript
1"a" in ["a", "b", "c"]; // false! indices are "0", "1", "2"
Use .includes() instead. This plugin catches arrays, tuples, readonly arrays, and inline literals.
TypeScript/JavaScript
npm
Precise ColorsPublished to
High-precision color space conversions for TypeScript/JavaScript. Supports 12 color models: RGB, HSL, HSV, HWB, HCG, CMYK, Lab (D65/D50), LCH, XYZ, Apple 16-bit RGB, and Grayscale.
Key highlights:
  • Precision-first: Chain multiple conversions with rounding only at the final step
  • Type-safe Lab: Branded types prevent mixing D65/D50 illuminants at compile time
  • CIE 15.3 compliant: Uses exact rational constants from the standard
  • Tested thoroughly: Round-trip across all 16.7M RGB colors with Lab error < 0.001
ts
1import { rgb2lab, lab2lch, lch2css } from "precise-colors"; 2 3const lab = rgb2lab({ r: 100, g: 150, b: 255 }); 4const lch = lab2lch(lab); 5console.log(lch2css(lch)); // "lch(62.55% 62.44 279.76)"
TypeScript/JavaScript
Dictionary Explorer
WordNet XML dictionary parser with comprehensive Zod schema validation. Extracts and prepares lexical data for web application consumption.

Zod Test Coverage

1📂 LexicalResource [-] (basic test for a parent) 2 📂 Lexicon [-] (basic test for a parent) 3 📂 LexicalEntry [x] 4 📄 Form [x] 5 📂 Lemma [x] 6 📄 Pronunciation [x] 7 📂 Sense [x] 8 📄 SenseRelation [x] 9 📂 Synset [x] 10 📄 Definition [x] 11 📄 Example [x] 12 📄 ILIDefinition [x] 13 📄 SynsetRelation [x] 14 📄 SyntacticBehaviour [x]
av
Anton VeretennikovPersonal Landing Page