frontpage.
newsnewestaskshowjobs

Made with ♥ by @iamnishanth

Open Source @Github

fp.

OpenCiv3: Open-source, cross-platform reimagining of Civilization III

https://openciv3.org/
546•klaussilveira•9h ago•153 comments

The Waymo World Model

https://waymo.com/blog/2026/02/the-waymo-world-model-a-new-frontier-for-autonomous-driving-simula...
871•xnx•15h ago•527 comments

How we made geo joins 400× faster with H3 indexes

https://floedb.ai/blog/how-we-made-geo-joins-400-faster-with-h3-indexes
77•matheusalmeida•1d ago•16 comments

Show HN: Look Ma, No Linux: Shell, App Installer, Vi, Cc on ESP32-S3 / BreezyBox

https://github.com/valdanylchuk/breezydemo
186•isitcontent•10h ago•23 comments

Monty: A minimal, secure Python interpreter written in Rust for use by AI

https://github.com/pydantic/monty
189•dmpetrov•10h ago•84 comments

Unseen Footage of Atari Battlezone Arcade Cabinet Production

https://arcadeblogger.com/2026/02/02/unseen-footage-of-atari-battlezone-cabinet-production/
10•videotopia•3d ago•0 comments

Show HN: I spent 4 years building a UI design tool with only the features I use

https://vecti.com
298•vecti•12h ago•133 comments

Microsoft open-sources LiteBox, a security-focused library OS

https://github.com/microsoft/litebox
347•aktau•16h ago•169 comments

Dark Alley Mathematics

https://blog.szczepan.org/blog/three-points/
73•quibono•4d ago•16 comments

Sheldon Brown's Bicycle Technical Info

https://www.sheldonbrown.com/
343•ostacke•16h ago•90 comments

Hackers (1995) Animated Experience

https://hackers-1995.vercel.app/
441•todsacerdoti•18h ago•226 comments

Delimited Continuations vs. Lwt for Threads

https://mirageos.org/blog/delimcc-vs-lwt
16•romes•4d ago•2 comments

Show HN: If you lose your memory, how to regain access to your computer?

https://eljojo.github.io/rememory/
240•eljojo•12h ago•148 comments

PC Floppy Copy Protection: Vault Prolok

https://martypc.blogspot.com/2024/09/pc-floppy-copy-protection-vault-prolok.html
44•kmm•4d ago•3 comments

An Update on Heroku

https://www.heroku.com/blog/an-update-on-heroku/
378•lstoll•16h ago•256 comments

What Is Ruliology?

https://writings.stephenwolfram.com/2026/01/what-is-ruliology/
5•helloplanets•4d ago•1 comments

How to effectively write quality code with AI

https://heidenstedt.org/posts/2026/how-to-effectively-write-quality-code-with-ai/
222•i5heu•13h ago•168 comments

Why I Joined OpenAI

https://www.brendangregg.com/blog/2026-02-07/why-i-joined-openai.html
97•SerCe•6h ago•78 comments

Show HN: ARM64 Android Dev Kit

https://github.com/denuoweb/ARM64-ADK
14•denuoweb•1d ago•2 comments

Female Asian Elephant Calf Born at the Smithsonian National Zoo

https://www.si.edu/newsdesk/releases/female-asian-elephant-calf-born-smithsonians-national-zoo-an...
20•gmays•5h ago•3 comments

Learning from context is harder than we thought

https://hy.tencent.com/research/100025?langVersion=en
162•limoce•3d ago•83 comments

Show HN: R3forth, a ColorForth-inspired language with a tiny VM

https://github.com/phreda4/r3
63•phreda4•9h ago•11 comments

I spent 5 years in DevOps – Solutions engineering gave me what I was missing

https://infisical.com/blog/devops-to-solutions-engineering
129•vmatsiiako•15h ago•56 comments

Introducing the Developer Knowledge API and MCP Server

https://developers.googleblog.com/introducing-the-developer-knowledge-api-and-mcp-server/
40•gfortaine•7h ago•11 comments

Understanding Neural Network, Visually

https://visualrambling.space/neural-network/
261•surprisetalk•3d ago•35 comments

I now assume that all ads on Apple news are scams

https://kirkville.com/i-now-assume-that-all-ads-on-apple-news-are-scams/
1031•cdrnsf•19h ago•428 comments

Zlob.h 100% POSIX and glibc compatible globbing lib that is faste and better

https://github.com/dmtrKovalenko/zlob
6•neogoose•2h ago•3 comments

FORTH? Really!?

https://rescrv.net/w/2026/02/06/associative
56•rescrv•17h ago•19 comments

