Internetless Software Development is a concept and living experiment documented by Jan_Wilmake in early 2024. The premise: dedicate a second MacBook Air as a machine that has never touched the real internet — running a large local LLM, local DNS resolution, and a Vercel-compatible serverless environment — producing a complete software development setup with no external dependencies.
Jan's framing: "I imagine a device that goes back to basics. It has no internet, just a huge LLM."
Jan identified several distinct reasons to pursue a fully offline setup:
Apple's M1+ recovery tools require internet activation during initial setup, making a truly internet-virgin installation impossible on modern Apple hardware. Jan found that older Macs without the activation requirement would be necessary for a purist approach; on a modern M1 Air, the internet is only needed at install time, not during operation.
Jan's design for the local network layer:
localhost - matches incoming requests by domain - serves public/ static files - follows vercel.json rules for rewrites, redirects, and serverless functions
Cmd+S deploys to the local webThis would enable standard browser-based development against web standards, with no code changes required between local and (eventual) real deployment.
Jan explored hosting a local npm server at the standard registry address, pre-seeded with common packages, so standard package managers would continue to work without modification.
For code that calls external APIs, Jan proposed an LLM-backed mock layer: the model generates plausible responses based on the OpenAPI spec of the target service, caches them, and returns them to the calling code — preserving functional development without real connectivity.
Without internet, deployment would use physical media (USB) and a batch-deploy script run periodically — prioritising development speed and privacy over continuous delivery.
The experiment sits at the intersection of several recurring themes in Jan's work: the Agent_Friendly_Web (what infrastructure does an AI agent need?), the Outcomputed scenario (what happens if the internet gets shut down?), and his practical interest in reducing external dependencies across his toolchain.