Developer resources

This is the entry point for people building, inspecting, and integrating 404. For a guided installation, start with Self-hosted / CLI; for the managed product, start with Desktop. The source-oriented material lives beside the component it explains, so a developer can follow each layer without switching between a second set of duplicate references.

Find the right layer

QuestionReference
Where does a request go, and what does STATIC change?STATIC overview and Request path
Which config, profile, and command start the proxy?STATIC configuration and Profile anatomy
How does the localhost API work?API overview and Control endpoints
What is in the Windows WSL distribution?Rose overview and Distribution anatomy
How do Docker and CI produce release assets?Build and release
How do Linux packets receive the selected profile?eBPF packet path and STATIC packet boundary
Which repository owns a component?Repository map

Release and runtime boundaries

The open-source repository builds STATIC, the Linux packet classifier, and the Alpine-based WSL rootfs. A release bundles the prebuilt musl binary and eBPF object, exports a flat rootfs tarball, and publishes a signed manifest with its digest. The Windows desktop app is documented as verifying and importing that artifact; a self-hosted operator can instead use the published ZIP and launch the distro manually. The distro supplies a Linux environment, while STATIC supplies the proxy and local API. Provisioning and updates separates these paths.

The repository map identifies source ownership and the worker-backed delivery boundary. The build from source guide covers native development; the Rose build page covers the WSL artifact.