fenn-door — deploy door for fenn.dakotawilliams.net (this project only) POST /deploy header: x-door-key: full set: {"files": {"index.html": "", "assets/app.js": "..."}, "message": "what changed"} one file: {"path": "index.html", "content": "", "message": "..."} (a partial send merges over what is live now) binary: {"path": "assets/photo.png", "base64": "iVBORw0..."} wipe: {"mode": "replace", "files": {...}} (nothing kept) GET /files -> JSON {files: [paths live now]} GET /file?path=index.html -> that file's raw text