You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
|
|
2 months ago | |
|---|---|---|
| .claude | 2 months ago | |
| .vscode | 2 months ago | |
| docs | 2 months ago | |
| src | 2 months ago | |
| static | 2 months ago | |
| .env.example | 2 months ago | |
| .gitattributes | 2 months ago | |
| .gitignore | 2 months ago | |
| .npmrc | 2 months ago | |
| .prettierignore | 2 months ago | |
| AGENTS.md | 2 months ago | |
| README.md | 2 months ago | |
| eslint.config.js | 2 months ago | |
| package-lock.json | 2 months ago | |
| package.json | 2 months ago | |
| playwright.config.ts | 2 months ago | |
| prettier.config.js | 2 months ago | |
| server.js | 2 months ago | |
| tsconfig.json | 2 months ago | |
| tsconfig.server.json | 2 months ago | |
| vite.config.ts | 2 months ago | |
README.md
webavatar-core
A base SvelteKit project meant to be branched off for future webavatar client projects. It provides the reusable core infrastructure those projects would otherwise reimplement from scratch — session management, auth tokens, and the realtime model connection — as a foundation to branch from, not a finished product.
See docs/ARCHITECTURE.md for the full architecture map, and AGENTS.md for project conventions and structure. docs/ holds a deep-dive per subsystem.
Getting started
npm install
cp .env.example .env
# fill in OPENAI_API_KEY and REALTIME_TOKEN_SECRET in .env
npm run dev
Open /demo/realtime for the realtime session reference wiring, or /demo/humanoid for the humanoid avatar-state demo (works offline via REALTIME_PROVIDER=mock, no API key needed).
Scripts
npm run dev/npm run build/npm run preview— standard SvelteKit commands.npm run check— type-check.npm run lint/npm run format— prettier + eslint.npm run test:unit— vitest.npm run test:e2e— Playwright.npm start— run the production build viaserver.js(the persistent Node process the realtime WebSocket relay requires — see docs/ARCHITECTURE.md).
Documentation
| Subsystem | Doc |
|---|---|
| Architecture overview and module layering | docs/ARCHITECTURE.md |
| Realtime session management | docs/REALTIME_SESSION.md |
| Tool calling (server- and client-executed) | docs/TOOLS.md |
| Analytics recording | docs/ANALYTICS.md |
| Configuration (env vars, persona) | docs/CONFIGURATION.md |
humanoid package (avatar-state, animation composition) |
docs/HUMANOID.md |