Blog

I like to share what I learn. I always try to be concise and give practical examples.

  • Radial Gradient Generator

    Create stunning designs with the free Radial Gradient Generator. This user-friendly web tool lets you customize multiple shades, colors, and positions for beautiful radial gradients. Perfect for placeholders or design embellishments, easily copy and paste your gradients into your projects.

  • Optimize Three.js: 4 Key Techniques

    Practical tips for improving performance when working with Three.js scenes in real-world projects.

  • OAuth popup ~ Practical Guide

    Enhance your GitHub OAuth implementation by using a popup approach for authentication in single-page applications (SPAs). This guide walks you through the process of spawning a popup for user authentication and securely handling the access token.

  • GitHub App and OAuth ~ Disjointed flow

    Discover how to integrate GitHub App functionality into an existing OAuth-based authentication system. This guide explains how to authenticate as a GitHub App using JWT, retrieve installation IDs, and access repositories associated with the app.

  • GitHub App and OAuth ~ Practical Kick-Starter

    Learn how to build an interface that allows GitHub-authenticated users to view which repositories have a specific GitHub App installed. This guide covers creating a GitHub App, implementing OAuth authentication, and querying the GitHub REST API for installations and repositories.

  • How to Use a Reverse Trie for Fast Disposable Email Domain Detection

    Learn how to use a reverse Trie to efficiently detect disposable email domains. Optimize your domain lookups with a scalable, memory-efficient solution tailored for fast and precise results.

  • CORS, Preflight request and OPTIONS Method

    This post is intended to be a light reading with the purpose to give a minimum of context and instill some curiosity towards a topic often considered opaque - CORS are a simple HTTP-header mechanism that every web developer can easily understand.

  • Built-in-like Range in JavaScript

    Make it possible to generate any range of integers with built-in-like syntax.

  • Penetration and Security in JavaScript

    Are you sure you are ensuring your code to be used as intended? Are you preventing it from beeing used in a malicious way? If what comes your way is putting guards in your functions, this post will open up a world for you. Using checks is not enough.

  • Headers for large files

    HTTP headers Content-Length, Content-Encoding, and Transfer-Encoding impact the transmission of large files in web applications. With a practical Node.js server example, learn about header combinations and the importance of the Content-Length header and gzip compression for optimizing web performance.

  • Throttling Explained: A Guide to Managing API Request Limits

    Learn how to implement a simple and effective throttling system in TypeScript to protect your APIs from overload. This guide covers rate-limiting strategies, IP tracking, and periodic cleanup to manage stale records and optimize performance.

  • Cache-Control max-age, stale-while-revalidate

    Until now, thanks to Last-Modified/If-Modified-Since or ETag/If-None-Match we mainly saved on bandwidth. However, the server always had to process each request.

  • ETag/If-None-Match

    we explored the usefulness of the Last-Modified Response Header and If-Modified-Since Request Header. They work really well when dealing with an endpoint returning a file. What about data retrieved from a database or assembled from different sources?

  • Last-Modified / If-Modified-Since

    Less load on the server and less bandwidth usage for the same result? Where should I sign up? Nowhere, you just need to know the right headers.