Project ideas from Hacker News discussions.

Chrome and Edge are removing XSLT: what breaks and what does not

📝 Discussion Summary (Click to expand)

Theme 1 – XSLT praised as a powerful, declarative transformation tool
Many commenters lament the loss of XSLT, noting its usefulness for turning XML data into HTML, creating modular sites, and styling feeds.
- “Shame back in the XHTML days XSLT was a spec that could have made website modularity so much cleaner… It was really powerful in the days before javascript was usable without jQuery.” – Trustable8
- “I have been using it for 26 years… XSLT has a lot of features and power that newer templating languages lack.” – mcculley
- “You could do some awesome things with XML/XSL… RSS feeds or OPML collections of RSS feeds … presenting that data to humans as a web page.” – Telemakhos

Theme 2 – XSLT/XHTML criticized for complexity, poor specs, and fragile tooling
Several users point out that the specification was badly written, tooling was inadequate, and the strict XML parsing made documents break easily.
- “The XSLT 1.0 spec specifically was written pretty badly… I had a hard time at making sense of it.” – g‑b‑r
- “XSLT 1.0 has some really obvious missteps… nobody just implements XSLT 1.0.” – WCSTombs
- “The main one is that even a slightly broken XHTML document will fail to render. HTML is much more forgiving.” – smallerize
- “The XHTML/XML/XSLT tooling was bad, and XSLT was hard to reason about.” – ebiester

Theme 3 – Justifications for removing XSLT: security, maintenance burden, and better alternatives
The decision to drop XSLT is defended by citing reduced attack surface, lack of real‑world usage, and the availability of simpler options like CSS or JavaScript templating.
- “Reducing attack surface.” – bazoom42 (in response to why legacy code is dropped)
- “Microsoft Edge adopts nearly all of the Chromium project's changes… Removed features don't always follow the same timelines.” – zamadatix
- “Yes, because XSLT won't work in Chrome and Edge anymore.” – WJW
- “Microsoft hasn’t bothered to fix this in IIS, and likely never will.” – jiggawatts (on the practical abandonment of XSLT‑based reports)


🚀 Project Ideas

XSLT‑WASM Polyfill

Summary

  • A browser‑side polyfill that compiles XSLT 3.0 processors (e.g., Saxon‑HE) to WebAssembly, enabling existing XSLT stylesheets to run in Chrome/Edge after native support removal.
  • Core value: drop‑in compatibility for legacy XML‑centric apps without rewriting templates.

Details

Key Value
Target Audience Enterprises and developers maintaining XSLT‑based reporting, documentation sites, or legacy CMS
Core Feature WASM‑based XSLT 3.0 engine exposed via a standards‑compliant xsltProcessor API
Tech Stack Rust → wasm‑bindgen → WebAssembly, TypeScript wrapper, optional CDN build
Difficulty Medium
Monetization Revenue-ready: usage‑based CDN pricing (free tier, paid per‑GB transform)

Notes

  • HN users lament the loss: “I have been using it for 26 years… XSLT has a lot of features and power that newer templating languages lack” (mcculley) and “Microsoft Edge adopts nearly all of the Chromium project's changes… However, Microsoft retains full control… may defer or reject changes” (zamadatix).
  • Enables discussion on standards compliance and offers a practical migration path while preserving existing investments.

XSLT‑to‑JS Compiler

Summary

  • A command‑line tool (with web playground) that transforms XSLT stylesheets into efficient JavaScript templating functions (e.g., lit‑html, hyperscript) for client‑side rendering.
  • Core value: lets teams gradually replace XSLT with modern JS tooling while preserving the same declarative transformations.

Details

Key Value
Target Audience Frontend engineers maintaining XML‑driven UIs, RSS feed visualizers, or internal tooling
Core Feature XSLT parser → AST → JS template generator (supports common XSLT 1.0 constructs + EXSLT)
Tech Stack Node.js, TypeScript, tree‑sitter grammar for XSLT, optional WASM for parsing
Difficulty Medium
Monetization Hobby

Notes

  • Commenters seek alternatives: “I’m curious, what exactly in the DOM is not XML‑compatible?” (jxramos) and “You could do some awesome things with XML/XSL… calling an XSLT transformation when viewed in a web browser” (Telemakhos).
  • Provides a concrete bridge discussed in threads about using inline scripts or WebAssembly XSLT transformers (miohtama, cousin_it).

XSLT Service API

Summary

  • A hosted (or self‑hostable) micro‑service that exposes XSLT 3.0 transformations over HTTP/GraphQL, allowing server‑side apps to offload XML→HTML processing without relying on browser support.
  • Core value: centralizes XSLT processing, offers scaling, caching, and audit logging while keeping existing stylesheets unchanged.

Details

Key Value
Target Audience Backend teams generating reports, invoices, or documentation from XML (e.g., ASP.NET, Java, PHP)
Core Feature REST/GraphQL endpoint accepting XML + XSLT, returning HTML; supports async batch jobs
Tech Stack Go or Rust runtime, Saxon‑HE or libxslt via FFI, PostgreSQL for caching, Docker/Kubernetes deployment
Difficulty High
Monetization Revenue-ready: subscription tiers (Free, Pro $29/mo, Enterprise custom)

Notes

  • Users report IIS‑generated XML+XSLT reports becoming “nigh unusable” (jiggawatts) and a desire for “server side” transformations (yokoprime).
  • Service directly addresses the pain of losing browser XSLT while preserving the powerful declarative style many still rely on (mcculley, Devasta).

Read Later