diff --git a/serve.ts b/serve.ts deleted file mode 100644 index f78fe44..0000000 --- a/serve.ts +++ /dev/null @@ -1,42 +0,0 @@ - -let server: Deno.HttpServer | null = null; -async function runScript() { - if (server) { - await server.shutdown(); - } - - const { startServer } = await import((`./server.ts?cache_bust=${Date.now()}`)); - server = startServer("localhost", 6969); -} - -function debounced(fn: () => Promise) { - let timeoutId: ReturnType | null; - return () => { - if (timeoutId) { - clearTimeout(timeoutId); - } - - timeoutId = setTimeout(fn, 200); - }; -} - -// Watch for file changes -async function watchFiles(paths: string[], handler: () => void) { - const watcher = Deno.watchFs(paths); - for await (const event of watcher) { - if (event.kind === "modify" || event.kind === "create") { - handler(); - } - } -} - -async function startup() { - // Initial run - runScript(); - await watchFiles(["."], debounced(runScript)); -} - -if (import.meta.main) { - await startup() -} -