Logo Lanfrica

ainabruno/fb_live_auto_moderator

Domain:

natural language processing

Record type:

software
Creator:
ain
Host:
An intelligent system that analyzes Facebook Live content in real-time, reads viewer comments, and automatically generates contextual responses in Malagasy/French using AI. Features include live content transcription analysis, comment classification, intelligent response generation, and a dashboard for managing auto-moderation... · Built with Manus # Web App Template (tRPC + Manus Auth + Database) This template gives you a React 19 + Tailwind 4 + Express 4 + tRPC 11 stack with Manus OAuth already wired. Procedures are your contracts, types flow end to end, and authentication "just works". --- ## Quick Facts - **tRPC-first:** define procedures in `server/routers.ts`, consume them with `trpc.*` hooks. - **Superjson out of the box:** return Drizzle rows directly—`Date` stays a `Date`. - **Auth baked in:** `/api/oauth/callback` handles Manus OAuth, `protectedProcedure` injects `ctx.user`. - **Gateway-ready:** all RPC traffic is under `/api/trpc`, making it easy to route at the edge. --- ## Build Loop (Four Touch Points) 1. Update schema in `drizzle/schema.ts`, then run `pnpm db:push`. 2. Add database helpers in `server/db.ts` (return raw results). 3. Add or extend procedures in `server/routers.ts`, then wire the UI with `trpc.*.useQuery/useMutation`. 4. Build frontend experience according to `Frontend Workflow` 5. Cover your changes with Vitest specs inside `server/*.test.ts` (see `server/auth.logout.test.ts`) and run `pnpm test`. That's it—no manual REST routes, no Axios client, no shared contract files. --- ## Key Files ``` server/auth.logout.test.ts → Reference sample vitest test file drizzle/schema.ts → Database tables & types server/db.ts → Query helpers (reuse across procedures) server/routers.ts → tRPC procedures (auth + features) client/src/App.tsx → Routes wiring & layout shells client/src/lib/trpc.ts → tRPC client binding client/src/pages/ → Feature UI that calls trpc hooks ``` Framework plumbing (OAuth, context, Vite bridge) lives under `server/_core`. --- ## File Structure ``` client/ public/ ← Small configuration files ONLY (favicon.ico, robots.txt). DO NOT put images/media here. src/ pages/ ← Page-level components components/ ← Reusable UI & shadcn/ui contexts/ ← React contexts hooks/ ← Custom hooks lib/trpc.ts ← tRPC client App.tsx ← Routes & layout …