Appearance
Guild
Guild is a multi-game community manager for guilds, clans, legions, and teams. It uses an isolated PostgreSQL database and Better Auth on the Finluth host. The browser talks only to the Guild API; database credentials never enter the client bundle.
Live at guild.finluth.com.
Run the interactive demo
sh
npm install
npm run demoDemo data and edits stay in this browser's local storage. They are not shared accounts or production data.
Run live mode locally
- Copy
.env.exampleto.env. SetDATABASE_URLto a local PostgreSQL database, generate a randomBETTER_AUTH_SECRETwith at least 32 characters, and setAPP_URL=http://localhost:5173. - Start PostgreSQL. For a disposable local database, run
docker compose -f deploy/docker-compose.dev.yml up -d. - Run
npm installandnpm run dev. The API applies migrations fromserver/migrationson startup; Vite proxies/apito it.
SMTP values are optional in development (verification/reset links are printed to the API terminal) and required in production. Email verification is required before sign-in.
Plans
Free accounts can own one community; they may still join other communities. Pro accounts can own unlimited communities. The API enforces the limit. Until a billing provider is selected, an operator can grant or expire Pro entitlements by updating user_plans in the Guild database.
Finluth deployment
Finluth's Caddy and Docker Compose use the shared deploy_default network. Guild has its own database and application service on that network. After cloning under /opt/guild/app and configuring .env.production:
sh
git pull && sh deploy/deploy.shCaddy site:
text
guild.finluth.com {
reverse_proxy guild:3000
}Do not share or reuse Finluth's application database credentials for Guild.
Current scope
- Multiple communities per account, across games and servers
- Owner/officer/member roles enforced by the server API
- Free plan with one owned community and Pro entitlement with unlimited owned communities
- Member roster, expiring invite links, events, RSVPs, attendance, and announcements
- Reusable templates, custom roster naming, crests, and per-community visual designs
- Email/password and Discord sign-in, linked Discord accounts, verification, password recovery, and account deletion
- Per-community Discord server/channel selection and announcement posting
- Responsive dashboard and browser-persistent demo mode