Show HN: Smooth CLI – Token-efficient browser for AI agents

https://docs.smooth.sh/cli/overview
85•antves•1d ago•61 comments

WebView performance significantly slower than PWA

https://issues.chromium.org/issues/40817676
20•denysonique•6h ago•3 comments
Open in hackernews

The Joy of Mixing Custom Elements, Web Components, and Markdown

https://deanebarker.net/tech/blog/custom-elements-markdown/
116•deanebarker•5mo ago

Comments

superkuh•5mo ago
>In the end, your document is now fully an HTML document, not a Markdown document that becomes an HTML document. It’s a minor perspective shift, but might have some cascading effects on things I’ve written above.

But this style of custom-elements requires successful javascript program execution to achieve that "HTML" document. Just like markdown requires some parser program to turn it in to HTML. It's not really fully an HTML document.

It's a good idea. It just would be a better one to write the custom-elements as wrappers for actual HTML elements. Like how https://blog.jim-nielsen.com/2023/html-web-components-an-exa... shows instead of trying to do it SPA style and requiring perfect JS execution for anything to show properly.

HTML mark-up really isn't that heavy. The avoidance of it seems mostly to be because it's considered "old" and "old" is bad, or at least not useful on a resume. But it's old because it's so good it's stuck around for a long time. Only machine generated HTML is bulky. Hand written can be just as neat and readable as any Markdown.

spankalee•5mo ago
JavaScript is one of the three core file types of the web. You can rely on it as much as HTML and CSS. I don't get the unique derision of JS compared to the other files types.
superkuh•5mo ago
That's an understandable take in nearly all commercial and institutional contexts. But in others just involving human people, no. Many times JS does fail or isn't available. So building progressively enhanced web documents preserves utility across the spectrum of human visitors (and maintains accessibility). But if you only have a profit motive, then yes, there's no need for robust solutions. The amount of people that can't do JS well won't eat into profits or cause enough complaints to get you in trouble.
lelandfe•5mo ago
I think progressive enhancement is a cool approach to building stuff.

I also think “turn JS on” is a fairly reasonable ask these days. A lot of the web tends to break when CSS is disabled or fails, too.

spankalee•5mo ago
If your HTML or CSS fails to load, you're going to have a hard time too. Web pages have many critical resources.
superkuh•5mo ago
Failing to load is not a problem. Failing to execute is.

Usually because the web dev have used some new Javascript feature only $latest JS engines support. HTML and CSS if they're there they're there. Sure, there's caniuse for HTML and CSS. But they only have to load. The text/images/etc will be there. JS both has to be loaded and executed. If the later doesn't happen just right then the text and other multi-media won't be there. It's a very big difference.

troupo•5mo ago
No, you can't really rely on it. Welcome to Performance Inequality Gap: https://infrequently.org/2024/01/performance-inequality-gap-...
o11c•5mo ago
One additional thing that article fails to mention: you should not test your device in a context where it can cool itself easily. Test on your devices when they are wrapped in a blanket, and while there's another program using 100% CPU.
rustystump•5mo ago
Your conclusion is not the same as the article you link. Js is fine but it should be used relative to the targeted use case.

That astonishingly long and researched read loses impact when it draws a primarily moral based argument in the thesis. Being fast is better for both the privileged and underprivileged.

Moral handwringing rarely moves people to action.

troupo•5mo ago
> Your conclusion is not the same as the article you link.

My conclusion directly derives from the article. If your app relies on Javascript, it will be non-functional/broken/unusable for a huge number of people while their devices struggle to download, unzip, parse and run your JS bundles.

BTW. It's worse with web components built with default assumptions (without bundling). Since `import` statements will cause a long waterfall as each component loads its dependencies.

rustystump•5mo ago
Generally i agree.

I think there are a group of people who are salty that js became “the lang” for the web. Another group of people loath the framework insanity of webdev. I count myself among the ladder not the former. I equally hate all languages.

Js is heavily overused but the “web” of today is not the web of the 90s or 2010s which some people cannot get over.

thangalin•5mo ago
> It just would be a better one to write the custom-elements as wrappers for actual HTML elements.

pandoc has an extension for this:

https://pandoc.org/demo/example33/8.18-divs-and-spans.html

KeenWrite, my (R) Markdown editor, supports pandoc annotations:

https://youtu.be/7icc4oZB2I4?list=PLB-WIt1cZYLm1MMx2FBG9KWzP...

> Just like markdown requires some parser program to turn it in to HTML.

Or XHTML, which is XML, which can then be transformed into TeX macros, and then typeset into a PDF file with a theme (much like CSS stylizes HTML).

