gemini coming in with the frontend

This commit is contained in:
2025-12-13 21:47:27 +11:00
parent 356eb58381
commit 8fc563334e
21 changed files with 991 additions and 4 deletions

View File

@@ -6,6 +6,8 @@
"name": "app",
"dependencies": {
"@bogeychan/elysia-logger": "^0.1.10",
"@elysiajs/cors": "^1.4.0",
"@elysiajs/openapi": "^1.4.11",
"elysia": "^1.4.18",
"logixlysia": "^5.3.0",
},
@@ -22,6 +24,10 @@
"@borewit/text-codec": ["@borewit/text-codec@0.1.1", "", {}, "sha512-5L/uBxmjaCIX5h8Z+uu+kA9BQLkc/Wl06UGR5ajNRxu+/XjonB5i8JpgFMrPj3LXTCPA0pv8yxUvbUi+QthGGA=="],
"@elysiajs/cors": ["@elysiajs/cors@1.4.0", "", { "peerDependencies": { "elysia": ">= 1.4.0" } }, "sha512-pb0SCzBfFbFSYA/U40HHO7R+YrcXBJXOWgL20eSViK33ol1e20ru2/KUaZYo5IMUn63yaTJI/bQERuQ+77ND8g=="],
"@elysiajs/openapi": ["@elysiajs/openapi@1.4.11", "", { "peerDependencies": { "elysia": ">= 1.4.0" } }, "sha512-d75bMxYJpN6qSDi/z9L1S7SLk1S/8Px+cTb3W2lrYzU8uQ5E0kXdy1oOMJEfTyVsz3OA19NP9KNxE7ztSbLBLg=="],
"@pinojs/redact": ["@pinojs/redact@0.4.0", "", {}, "sha512-k2ENnmBugE/rzQfEcdWHcCY+/FM3VLzH9cYEsbdsoqrvzAKRhUZeRNhAZvB8OitQJ1TBed3yqWtdjzS6wJKBwg=="],
"@sinclair/typebox": ["@sinclair/typebox@0.34.41", "", {}, "sha512-6gS8pZzSXdyRHTIqoqSVknxolr1kzfy4/CeDnrzsVz8TTIWUbOBr6gnzOmTYJ3eXQNh4IYHIGi5aIL7sOZ2G/g=="],

View File

@@ -7,6 +7,8 @@
},
"dependencies": {
"@bogeychan/elysia-logger": "^0.1.10",
"@elysiajs/cors": "^1.4.0",
"@elysiajs/openapi": "^1.4.11",
"elysia": "^1.4.18",
"logixlysia": "^5.3.0"
},

View File

@@ -2,8 +2,22 @@ import { Elysia } from "elysia";
import { api } from "./api/index";
import { ws } from "./ws/index";
import logixlysia from "logixlysia";
import { openapi } from "@elysiajs/openapi";
import { cors } from "@elysiajs/cors";
const app = new Elysia({ name: "Rat Chat" })
.use(cors())
.use(
openapi({
// optional customize the generated doc
documentation: {
info: {
title: "rat chat",
version: "0.0.1",
},
},
})
)
.use(
logixlysia({
config: {

View File

@@ -1,16 +1,23 @@
import { Elysia } from "elysia";
import { Elysia, t } from "elysia";
export const ws = new Elysia()
.ws("/ws", {
body: t.Object({
text: t.String(),
sender: t.String(),
}),
open(ws) {
const time: string = new Date().toUTCString();
console.log(time + " Client connected" + " " + ws.id)
console.log(time + " Client connected" + " " + ws.id);
ws.subscribe("chat");
},
message(ws, message) {
ws.send("echo" + message)
ws.publish("chat", message);
ws.send(message);
},
close(ws) {
const time: string = new Date().toUTCString();
console.log(time + " Client connected" + " " + ws.id)
console.log(time + " Client connected" + " " + ws.id);
ws.unsubscribe("chat");
}
})