Writing
Articles from 2026
Reviewed English translations of articles originally published in Japanese on Zenn and note.
August 2026
- From Zenn
Bringing iOS 26 and Material Design 3 to Ionic: Both Themes Reach v9
The iOS 26 and Material Design 3 themes for Ionic now align with Ionic 9, adding two-line list items, supporting-text layouts, iOS outline fields, visual regression testing, and a smoother migration path.
- From Zenn
A Material Design 3 Theme for Ionic Has Grown into Something Really Good
@rdlabo/ionic-theme-md3 brings Material Design 3 to Ionic while preserving its components and markup, with dark mode, transitions, incremental adoption, and iOS 26 theme compatibility.
- From Zenn
Ionic 9 Is Here! Web Standardization Takes a Big Step Forward — Five Major Changes
Ionic Framework 9 highlights five changes that matter in day-to-day app development: rich Select options, Font Icons in ion-icon, ion-img deprecation, cleaner form controls, and more accessible sheet modal handles.
- From Zenn
Capacitor App Release Best Practices: Split Live Update and Store Submission in CI
Wire Capawesome Live Update, Cloud Build, Cloud Deploy, and GitHub Actions so a version tag alone routes bug fixes over-the-air and feature or native changes through store submission.
- From note
Live Updates for Mobile Apps: Overcoming the Next Bottleneck After AI-Accelerated Development
AI can make implementation dramatically faster, but mobile delivery still stalls at store review. Live Updates can shorten that last mile when the change, policy, and native runtime all allow it.
- From Zenn
The Implementation Load Was Too Heavy—So I Shelved It. What I Learned Shipping That Feature with AI
I shipped offline sync for a business app after shelving it for years. AI expanded what developer knowledge could reach—not replace it—and guardrails made a release I could not fully trace line by line still controllable.
- From Zenn
Why You Should Write Custom ESLint Rules — Generic Rules Won't Tame AI Coding
When AI writes your code, generic ESLint rules are not enough. Custom rules turn repeated review comments into CI guardrails that enforce your project's architecture and error-handling style.
- From Zenn
I Was Doing Rich Programming — How Implementation Changes on Cloudflare Workers
Moving NestJS on EC2 to Hono on Cloudflare Workers made hidden costs visible: bundle size, 128 MB memory, subrequests, CPU time, Durable Object duration, and KV operations.
- From Zenn
Workers KV vs Cache API — Where Each Belongs
After moving from ElastiCache to Cloudflare, per-key KV billing surfaced waste. Split short-lived colo-local responses into Cache API and cross-colo artifacts into KV.
- From Zenn
Keeping WebSockets Without Keeping Cloudflare Workers Awake — Durable Objects Hibernation
WebSocket plus Durable Objects worked, but idle connections kept the object awake. Hibernation keeps connections while sleeping the DO — with auth, client resync, workerd tests, and ops checks.
- From Zenn
SSE Is Simpler — But I Still Chose WebSocket on Cloudflare Workers
Server-sent events looked easier for one-way invalidate notifications. On Workers with Durable Objects, idle SSE kept the object awake — WebSocket Hibernation was the way out.
- From Zenn
Migrating NestJS DTOs to Hono + Zod — Reproducing Value Coercion in Schemas and Helpers
Copying types into Zod is not enough when moving from NestJS. class-transformer @Transform behavior for numbers, defaults, and empty strings needs field-by-field Zod helpers.
- From Zenn
Cron N+1 Surfaced on Cloudflare Workers — Splitting Full Runs into a Queue
A Cron job that listed users once then called an external API per user hit subrequest limits on Workers. Even after higher limits, bounded Queue consumers beat one heroic invocation.
- From Zenn
Building a DI Container on Every Request Was Slow in Hono on Cloudflare Workers
Split Hono app, secrets, and DB connections across isolate and invocation scopes so Workers reuse what is safe to reuse without mixing request state.
- From Zenn
I Packaged a Hono Performance Logging Layer to Measure and Improve Cloudflare Workers Speed
Use perfLog middleware with Workers Logs and Analytics Engine to find slow routes by p50/p95, then drill into Workers Tracing for a single request.
- From Zenn
Create a mysql2 Connection on Every Request Even With Hyperdrive—Why Not to Put It in Global Scope on Cloudflare Workers
Separate the Worker-side Hyperdrive client from Hyperdrive's origin connection pool, and manage mysql2 per invocation without calling connection.end().
- From Zenn
Dates Shifted by 9 Hours After Moving to Cloudflare Workers—Aligning DB Connections and Business Time to JST
Fix implicit local timezone drift with mysql2 timezone '+09:00', JST business-time helpers, ESLint guards, and real MySQL wire tests.
- From Zenn
Firebase Admin Auth Worked on Cloudflare Workers—Why I Still Verify ID Tokens With jose
Compare firebase-admin, @hono/firebase-auth, and jose on Workers; keep a small verifier aligned with Firebase's official JWT checks.
- From Zenn
Testing AWS SDK v3 on Cloudflare Workers—Why I Call Secrets Manager and STS With fetch and SigV4
AWS SDK v3 can reach AWS from Workers but lacks a credential chain; use aws4fetch for two operations with explicit Workers Secrets.
- From Zenn
A Hack to Pass AWS CLI Credentials to wrangler—AWS_PROFILE Alone Does Not Reach Cloudflare Workers
Resolve short-lived credentials from AWS CLI at wrangler dev startup and inject them as Worker bindings without copying keys into .dev.vars.
- From Zenn
If EC2 Is a Rented Office and Lambda Is a Meeting Room, Cloudflare Workers Is a Workbench
A metaphor for the Workers execution model: why server code broke after moving NestJS to Hono + Workers, and how to decide where state and work live and how long they last.
July 2026
- From Zenn
Migrating Ionic + Angular Unit Tests from Karma/Jasmine to Vitest (jsdom)
Move Ionic + Angular unit tests to Angular's official @angular/build:unit-test builder with Vitest and jsdom—setup steps, Ionic-specific pitfalls, and CI lockfile traps.
- From Zenn
Five Production Pitfalls When Moving NestJS Fully to SWC for Speed
NestJS build times drop sharply with SWC, but test-green does not mean production-safe—five traps from a full test/serve/build SWC rollout with fixes and rationale.
- From Zenn
Configuration Recipes for Running NestJS on AWS Elastic Beanstalk in a Monorepo
Copy-paste Elastic Beanstalk setup for a monorepo NestJS API—Procfile, ebextensions, nginx, prebuild hooks, ebignore, and environment layout with rationale for each file.
April 2026
February 2026
- From Zenn
[Talk Notes] Expand Quality Coverage Quantitatively and Mechanically with Custom ESLint
Talk notes on why custom ESLint guardrails beat review-only quality at scale—with AI on the team—and how to build project-specific rules quickly.
- From Zenn
Signal Forms in Ionic Angular: Fastest Path to Production?
How I migrated Ionic + Angular forms to experimental Signal Forms—basic patterns, undefined/null constraints, validation schema, and Ionic-specific notes.