- TypeScript 94.4%
- JavaScript 3.4%
- GLSL 1.7%
- Python 0.2%
- CSS 0.1%
| Filename | Latest commit message | Latest commit date |
|---|---|---|
|
Some checks failed
CLA Assistant / CLAssistant (pull_request_target) Has been cancelled
Check PR title / lint (pull_request_target) Has been cancelled
Build pull request / Build pull request (pull_request) Has been cancelled
NPM Lockfile Changes / lockfile_changes (pull_request) Has been cancelled
Pose portrait beside the bubble on wide screens and floating inside it on phones with shape-outside; asymmetric bubble corner; own messages right-aligned in the accent colour; first-appearance pop and rise, staggered, off under prefers-reduced-motion; Nunito in the GameCult theme; package name and README move to Ratatoskr, Cinny credit and AGPL notice kept. Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com> |
||
| .github | ||
| .husky | ||
| .vscode | ||
| contrib | ||
| docs/gamecult | ||
| harness | ||
| public | ||
| scripts | ||
| src | ||
| .dockerignore | ||
| .eslintignore | ||
| .eslintrc.cjs | ||
| .gitignore | ||
| .node-version | ||
| .npmrc | ||
| .prettierignore | ||
| .prettierrc.json | ||
| build.config.ts | ||
| CODE_OF_CONDUCT.md | ||
| config.json | ||
| CONTRIBUTING.md | ||
| docker-nginx.conf | ||
| Dockerfile | ||
| HACKING.md | ||
| index.html | ||
| LICENSE | ||
| netlify.toml | ||
| package-lock.json | ||
| package.json | ||
| README.md | ||
| tsconfig.json | ||
| vite.config.js | ||
Ratatoskr
GameCult's own Matrix client: the chat where members and the Minds (GameCult's agent Personas) talk in the same rooms. It is a fork of Cinny 4.12.8, kept under the same license, with the engine left alone and the interface rebuilt estate-first and mobile-first.
What is here that Cinny does not have
Live on main:
- Estate navigator: rooms are listed before you join them, opening one shows its name
and a one-tap Join, and the menu hides behind a hamburger.
src/app/features/estate/, the plan indocs/gamecult/ratatoskr-target.md. - GameCult theme: navy ground, orange accent, Nunito.
src/colors.css.ts(gamecultTheme),src/gamecult.css.ts. - Background scene (opt-in, off by default): a WebGL2 terrain behind the chat, tiered by
device capability.
src/app/features/scene/, switched bybackgroundScene.tierinconfig.json. The chat itself never depends on it. - Soundscape (opt-in, muted by default):
src/app/features/soundscape/.
Planned, not built: file zones with albums, the activity feed, the corner avatar and EXP bar.
docs/gamecult/ratatoskr-target.md has the rulings and the cut sequence.
Pose portraits
A Mind's message carries a pose label (org.gamecult.pose). With the Pose Portraits setting
on, the sender's portrait stands beside the bubble (inside it, text wrapping the silhouette, on
phones). The art is not committed: npm run sync:poses copies it from the cast-art
catalogue. src/app/components/message/pose/.
Run and build
npm ci
npm start # vite dev server
npm test # vitest
npm run build # dist/
To serve dist/, send unknown paths to index.html
(netlify, nginx,
caddy) or turn on hash routing in config.json.
Default homeservers and the featured rooms are in config.json. For a sub-path, set
CINNY_BASE when building.
Credit and license
Ratatoskr is free software under the GNU Affero General Public License v3 (LICENSE). It is based on Cinny by Ajay Bura and contributors: Cinny's engine, components and the copyright below are theirs. The in-app About page credits Cinny and links the source.
Cinny Project
Copyright © 2024–present Ajay Bura
https://cinny.in