"Every Character. One Arena."
Browse, battle and rank characters from ๐ฌ Movies ยท ๐บ TV ยท ๐ Anime ยท ๐ฎ Games ยท ๐ Comics & Manga.
| Feature | How it works | |
|---|---|---|
| ๐ | Global Rankings | Characters sorted by community Elo, filterable by category |
| โ๏ธ | Character Battles | Random 1v1 matchups โ click the winner, Elo updates for everyone |
| โญ | Power Levels | Editorial baseline 0โ100 shown alongside the community Elo |
| ๐ | Trending | Most-battled characters in the last 24 hours |
| ๐ | Leaderboards | Top fighters by Elo + top community judges by votes |
| ๐ฅ | User Profiles | Handle + emoji avatar; tracks battles judged, favorite champions, posts |
| ๐ | Discussions | Global feed plus per-character threads |
main.ts Hono API + static file serving (HTTP entrypoint)
db.ts SQLite schema + first-run seeding
seed.ts Starter roster of 33 characters
index.html App shell
style.css Theme
app.js Hash-routed client (rankings, battle, trending, leaderboard, discuss, character & user pages)
Rendering mermaid diagram...
Each battle uses K=32: the winner gains round(32 ร (1 โ expected)), the loser loses the same. Upsets move the needle more than expected wins.
Append to seed.ts (only seeds on an empty DB) or insert directly:
INSERT INTO characters (name, franchise, category, emoji, power, bio)
VALUES ('Vegeta', 'Dragon Ball', 'Anime', '๐', 96, 'Prince of all Saiyans.');
Categories: Movies, TV, Anime, Games, Comics.