template-elysia/src/index.ts
Sanjib Kumar Sen a7e30cfce2 auth is working
2025-01-11 20:42:04 +06:00

28 lines
899 B
TypeScript

import { Elysia } from "elysia";
import { swagger } from "@elysiajs/swagger";
import { opentelemetry } from "@elysiajs/opentelemetry";
import { serverTiming } from "@elysiajs/server-timing";
import { cors } from '@elysiajs/cors'
import { note } from "./api/note/note.route";
import { betterAuthView } from "./lib/auth/auth-view";
import { userMiddleware, userInfo } from "./middlewares/auth-middleware";
const app = new Elysia()
.use(cors())
.use(opentelemetry())
.use(swagger({
path: "/docs",
}))
.use(serverTiming())
.onError(({ error, code }) => {
if (code === "NOT_FOUND") return "Not Found :(";
console.error(error);
})
.derive(({ request }) => userMiddleware(request))
.all("/api/auth/*", betterAuthView)
.use(note)
.get("/user", ({ user, session }) => userInfo(user, session));
app.listen(3000);
console.log("Server is running on: http://localhost:3000")