HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
aymericzip
intlayer
TypeScript2025–2026
aymericzip / intlayer

intlayer

Per-component Internationalisation solution for JS application. Type-Safe. Translate with AI. Edit Visually.

3Distinct people
6Mentions
0Explicit recommenders
865GitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

Per-component Internationalisation solution for JS application. Type-Safe. Translate with AI. Edit Visually.

GitHub

Where it is used

No documented product use has been verified yet.

What people are saying

No recommendation phrase was found in the indexed comments.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

No other repository is repeatedly linked in the same discussions.

This week on Hacker News

Nov 7–Nov 14 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/14/2026, 1:49:46 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by week6 dated mentions

Observed mentions: 2025-08-26 15:40:30 UTC to 2026-01-29 19:44:51 UTC. Weeks start Monday, UTC.

0122025-08-25 00:00:00 UTC to 2025-09-01 00:00:00 UTC (exclusive): 2 mentions; 2 submissions, 0 commentsAug 252025-09-01 00:00:00 UTC to 2025-09-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-09-08 00:00:00 UTC to 2025-09-15 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2025-09-15 00:00:00 UTC to 2025-09-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-09-22 00:00:00 UTC to 2025-09-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-09-29 00:00:00 UTC to 2025-10-06 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-10-06 00:00:00 UTC to 2025-10-13 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-10-13 00:00:00 UTC to 2025-10-20 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-10-20 00:00:00 UTC to 2025-10-27 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-10-27 00:00:00 UTC to 2025-11-03 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2025-11-03 00:00:00 UTC to 2025-11-10 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 comments2025-11-10 00:00:00 UTC to 2025-11-17 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 commentsNov 102025-11-17 00:00:00 UTC to 2025-11-24 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-11-24 00:00:00 UTC to 2025-12-01 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-01 00:00:00 UTC to 2025-12-08 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-08 00:00:00 UTC to 2025-12-15 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-15 00:00:00 UTC to 2025-12-22 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-22 00:00:00 UTC to 2025-12-29 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2025-12-29 00:00:00 UTC to 2026-01-05 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-05 00:00:00 UTC to 2026-01-12 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-12 00:00:00 UTC to 2026-01-19 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-19 00:00:00 UTC to 2026-01-26 00:00:00 UTC (exclusive): 0 mentions; 0 submissions, 0 comments2026-01-26 00:00:00 UTC to 2026-02-02 00:00:00 UTC (exclusive): 1 mentions; 1 submissions, 0 commentsJan 26

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
Aug 252025-08-25 00:00:00 UTC2025-09-01 00:00:00 UTC220
Sep 12025-09-01 00:00:00 UTC2025-09-08 00:00:00 UTC000
Sep 82025-09-08 00:00:00 UTC2025-09-15 00:00:00 UTC110
Sep 152025-09-15 00:00:00 UTC2025-09-22 00:00:00 UTC000
Sep 222025-09-22 00:00:00 UTC2025-09-29 00:00:00 UTC000
Sep 292025-09-29 00:00:00 UTC2025-10-06 00:00:00 UTC000
Oct 62025-10-06 00:00:00 UTC2025-10-13 00:00:00 UTC000
Oct 132025-10-13 00:00:00 UTC2025-10-20 00:00:00 UTC000
Oct 202025-10-20 00:00:00 UTC2025-10-27 00:00:00 UTC000
Oct 272025-10-27 00:00:00 UTC2025-11-03 00:00:00 UTC110
Nov 32025-11-03 00:00:00 UTC2025-11-10 00:00:00 UTC110
Nov 102025-11-10 00:00:00 UTC2025-11-17 00:00:00 UTC000
Nov 172025-11-17 00:00:00 UTC2025-11-24 00:00:00 UTC000
Nov 242025-11-24 00:00:00 UTC2025-12-01 00:00:00 UTC000
Dec 12025-12-01 00:00:00 UTC2025-12-08 00:00:00 UTC000
Dec 82025-12-08 00:00:00 UTC2025-12-15 00:00:00 UTC000
Dec 152025-12-15 00:00:00 UTC2025-12-22 00:00:00 UTC000
Dec 222025-12-22 00:00:00 UTC2025-12-29 00:00:00 UTC000
Dec 292025-12-29 00:00:00 UTC2026-01-05 00:00:00 UTC000
Jan 52026-01-05 00:00:00 UTC2026-01-12 00:00:00 UTC000
Jan 122026-01-12 00:00:00 UTC2026-01-19 00:00:00 UTC000
Jan 192026-01-19 00:00:00 UTC2026-01-26 00:00:00 UTC000
Jan 262026-01-26 00:00:00 UTC2026-02-02 00:00:00 UTC110

