Fernando Muñoz · , Frontend Tech Lead · Madrid

Disk drive Insert a disk to read it

Projects

012 Objects

  1. Fernando Muñoz

    Frontend Tech Lead · Madrid

    Memoirs of a coder who writes

    I am Nando Muñoz, and for more than ten years I have been building products for big brands as a frontend tech lead. I came to the craft before AI did, and I have built frontend teams on Adobe Experience Manager and Salesforce Commerce Cloud.

    I read, I underline and I write. I published a book of poems, Leyendo Claroscuros, and since then the word has mostly ended up in two places: poetry and the Cádiz Carnival, where I analyse popurrís verse by verse, with a calm that doesn't fit on social media.

    For years I have been writing about both crafts and building things outside of work

  2. LUZ

    Design system · 2024

    “Enhance native HTML instead of replacing it.”

    LUZ (Light, Usable & Zero-dependency) is a design system in HTML, CSS and ES modules, with no runtime dependencies. The HTML you write comes out styled with no class, and classes only add what HTML cannot say.

    You adopt it in independent layers: just the tokens, the tokens and the components, or the catalog on top, with search, cookie consent, a language switch and patterns for a landing page, a blog or documentation. A project that already has a design can load it inside one marked region and migrate page by page.

    It brings components from buttons, forms and tables to tabs, modal dialogs, alerts and a video, audio and MIDI player. Each one has a page in the documentation with a live example, the markup to copy, and when to use it and when not to.

    It aims for WCAG 2.2 level AA in its three colour modes, light, dark and high contrast: it works with a keyboard, focus is always visible and every page works without JavaScript. Automated checks run on every change, and the accessibility statement also says what has not been tested yet.

    It is made for people while staying plain enough for an AI agent to write it correctly: the site publishes the closed list of classes, and luz-check reads a project's HTML and CSS offline and says which classes, elements, load order or colours are wrong.

    Every change starts with a failing test, and every file has a size ceiling that nobody raises to make it pass. The colour palette is its own, and everything, fonts included, is under the MIT licence, with no registration and no telemetry.

    Technologies
    JavaScript · HTML · CSS
    Status
    Online
    Date
    2024
  3. IKAY

    Browser fingerprint · 2026

    “Thirty-three data points, zero permissions.”

    IKAY reads 33 pieces of data that any website gets from your browser without asking for a single permission, and shows them as the file a website keeps on you.

    The data runs from the city your IP gives away and the time zone, which compared with that IP's hints at a VPN, to memory, graphics card, battery, installed typefaces and incognito mode. It also follows your mouse, clicks and keys live, without storing anything.

    Each one comes as a sentence, marked protected or not protected, with what it means for you and the technical detail folded away for the curious. At the end it computes “your ID”, a fingerprint that survives cookies and incognito mode, without storing or sending anything.

    The page looks like a dossier: paper and ink, numbered chapters and entries, and a single alarm red used like a highlighter. Headings are set in Fraunces, reading text in Inter Tight and every value found in Fira Code.

    It is in Spanish, English and Arabic, which reads right to left with no special cases. It has automatic, light, dark and high-contrast looks, with text at 7:1 or more in the last one, works with a keyboard, and no status relies on colour alone.

    It is the modern version of the original IKAY, from 2020, which needed a build and had 16 cards: HTML, CSS and JavaScript on the LUZ tokens, no bundler and nothing to install. The tokens and typefaces are served from the repository itself, with no CDN, and there are no cookies and no analytics.

    Technologies
    JavaScript · CSS · HTML · LUZ
    Status
    Online
    Date
    2026
  4. Chrome Local AI

    AI in the browser · 2025

    “Artificial intelligence that never leaves your computer.”

    Demos of the AI APIs built into Chrome with Gemini Nano. Everything runs on your device: there is no server and, once the model is downloaded, no connection is needed either.

    There is a playground with streamed answers, a chat with several sessions you can branch, JSON output that follows a schema, recipes to classify, extract or moderate text, a synonym finder that explains the nuances, and a toolkit to summarise, translate and rewrite the same text.

    Every demo starts with a step-by-step guide; the site is bilingual and built with Astro, TypeScript and LUZ.

    Technologies
    TypeScript · Astro · Chrome AI · LUZ
    Status
    Online
    Date
    2025
  5. ¿Quién canta hoy?

    Cádiz Carnival · 2023

    “Which groups sing today, and in what order.”

    It answers the question everyone asks during the Cádiz Carnival: which group is on stage at the COAC right now, and when will mine be on. The contest at the Gran Teatro Falla lasts weeks, with one session a night and more than ten groups in each, and the official listing is a long table with no times.

    This site turns it into a page for your phone that tells you which session is tonight, roughly when each group goes on, which one is live and how long until the next.

    Each group's time is worked out from the running order, adding up the length of the performance and the set-up; they are estimates, not the official schedule. Every time is Cádiz time wherever you are, and the night's session still counts as that day's until the early morning.

    Each group shows its category, coro, comparsa, chirigota or cuarteto, its author and its town. A search by author takes you to the group inside its session, and there is a link to the live broadcast on YouTube and another that looks up what the group performed the year before.

    When the site is built, the real content of the sessions is written into the HTML, with its structured data, for search engines and readers without JavaScript. It has light, dark and high-contrast modes, and the last two meet WCAG level AA.

    No accounts, no cookies and no server: React and TypeScript on a LUZ theme of its own, with the date logic kept apart from the components and tested, also against a simulated clock. Moving to a new round means adding the JSON copied from the official listing and editing a single file; the dates come from the JSON itself.

    Technologies
    TypeScript · React · Vite · LUZ
    Status
    Online
    Date
    2023
  6. Ares API

    Music archive · 2026

    “A whole body of work in JSON files.”

    A static, zero-dependency API with the complete discography and works of Antonio Martínez Ares, the comparsa writer of the Cádiz Carnival. It serves the compositions, the lyrics and their historical context as JSON files hosted on GitHub Pages, with no database, no server and no build step.

    It includes a light index for search autocomplete without downloading all the data, the data split by era, and open CORS so any website can use it. It loads in under a second on a normal network and is free software under the MIT licence.

    Technologies
    JavaScript · HTML · CSS · JSON
    Status
    Online
    Date
    2026
  7. Toolbar AEM

    Chrome extension · 2025

    “Jump between consoles without retyping URLs.”

    A Chrome extension that adds a floating toolbar to Adobe Experience Manager pages to jump between the Editor, the published view, Sites and CRXDE without retyping URLs, keeping the content path.

    It reopens the same page on another environment (local, dev, QA, stage), gives each one its own coloured favicon so you never mistake Stage for Local, and keeps bookmarks to the paths you use most.

    It works with AEM as a Cloud Service, AMS, on-premise and the local SDK, and settings are shared with the team as a JSON file. Plain JavaScript, Manifest V3, no build step and no dependencies.

    Technologies
    JavaScript · CSS · HTML · Chrome Extension
    Status
    Repository
    Date
    2025
  8. Acme Studio

    Accessibility · 2026

    “Broken on purpose, so you can learn to fix it.”

    The website of a made-up studio, Acme Studio, that looks clean but is broken on purpose so you can practise accessibility audits.

    It has a skip link pointing to the wrong target, images without alternative text, an icon-only button with no name, a tampered tab order, headings that skip levels, a div that looks like a button but ignores the keyboard, and a table with no headers. The contact form adds labels that do not match their fields and fields with only a placeholder.

    Every error is commented in the code, so you can check what you found.

    Technologies
    HTML
    Status
    Online
    Date
    2026
  9. Libros del mundo

    Library · 2024

    “One book per country, published since 2010.”

    A literary journey across the continents: a list of books chosen by a simple rule, published from 2010 on and written by authors from the country they stand for. The idea is to look at what is being written and read today in each place, told from within, with the voices and themes of the 21st century.

    It is an open, collaborative repository: anyone can suggest a book with a pull request and a short note on why they chose it, as long as it can be found in libraries or online.

    Technologies
    Markdown
    Status
    Repository
    Date
    2024
  10. String Transformer

    Text tool · 2023

    “What you type never leaves your browser.”

    Turns any text into more than 50 formats in eight categories: naming conventions such as camelCase, snake_case or kebab-case, encodings such as Base64, URL, hex or Morse, classic ciphers such as ROT13 or Atbash, SHA hashes, a JWT payload and utilities to sort, dedupe or clean up lines.

    It transforms as you type, tells you when the input is not in the expected format, suggests the format it detects and flips the conversion with one button. It all happens in the browser and nothing is sent to a server; it installs as a PWA, works offline and can also be used as a library or from the command line.

    Technologies
    JavaScript · HTML · CSS · PWA
    Status
    Online
    Date
    2023
  11. Gestor de comparsas

    Data dashboard · 2026

    “No backend: it all fits in one index.html.”

    A single-page app to record, import and analyse the comparsas of the COAC, the Cádiz carnival contest, and their kinds of discourse in each round, from the preliminaries to the final. It loads data from CSV, Excel or a form, avoids duplicate comparsa-and-year entries, is edited right in the table and saves changes in the browser.

    A dashboard shows metrics and charts with filters, and questions in plain language are answered by Chrome’s local AI using only the filtered data. No backend and nothing to install: it all fits in one index.html.

    Technologies
    HTML · JavaScript · Chrome AI
    Status
    Online
    Date
    2026
  12. illo-loader

    Web component · 2025

    “One tag and any symbol.”

    A web component that shows an animated loading indicator and takes a single tag in any project, with or without a framework.

    The animation is made of the symbol you choose, from a shaded block to dots, bars or musical signs, and it follows light and dark colour schemes with a smooth, configurable animation. Load it as a module from a CDN or from the repository’s own files.

    Technologies
    JavaScript · Web Components
    Status
    Repository
    Date
    2025
  13. js-subtype

    npm library · 2024

    “More precise than typeof.”

    A small, zero-dependency library that tells you the exact subtype of any JavaScript value —Array, Date, Map, RegExp…— where typeof only says “object”.

    It exposes a single function, getType, which returns the subtype’s name, handy to validate input precisely or decide how to handle a value. It works in Node.js and in modern browsers, installs from npm or yarn and is MIT licensed.

    Technologies
    JavaScript · Node.js
    Status
    Repository
    Date
    2024