Skip to main content

Frontend Performance Metrics That Matter: Core Web Vitals (LCP, INP, CLS)

· 7 min read
Pere Pages
Software Engineer
Three speedometer gauges above a browser window and a small speed meter, in indigo and teal

For anything users load in a browser, "how fast is it?" is really three questions — loading, interactivity, and visual stability — and the frontend has its own metric stack for each, plus the accessibility and client-side reliability signals that live right next to performance. Here's the set a frontend team actually owns, in one place.

The Product Analytics Landscape in 2026: A Developer's Comparison of GA4, PostHog, Mixpanel, Amplitude, Heap, Pendo, Statsig & More

· 18 min read
Pere Pages
Software Engineer
Product analytics tool logos arranged as a comparison grid

Picking a product analytics tool in 2026 means choosing between a dozen mature options that all claim to do the same thing. This is a developer's field guide to how Google Analytics 4 (GA4), PostHog, Mixpanel, Amplitude, Heap, Pendo, Statsig and the rest actually differ — on data model, instrumentation, self-hosting, and price.

How to Test Open Graph Tags Locally Before You Deploy

· 4 min read
Pere Pages
Software Engineer
A social link-preview card being checked on a laptop before publishing, joined by a local tunnel to social platform icons

https://ogp.me/

Testing Open Graph locally is a bit deceptive: your browser can see localhost, but Facebook, LinkedIn, Slack, Discord, X/Twitter, etc. cannot.

The best workflow is:

1. Check the HTML locally
2. Expose localhost with ngrok
3. Test the public URL in real social preview/debugger tools

Chrome plugins are useful for fast feedback, but the final validation should happen through a public HTTPS URL.

Building a Personal CLI Tool Without Global Node, npm, or TypeScript

· 4 min read
Pere Pages
Software Engineer
A handcrafted command-line tool assembled from small parts on a workbench beside a terminal emitting a custom command

I wanted a tiny CLI tool for a very specific workflow: take an image and expand its canvas to 1200x630, centered, without resizing the image itself. Useful for Open Graph images.

But the interesting part was not the image logic. The interesting part was this constraint:

I do not want global Node, npm, pnpm, TypeScript, or tsx.

That changes the setup.