Add npm package installer CLI

This commit is contained in:
Federico Jaramillo Martinez
2026-05-08 16:26:08 +02:00
parent a0338ab6a7
commit 22d10337c2
7 changed files with 282 additions and 8 deletions
+4 -2
View File
@@ -1,5 +1,6 @@
import { existsSync } from "node:fs";
import { join } from "node:path";
import { dirname, join } from "node:path";
import { fileURLToPath } from "node:url";
import Fastify, { type FastifyInstance, type FastifyServerOptions } from "fastify";
import fastifyStatic from "@fastify/static";
import fastifyWebsocket from "@fastify/websocket";
@@ -78,7 +79,8 @@ export async function buildApp(deps: AppDependencies = {}): Promise<FastifyInsta
}
});
const clientDist = deps.clientDist ?? join(process.cwd(), "dist", "client");
const packagedClientDist = join(dirname(fileURLToPath(import.meta.url)), "..", "client");
const clientDist = deps.clientDist ?? (existsSync(packagedClientDist) ? packagedClientDist : join(process.cwd(), "dist", "client"));
if (clientDist !== false && existsSync(clientDist)) {
await app.register(fastifyStatic, { root: clientDist });
app.setNotFoundHandler((_request, reply) => reply.sendFile("index.html"));