#!/usr/bin/env python3
"""
Simple static file server for NIP-05 Nostr verification.
Serves /.well-known/nostr.json with proper CORS headers.
"""

import os
import sys
from http.server import HTTPServer, SimpleHTTPRequestHandler

PORT = int(os.environ.get("PORT", 9880))
BASE_DIR = os.path.dirname(os.path.abspath(__file__))


class NIP05Handler(SimpleHTTPRequestHandler):
    def __init__(self, *args, **kwargs):
        super().__init__(*args, directory=BASE_DIR, **kwargs)

    def end_headers(self):
        # Required: CORS for Nostr clients
        self.send_header("Access-Control-Allow-Origin", "*")
        self.send_header("Access-Control-Allow-Methods", "GET, OPTIONS")
        self.send_header("Cache-Control", "public, max-age=300")
        super().end_headers()

    def log_message(self, format, *args):
        # Suppress access logs
        pass


if __name__ == "__main__":
    os.chdir(BASE_DIR)
    server = HTTPServer(("127.0.0.1", PORT), NIP05Handler)
    print(f"NIP-05 server running on port {PORT}")
    print(f"Serving: {BASE_DIR}")
    server.serve_forever()
