Initial scaffold: Go backend, React frontend, Docker Compose

- Go backend: config, db (PostgreSQL migrations), auth (argon2id + sessions),
  middleware (cookie sessions, RequireAuth), chi router, cmd/server
- React frontend: Vite + React 18 + TS + Tailwind + Gruvbox palette + terminal CSS
- Docker: compose.yml (Postgres, Valkey, minio, LiveKit, coturn, Caddy),
  livekit.yaml, Caddyfile, Dockerfile (multi-stage Go+Node+Alpine)
- .env.example, .gitignore, README.md
This commit is contained in:
2026-06-26 14:41:10 -04:00
commit e499ce884d
41 changed files with 4451 additions and 0 deletions
+78
View File
@@ -0,0 +1,78 @@
@tailwind base;
@tailwind components;
@tailwind utilities;
@layer base {
:root {
--gb-bg-h: #1d2021;
--gb-bg: #282828;
--gb-bg-s: #3c3836;
--gb-bg-t: #504945;
--gb-bg-f: #32302f;
--gb-fg: #ebdbb2;
--gb-fg-s: #d5c4a1;
--gb-fg-t: #bdae93;
--gb-fg-f: #a89984;
--gb-red: #fb4934;
--gb-green: #b8bb26;
--gb-yellow: #fabd2f;
--gb-blue: #83a598;
--gb-purple: #d3869b;
--gb-aqua: #8ec07c;
--gb-orange: #fe8019;
--gb-gray: #928374;
--gb-border: #665c54;
}
html, body, #root {
@apply h-full w-full bg-gb-bg text-gb-fg font-mono;
font-size: 14px;
line-height: 1.4;
}
* {
box-sizing: border-box;
}
/* Scrollbars hidden for terminal feel */
*::-webkit-scrollbar {
width: 0px;
height: 0px;
}
input, textarea, button {
@apply bg-gb-bg-s text-gb-fg font-mono border outline-none;
border-color: var(--gb-border);
}
input:focus, textarea:focus, button:focus {
@apply border-gb-fg-t;
}
}
@layer components {
.terminal-border {
border-style: solid;
border-color: var(--gb-border);
border-width: 1px;
}
.terminal-button {
@apply px-2 py-1 bg-gb-bg-s text-gb-fg border hover:bg-gb-bg-t hover:text-gb-orange transition-colors;
border-color: var(--gb-border);
}
.terminal-input {
@apply px-2 py-1 bg-gb-bg-s text-gb-fg border w-full;
border-color: var(--gb-border);
}
.terminal-active {
@apply text-gb-orange bg-gb-bg-t;
}
.terminal-mention {
background-color: rgba(142, 192, 124, 0.12);
color: var(--gb-aqua);
}
}