mishig's picture
mishig HF Staff
Deploy 2026-10-01T09:08Z
a7566b3 verified
Raw History Blame Contribute Delete
875 Bytes
"""Static file server for the Space (port 7860) with correct types for .mjs/.wasm."""
import http.server
import mimetypes
import os
mimetypes.add_type("text/javascript", ".mjs")
mimetypes.add_type("application/wasm", ".wasm")
class Handler(http.server.SimpleHTTPRequestHandler):
def __init__(self, *args, **kwargs):
super().__init__(*args, directory=os.path.join(os.path.dirname(__file__), "site"), **kwargs)
def end_headers(self):
# hashed build assets can be cached for long; everything else revalidates
if self.path.startswith("/assets/"):
self.send_header("Cache-Control", "public, max-age=31536000, immutable")
else:
self.send_header("Cache-Control", "no-cache")
super().end_headers()
if __name__ == "__main__":
http.server.ThreadingHTTPServer(("0.0.0.0", 7860), Handler).serve_forever()