What Hacker News says

6 sources
aypineau·Jan 29, 2026Submission

Show HN: A cross-framework Markdown/MDX parser to simplify content management

I've been frustrated with managing markdown in my projects for a long time so I'm happy to share a new approach that I implemented. To render md content, the first challenge is the choice of a library: On one hand, you have the "lego brick" solutions like unified, remark, and rehype. They're powerful, but setting up the whole AST pipeline and that plugging system is for me an unnecessary complexity. On the other hand, you have things like @next/mdx which are cool but too page-focused and doesn't work on the client side. So I used to prefer solution like markdown-to-jsx or react-markdown. The DX is much better, works client and server side, the solution is lighter. But that solutions don't support HTML or MDX out of the box, so you end up with the same plugin issues. Plus, using them with i18n (like i18next or next-intl) is usually a mess.
Read the rest
You end up with a if/else logic to render the right language, and your page weight explodes. I finally also came across several issues regarding the front-matter handling. (And Until recently both of that solutions used to be react only solutions.) So I decided to build something new for intlayer. Something that just works out if the box. > Note that to do it, I chose to fork the amazing work from markdown-to-jsx v7.7.14 (by quantizor) which is based on simple-markdown v0.2.2 (by Khan Academy) to build the solution. So I build this parser with a few main goals: - Lightweight solution - Framework-agnostic (React, Vue, Svelte, Angular, Solid, Preact) - Simple MDX setup: No crazy plugin chains - SSR and Client-side support - Configurable at the provider level to map your design system components - Component-focused, to fine grain the rendering for each part of my app - Type-safe (Retrieving front-matter as a typed object, get types components Props) - i18n friendly (Loading optimized for i18n use cases) - using zod schema to validate the front-matter Demo: So what’s the innovation here? - Truly Universal: The exact same logic for React, Vue, Svelte, etc. - Lightweight MDX-like Compiler: Works seamlessly on the edge and server. - No Loading Time: Content is loaded at build time, whatever you are using fs, fetch, etc - Allows you to organize and reuse small markdown sections across multiple docs or pages easily. - Parse your front-matter in a type safe way. (like used to do contentLayer) For what use cases is it designed for? - Blogs / Doc / Privacy Policy / Terms of Service - Dynamic content retrieved from a backend - Externalizing pages content to a headless CMS - Loading .md files Complete docs: https://intlayer.org/doc/concept/content/markdown Code https://github.com/aymericzip/intlayer/ Does this resonate with you? Curious if others feel the same, and how you’re currently handling Markdown in your apps?
2 points · Open discussion

Show HN: A simpler way to manage internationalization in component-based apps

I built this because I was frustrated with how messy translation files get as projects scale. Most i18n solutions force you to manage big JSON dictionaries, spread across multiple files, and then manually wire everything into your UI. It quickly becomes hard to keep things organized, especially in component-heavy apps. This approach is component-first i18n: translations live close to the UI they belong to. That makes it easier to keep things organized, avoid duplication, and scale without the usual chaos of string management. It’s lightweight, works with React/Next.js, and is designed to stay simple while your app grows.
6 points · Open discussion

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.