Blog
Blog
A list of articles with technical notes and development insights.
Blog Tags- Everything That Went Wrong Publishing @hsblabs/web-stream-extras to npm
A chronological account of failures when moving from manual publish to GitHub Actions + npm Trusted Publisher. Covers the provenance 422, tag and version ordering, and pre-publish validation.
- Releasing @hsblabs/web-stream-extras
A small TypeScript utility library for working with ReadableStream<Uint8Array> in browsers and Node.js — covering byte conversion helpers, transform streams, and stream encryption via the Web Crypto API.
- Encrypting a Byte Stream in the Browser with Web Crypto
Web Crypto gives you strong primitives but no stream interface. This post shows how to encrypt ReadableStream<Uint8Array> using the encryption subpath of @hsblabs/web-stream-extras — covering file encryption, per-stream key management, and pipeline composition.
- I Got Tired of Rewriting the Same Web Streams Boilerplate
Why I packaged my recurring ReadableStream<Uint8Array> utilities into @hsblabs/web-stream-extras — covering the three patterns I kept rewriting, the ByteTransformStream base, and stream encryption via Web Crypto.
- AWS Cross-Region VPC Peering Failure Log
Got stuck setting up VPC peering between Osaka and Tokyo. Forgot --peer-region, ended up in failed state, couldn't delete it.
- Implementing a Development-Only Live Editor in Astro Projects
How to implement a browser-based editor limited to development mode in Astro. Using Vite middleware and React to make development content management comfortable without affecting production builds at all.
- Mobile App Configuration from a Web Engineer's Perspective: Startup-Time Metadata Retrieval Approach
Organizing challenges in mobile app domain management and versioning from the perspective of web frontend and infrastructure experience. Proposing a startup-time metadata retrieval approach using CloudFront and S3, with comparisons to existing solutions like Firebase Remote Config.
- Why /blog Returns 404 in Astro + bun dev and How to Fix It
A practical troubleshooting flow for /blog 404 under Astro + bun dev, from link checks to route output and delivery path inspection. Includes the directory-name collision fix.
- How to Fix mise Version Pinning Not Working on Codex Cloud
mise install bun succeeds but bun returns command not found on Codex Cloud. Root cause and fix using setup.sh with mise use -g and mise activate.
- Lefthook Setup Procedure: Run Biome Automatically in pre-commit and pre-push
A practical Lefthook setup procedure to run Biome formatting and linting automatically at commit and push time. Covers the full flow from ADR documentation to configuration, installation, and verification.
- Analyze Dependencies Included in Build Artifacts
Binaries built with Go embed metadata about dependencies and build settings.
- Converting Images to AVIF Format with libavif
How to install libavif via Homebrew and convert JPEG/PNG to AVIF format. Supports single conversion and batch processing.
- Running Periodic Scripts with macOS Launchd
How to build Cron-like periodic execution scripts using macOS Launchd. Avoiding environment variable issues with setup including log management.
hsb.horse