ymawky: MacOS Web Server written entirely in ARM64 assembly

2026-05-02

Subreddit: r/asm

Discussion: View on Reddit (9 points, 0 comments)

Building a web server is a rite of passage for many programmers. Building one entirely in assembly language, with zero reliance on libc, is something else entirely. That's exactly what u/kavantoine did with ymawky, a fully functional HTTP server written in pure ARM64 assembly for macOS, communicating directly with the kernel through raw syscalls.

What makes this project remarkable isn't just that it works — it's the breadth of HTTP functionality implemented at the lowest possible level. The server handles five HTTP methods (GET, PUT, HEAD, OPTIONS, DELETE), parses headers like Content-Length and Range, decodes URL percent-encoding, serves over 30 MIME types, and even includes security mitigations against slowloris-style denial-of-service attacks. Path traversal protection is built in too. This isn't a toy — it's a genuinely careful piece of systems programming.

There are several things that make this project a valuable learning resource:

The project is also a useful reminder that assembly isn't inherently impractical. With discipline and clear structure, you can build real software in it. Whether you'd want to maintain a production web server in assembly is another question — but the exercise of building one teaches you more about networking, HTTP, and your operating system than any framework tutorial ever could.

Why read this: A syscall-only ARM64 web server on macOS is a masterclass in what actually happens beneath every abstraction layer your code depends on.

All newsletters