Back to browse
GitHub Repository

MacOS Web Server written entirely in ARM64 assembly

574 starsAssembly

Building a web server in assembly to give my life (a lack of) meaning

by imtomt·May 10, 2026·430 points·227 comments

AI Analysis

●●●BangerWizardryBig Brain

Hand-rolled ARM64 assembly server with range requests and slowloris mitigation.

Strengths
  • Syscall-only implementation with no libc dependencies shows deep systems knowledge.
  • Implements complex HTTP features like range requests and percent-decoding manually.
  • Smart path traversal detection handles edge cases like double-dots in filenames.
Weaknesses
  • macOS-only with significant tweaks needed for Linux portability.
  • Static file serving limits utility compared to modern dynamic servers.
Target Audience

Systems programmers and assembly enthusiasts

Similar To

thttpd · darkhttpd · micro-httpd

Post Description

This is ymawky, a static file web server for MacOS written entirely in ARM64 assembly. It supports GET, PUT, DELETE, HEAD, and OPTIONS requests, and supports Range: bytes=X-Y headers (which allows scrubbing for video streaming). It decodes percent-encoded URLs, strictly enforces docroot, serves custom error pages for any HTTP error response, supports directory listing, and has (some) mitigations against slowloris-like attacks.

I’ve also written a more detailed writeup here: https://imtomt.github.io/ymawky/

Similar Projects