https://youtu.be/3QpX70O5S30?list=PLB-WIt1cZYLm1MMx2FBG9KWzP...

This allows separating content from presentation, allowing them to vary independently.

p_l•5mo ago
Unfortunately, also not-joy of completely unbreakable website ... https://usercontent.irccloud-cdn.com/file/TPJZ2AeN/100001246...
paulddraper•5mo ago
Did you do something to font color?
p_l•5mo ago
only opened the page on mobile network, and something choked a CSS somewhere apparently. Then it stayed this way.
righthand•5mo ago
Always curious why no one has made Markdown + pugjs-style[0] html parsing system.

[0] https://pugjs.org/api/getting-started.html

Terretta•5mo ago
We did this a decade or two ago when Markdown was Markdown and pug was Jade. It was great.

Apart from that, also back in the day people were still building pages using e.g. Dreamweaver, so we also put together a thing that could leverage a designer's HTML that rendered as a complete placeholder page. That "works as plain .HTML" became the template, used YAML as data, and Enlive (a Clojure lib) to turn the HTML with its placeholders into a template and then stuff YAML sidecar data into it to generate new HTML.

Not long after, Caddy's markdown support had promise, but agree with another commenter here that a few years ago astro.build started hitting a more interesting spot. In the middle ages between those, yay pandoc.

mockingloris•5mo ago
Pug (previously Jade) was a precursor to web frameworks. Technologies we use and enjoy today were built by previous decades of stumbling in the dark with one feature and hammering it into formidable shape. A nod to Handlebars while we're on the topic.

Recently found myself saying in conversations that, "Markdown is arguably one of the most valuable file type we have; media, documents, code blocks of almost any language, ... all in one place for further processing."

└── Dey well; Be well

xfeeefeee•5mo ago
I recently discovered a static site generator called Astro, which supports many syntaxes but the .astro is a nice mix of TypeScript and JSX-like syntax. Content can use MDX which is like Markdown but with {JSX} style markup for variables and etc. The static components are used very similar to React, with familiar import statements and <ComponentName props=etc> patterns. It is extremely easy to pick up. Best of all, it has plugins to support all sorts of other interactivity, so you can create interactive 'islands' of content using React or Preact or SolidJS or Vue etc. That way you have most of your content statically generated, and then the dynamic parts can be done from the client side.

Best of all, if you use simple unchanged files for other dynamic stuff like JSON etc, you can just generate those on build and serve those files in the host directly as the 'response' to a simple REST request, which is sometimes overlooked despite being the most fundamental form of a REST API.

https://astro.build/

I came across this after researching various options for a website that had, mostly for my own entertainment, restrictions on wanting to be mostly statically generated but customizable easily without learning a lot of new syntax / etc, something JSX-like with Markdown support etc, and MDX was an immediate find - and astro was the easiest SSG I found for it after trying with 11ty and several others. Actually felt like a delight playing with it.

famahar•5mo ago
I love astro. I use it for one of game curation projects. https://exhibitplay.com/

Built a few reusable templates and JSON for storing game data (maybe not ideal at scale, but seems to be working for now). JavaScript, CSS, and MDX. Hosted on Netlify which is an 'Official Deployment Partner'. It's light and simple. So far has been a joy to work with.

jpjuni0r•5mo ago
> if you use simple unchanged files for other dynamic stuff like JSON etc, you can just generate those on build and serve those files in the host directly

Other web frameworks support this too, if you look for "static export" options. Next.js, for example, supports this via the getInitialProps function.

What I like especially about Astro, that you perform this data loading during build time from any component/file on your page. With Next.js, this is only possible via the top level Page component.

pjmlp•5mo ago
That is legacy, the current way with page router model is to use getStaticProps or getServerSideProps.

And if using app router model, that is part of React server components.

tolerance•5mo ago
Nice to see pro-Markdown literature that extends its application, but not to the extent that (that I’ve found) its detractors use against it.

There are a lot of nooks in crannies in this article.

angelmm•5mo ago
Custom elements are really great for editors and developers. You can provide a rich set of primitives that editors can use to display certain content. In the past, I used MDX [1] extensively so non-technical writers can create a rich UI for a documentation site.

- [1] https://mdxjs.com/

reactordev•5mo ago
I just wanted to throw some extra :hearts: towards https://mdxjs.com/ it's really the best of both worlds.
o1o1o1•5mo ago
May I ask what you are using instead nowadays?

MDX is great and I like to use it.

catapart•5mo ago
Ha! Small world! I just started building a documentation editor using markdown, built as a custom element[0]. It's still deeply in alpha, but there is a working demo, at least!

