Serve
| Field | Value |
|---|---|
| Type | Skill Resource |
| Source | ~/.copilot/skills/technical-writing/references/mermaid/gallery/build/serve.py |
| Description | Not specified |
Source Content
#!/usr/bin/env python3"""Serve the render dir over GET and accept the harvested SVGs via POST /save,writing them to svgs.json so the 318KB payload never round-trips through chat."""
import http.serverimport socketserverfrom pathlib import Path
RENDER = Path(__file__).parent / "render"OUT = Path(__file__).parent / "svgs.json"PORT = 8191
class Handler(http.server.SimpleHTTPRequestHandler): def __init__(self, *a, **k): super().__init__(*a, directory=str(RENDER), **k)
def do_POST(self): if self.path == "/save": length = int(self.headers.get("Content-Length", 0)) body = self.rfile.read(length) OUT.write_bytes(body) self.send_response(200) self.send_header("Access-Control-Allow-Origin", "*") self.end_headers() self.wfile.write(b"ok") else: self.send_response(404) self.end_headers()
def log_message(self, *a): pass
with socketserver.TCPServer(("", PORT), Handler) as httpd: print(f"serving {RENDER} on {PORT}") httpd.serve_forever()