From f7355f8576569577212eb3c40799dac52f94783b Mon Sep 17 00:00:00 2001 From: Ethan Niser <100045248+ethanniser@users.noreply.github.com> Date: Thu, 14 Sep 2023 19:24:47 +0000 Subject: [PATCH] idk doesnt work --- bun.lockb | Bin 122464 -> 121692 bytes package.json | 7 +-- src/components/base.tsx | 93 +++++++++++++++++++++++++++++++++------- src/config/index.ts | 10 ++--- src/dev/liveReload.ts | 33 ++++++++++++++ src/pages/index.tsx | 2 +- 6 files changed, 120 insertions(+), 25 deletions(-) create mode 100644 src/dev/liveReload.ts diff --git a/bun.lockb b/bun.lockb index 335734e298d87435f10cc4c9a646b8e6b5a48f91..66641e43efbac82972d1bbd3fde926b8d9bc28f1 100755 GIT binary patch delta 25135 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 delta 25883 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 ` - - - - - - - THE BETH STACK - - - - - - -${children} -`; +export const BaseHtml = ({ children }: Html.PropsWithChildren) => ( + + + + + THE BETH STACK + + + + + + + + +
+ + {children} + + +); diff --git a/src/config/index.ts b/src/config/index.ts index bfe328f..3662bfd 100644 --- a/src/config/index.ts +++ b/src/config/index.ts @@ -1,6 +1,5 @@ import { createEnv } from "@t3-oss/env-core"; import { z } from "zod"; -import { argumentParser } from "zodcli"; const env = createEnv({ server: { @@ -11,11 +10,12 @@ const env = createEnv({ runtimeEnv: process.env, }); -// const args = argumentParser({ -// options: z.object({}), -// }).parse(process.argv.slice(2)); +const args = { + // watch: process.argv.includes("--watch"), + liveReload: true +}; export const config = { env, - // args, + args, }; diff --git a/src/dev/liveReload.ts b/src/dev/liveReload.ts new file mode 100644 index 0000000..8cf579b --- /dev/null +++ b/src/dev/liveReload.ts @@ -0,0 +1,33 @@ +import { Elysia, ws } from "elysia"; +import { type ElysiaWS } from "elysia/ws"; +import { watch } from "chokidar"; + +let wsConnections = new Set>(); + +watch("src/**/*.{ts,tsx}").on("all", (event, path) => { + console.log("sending event"); + wsConnections.forEach((connection) => { + connection.send("refresh"); + }); +}); + +const app = new Elysia() + .use(ws()) + .ws("/ws", { + open(ws) { + console.log("open"); + wsConnections.add(ws); + }, + close(ws) { + console.log("close"); + wsConnections.delete(ws); + }, + message(ws, message) { + console.log("message", message); + }, + }) + .listen(3001); + +console.log( + `🦊 Livereload running ${app.server?.hostname}:${app.server?.port}` +); diff --git a/src/pages/index.tsx b/src/pages/index.tsx index 1424f25..891ac47 100644 --- a/src/pages/index.tsx +++ b/src/pages/index.tsx @@ -10,7 +10,7 @@ export const pages = new Elysia({ .get("/", ({ html }) => html( -