[0] https://github.com/catapart/magnitce-docs-editor

esher•5mo ago
I use https://github.com/nuxt-modules/mdc with a Nuxt Content project. Also looked at https://markdoc.dev
matv•5mo ago
At Stripe, we built Markdoc to solve many of the issues mentioned!

https://stripe.com/blog/markdoc

ilaksh•5mo ago
Nice. But reminds us that most templating languages support markdown by default.
deanebarker•5mo ago
This feels like Markdown + Liquid.

I wrote quite a bit about Fluid, which is the C# implementation of Liquid. https://deanebarker.net/tech/fluid/

RandomJohnny•5mo ago
What's the advantage of using Web Components here? Why not process the tag on the server side aswell and replace it with Html?
spartanatreyu•5mo ago
Because if you're relying on server-side software to process your finished product, then your finished product is vulnerable to dependency rot and overall general software rot.

But if you process your markup at build time into it's finished HTML, then you can host it anywhere - anytime and it'll work.

chrismorgan•5mo ago
I think you misunderstood the comment you’re replying to. Its proposition is: you’re already doing a build process for Markdown to HTML, and even perhaps adding some preprocessing on that, so if you’re only using Custom Elements as a simple template engine, why not apply that in your build process too, and emit more reliable plain HTML?
socalgal2•5mo ago
> I didn’t find the need for blank lines in the CommonMark spec,

It's in #6 and #7

https://spec.commonmark.org/0.31.2/#html-blocks

I too ran a site on markdown with HTML. Originally I had my own hacky way of using HTML which was effectively to (1) replace all HTML with placeholder_number (2) format the markdown (3) replace placeholder_number with the html that used to be there. Not as simple as that but close.

Eventually i switched to a commonmark spec formatter and then tried to fix any old pages that had spaces in the HTML. Some were basically hard to fix like a pre section with code inside so I added some other hacks to do the same as above for those sections by surrounding them with {{#html}}....stuff..with...blank...lines{{/html}}.

So now my solution is handlebars.js meets markdown-it.

valiant55•5mo ago
I'm currently using Markdig in Razor Components (Blazor). I wonder if I could get Razor Components rendered in the markdown.
qingcharles•5mo ago
I would say it's possible. I just write my own Markdig plugins for all the custom elements I need, though.
shminge•5mo ago
I've recently hit a very similar problem. There's various problems with the web components (like he mentions) and I wanted a better way to write plain html with components. I ended up making a tiny python build script to process fake html components into proper HTML: https://github.com/shminge/builder

I've designed it for myself, deliberately to work around the flaws with web components mentioned. It hugely speeds up my process of writing pages for my blog (after trying everything, I've ended up just writing plain html) because I can define a component that holds all the boilerplate of the page (header, css, etc) and then write my pages as `<pagelayout> <p> body content here </p> </pagelayout>` and have that be expanded into proper valid HTML

kevindamm•5mo ago
My tool of choice for what TFA describes is Vitepress. Markdown plus about a dozen useful plugins and understands Vue3 components and treats each *.md as an SFC.

It hits a sweet spot for me.

mockingloris•5mo ago
"...Pre-processing and the initial excitement of a domain-specific language is a siren that might lead you to your doom.

(I swear, I have never tried to do something this foolish… I swear…)..."

I will say, that almost didn't make me laugh, bur, I will not swear.

I've recently come off from one such rabbit hole - A CLI tool for Pre-processing vue project templates. It was over-engineered.

Will probably go back to re-build it when I get the free time.

└── Dey well; Be well

adityaathalye•5mo ago
It certainly is a joy! I'd generalise it to any reasonable plaintext format.

Org mode keeps me locked in for this very reason.

No need for Emacs... pandoc (which I use) builds my static site. It supports enough Org markup to let me compile header metadata, latex, footnotes, markup etc. as well as inline live JavaScript code and use it in-page, just like I'd do in a regular stand-alone HTML page.

For example: a post with inlined static HTML and JavaScript, freely mixed-and-matched with org-native source block syntax. No plugins needed.

Raw: https://raw.githubusercontent.com/adityaathalye/shite/refs/h...

Pandoc-rendered live site: Compare Raw source with this section: https://www.evalapply.org/posts/animate-text-art-javascript/...

Github-rendered in repo (not github pages): It is (surprisingly) good enough for most Org content, including generating a nice Table of Contents... Except for any footnotes, and inlined or hosted JavaScript source (understandably, security may be a concern). https://github.com/adityaathalye/shite/blob/master/sources/p...