WORK, WRITING, STUFF

Projects.

Some things I made

Cloudfront viewer info

Various viewer request info generated at edge by this website’s CDN. While this overview page is a static route and is composed of several other page.tsx components, via @slots, the viewer request feature uses the Next.js dynamic headers()  API so it has to live on its own dedicated route. (See Next.js parallel routes docs).

→ Go to viewer info

Go in browser

This widget executes a WASM program, built from Go. The program itself interprets arbitrary JavaScript text input, and evaluates it as Go, using Yaegi.

Output

    CloudFlare turnstile

    A playground to familiarize myself with CloudFlare’s turnstile service. Again, this overview route is static, and the @turnstileslot/page component is an async server component. While parts of it can be statically rendered, it uses the Next.js dynamic cookies() API to power both the "Client" and "Server" results. You can still view the playground below,you'll need to go to the dedicated route for a full working example.

    → Go to working turnstile playground

    Turnstile Playground#

    SiteKeyDescriptionVisibilityDemo
    1x00000000000000000000AAAlways passesvisible
    2x00000000000000000000ABAlways blocksvisible
    1x00000000000000000000BBAlways passesinvisible
    2x00000000000000000000BBAlways blocksinvisible
    3x00000000000000000000FFForces an interactive challengevisible

    https://developers.cloudflare.com/turnstile/troubleshooting/client-side-errors/error-codes/

    https://developers.cloudflare.com/turnstile/get-started/client-side-rendering/#configurations

    Logs viewer

    Pulling logs from AWS CloudWatch logs and displaying them in a reasonably pretty format.

    Function URL Latency
    Latency in milliseconds
    Lambda
    Invocations
    Fetched at:
    7:00:00 AM
    CloudFront
    Requests
    Fetched at:
    7:00:00 AM
    Log Stream NameTimestampMessageIngestion TimeEvent ID
    2025/11/14/web-production-MyWebServerUseast1Function-tohtrofa[$LATEST]8e8895f014ca430fbf64307c517053d31763121909626INIT_START Runtime Version: nodejs:22.v59 Runtime Version ARN: arn:aws:lambda:us-east-1::runtime:9ff8926a0b8f846a2bd170efff02668e0f0f00b647d56d4fdc31c22b5cef37a8 176312191006839318932460516162764675686479369127199818860214401368064
    2025/11/14/web-production-MyWebServerUseast1Function-tohtrofa[$LATEST]8e8895f014ca430fbf64307c517053d31763121909757START RequestId: 47951005-d803-492b-adc0-5b3b3d588cb6 Version: $LATEST 176312191006839318932463437560385683198110910306293535795571684802561
    2025/11/14/web-production-MyWebServerUseast1Function-tohtrofa[$LATEST]8e8895f014ca430fbf64307c517053d317631219116532025-11-14T12:05:11.653Z 47951005-d803-492b-adc0-5b3b3d588cb6 WARN Skipping CRC64NVME checksum validation: Please check whether you have installed the "@aws-sdk/crc64-nvme-crt" package explicitly. You must also register the package by calling [require("@aws-sdk/crc64-nvme-crt");] or an ESM equivalent such as [import "@aws-sdk/crc64-nvme-crt";]. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt 176312192067139318932505719773282097259600080102618989255310958133248
    2025/11/14/web-production-MyWebServerUseast1Function-tohtrofa[$LATEST]8e8895f014ca430fbf64307c517053d31763121911826END RequestId: 47951005-d803-492b-adc0-5b3b3d588cb6 176312192067139318932509577802201443057403565781880157421851492745217
    2025/11/14/web-production-MyWebServerUseast1Function-tohtrofa[$LATEST]8e8895f014ca430fbf64307c517053d31763121911826REPORT RequestId: 47951005-d803-492b-adc0-5b3b3d588cb6 Duration: 2068.50 ms Billed Duration: 2196 ms Memory Size: 1024 MB Max Memory Used: 160 MB Init Duration: 127.38 ms 176312192067139318932509577802201443057403565781880157421851492745218
    2025/11/14/web-production-MyWebServerUseast1Function-tohtrofa[$LATEST]d0bd88875e0543f4a6a868880c1811e71763122007375INIT_START Runtime Version: nodejs:22.v59 Runtime Version ARN: arn:aws:lambda:us-east-1::runtime:9ff8926a0b8f846a2bd170efff02668e0f0f00b647d56d4fdc31c22b5cef37a8 176312200951039318934640391705175845568061562255400810438509843447808
    2025/11/14/web-production-MyWebServerUseast1Function-tohtrofa[$LATEST]d0bd88875e0543f4a6a868880c1811e71763122007503START RequestId: 7bc5ab46-2347-4cb0-a908-78a0091202ba Version: $LATEST 176312200951039318934643246200561257487823678827339709428782608941057
    2025/11/14/web-production-MyWebServerUseast1Function-tohtrofa[$LATEST]d0bd88875e0543f4a6a868880c1811e717631220093172025-11-14T12:06:49.317Z 7bc5ab46-2347-4cb0-a908-78a0091202ba WARN Skipping CRC64NVME checksum validation: Please check whether you have installed the "@aws-sdk/crc64-nvme-crt" package explicitly. You must also register the package by calling [require("@aws-sdk/crc64-nvme-crt");] or an ESM equivalent such as [import "@aws-sdk/crc64-nvme-crt";]. For more information please go to https://github.com/aws/aws-sdk-js-v3#functionality-requiring-aws-common-runtime-crt 176312200951039318934683699752351392038202424620286293556554457415682
    2025/11/14/web-production-MyWebServerUseast1Function-tohtrofa[$LATEST]d0bd88875e0543f4a6a868880c1811e71763122009394END RequestId: 7bc5ab46-2347-4cb0-a908-78a0091202ba 176312200951039318934685416909731678896184322870593287480390417907715
    2025/11/14/web-production-MyWebServerUseast1Function-tohtrofa[$LATEST]d0bd88875e0543f4a6a868880c1811e71763122009394REPORT RequestId: 7bc5ab46-2347-4cb0-a908-78a0091202ba Duration: 1889.62 ms Billed Duration: 2016 ms Memory Size: 1024 MB Max Memory Used: 147 MB Init Duration: 125.46 ms 176312200951039318934685416909731678896184322870593287480390417907716
    668 ms ago

    nextjs-components

    React components that I transcribed from Vercel’s Design System, years ago. — See the code on GitHub

    OpenGraph image for the nextjs-components GitHub repository