diff options
| author | srdusr <[email protected]> | 2025-12-06 00:58:00 +0200 |
|---|---|---|
| committer | srdusr <[email protected]> | 2025-12-06 00:58:00 +0200 |
| commit | 24f1eb6cc611f458c45f0ac4046efce51211d7d3 (patch) | |
| tree | 3cd2193d9439921737d57bf3c8452d275faae100 /data/packs/anime.json | |
| parent | 076f29369e51dfb5798f70099a330ebeb1b66a4e (diff) | |
| download | typerpunk-24f1eb6cc611f458c45f0ac4046efce51211d7d3.tar.gz typerpunk-24f1eb6cc611f458c45f0ac4046efce51211d7d3.zip | |
Fix content packs, seed the leaderboard, and add the missing site furniture
Naming
- "Typing Test" removed from the browser tab, the crate description and the
READMEs. The scope outgrew it: solo practice, live races, code drills and
adaptive weak-key training.
Content
- Movies was prose *about* film, not film quotes - the same mistake the
programming pack had. Replaced with 28 attributed lines. New anime pack,
28 lines across 24 series.
- This follows the model TypeRacer states outright ("type quotes from popular
music, songs, anime, comic books and more"): short excerpts attributed to
the work they came from. The scalable half of their approach is user
submission with moderation, which is a feature this does not have yet.
Leaderboard
- An empty board tells a new player nobody is here. Bots now race the eight
fixed-length leaderboard modes, seeded with a fortnight of backdated results
on first run and one new result every 90 seconds after.
- They are ordinary users carrying is_bot, returned by the same query and
labelled "bot" in the UI. Seeding a board is reasonable; passing synthetic
scores off as human results is not, so the flag travels with the row.
- Seeding is checked per mode. A single result from the live ticker used to
satisfy an "any bot results" guard and leave every other mode empty forever.
Stats
- The per-key accuracy data Practice mode is built on was computed, used to
generate text, and never shown. The screen now ranks your weakest keys with
the error rate and pause length behind each one.
- Added recent form against your lifetime average, best accuracy, and tests
this week.
Multiplayer standings
- Now place, racer, WPM, accuracy and time, with column labels - the columns
TypeRacer and 10FastFingers both show.
Site furniture
- Share (Web Share where available, clipboard otherwise - no third-party
button, no tracking script), a GitHub link, and a real privacy page written
from what the code actually stores rather than from a template.
Button hierarchy
- Everything was an outlined box of roughly equal weight, so a screen's one
real action, a settings toggle and a filter chip looked alike. Three tiers
now: primary (filled, one per screen), default (outlined), quiet (toggles
and filters, bordered only when hovered or active).
Diffstat (limited to 'data/packs/anime.json')
| -rw-r--r-- | data/packs/anime.json | 30 |
1 files changed, 30 insertions, 0 deletions
diff --git a/data/packs/anime.json b/data/packs/anime.json new file mode 100644 index 0000000..fbddcce --- /dev/null +++ b/data/packs/anime.json @@ -0,0 +1,30 @@ +[ + {"category":"anime","attribution":"Fullmetal Alchemist","content":"A lesson without pain is meaningless. That's because you cannot gain something without sacrificing something else in return."}, + {"category":"anime","attribution":"Fullmetal Alchemist","content":"Humankind cannot gain anything without first giving something in return. To obtain, something of equal value must be lost."}, + {"category":"anime","attribution":"Neon Genesis Evangelion","content":"Anywhere can be paradise as long as you have the will to live."}, + {"category":"anime","attribution":"Cowboy Bebop","content":"Whatever happens, happens."}, + {"category":"anime","attribution":"Ghost in the Shell","content":"Overspecialize, and you breed in weakness. It's slow death."}, + {"category":"anime","attribution":"Naruto","content":"Hard work is worthless for those that don't believe in themselves."}, + {"category":"anime","attribution":"Naruto","content":"When people are protecting something truly special to them, they truly can become as strong as they can be."}, + {"category":"anime","attribution":"One Piece","content":"If you don't take risks, you can't create a future."}, + {"category":"anime","attribution":"One Piece","content":"When do you think people die? When they are forgotten."}, + {"category":"anime","attribution":"Bleach","content":"We fear that which we cannot see."}, + {"category":"anime","attribution":"Death Note","content":"This world is rotten, and those who are making it rot deserve to die."}, + {"category":"anime","attribution":"Code Geass","content":"The only ones who should kill are those who are prepared to be killed."}, + {"category":"anime","attribution":"Attack on Titan","content":"If you win, you live. If you lose, you die. If you don't fight, you can't win."}, + {"category":"anime","attribution":"Attack on Titan","content":"The only thing we're allowed to do is to believe that we won't regret the choice we made."}, + {"category":"anime","attribution":"Gurren Lagann","content":"Don't believe in yourself. Believe in me who believes in you."}, + {"category":"anime","attribution":"Hunter x Hunter","content":"You should enjoy the little detours to the fullest, because that's where you'll find the things more important than what you want."}, + {"category":"anime","attribution":"Steins;Gate","content":"No matter how much I struggle, there's always a price to pay for changing the past."}, + {"category":"anime","attribution":"Mushishi","content":"Don't be afraid of things you don't understand. Just accept them as they are."}, + {"category":"anime","attribution":"Spirited Away","content":"Once you've met someone, you never really forget them."}, + {"category":"anime","attribution":"Princess Mononoke","content":"Life is suffering. It is hard. The world is cursed. But still, you find reasons to keep on living."}, + {"category":"anime","attribution":"Howl's Moving Castle","content":"A heart's a heavy burden."}, + {"category":"anime","attribution":"My Neighbor Totoro","content":"Trees and people used to be good friends."}, + {"category":"anime","attribution":"Your Name","content":"I feel like I'm always searching for someone, or something."}, + {"category":"anime","attribution":"March Comes in Like a Lion","content":"Even if you can't see it, the river keeps flowing under the ice."}, + {"category":"anime","attribution":"Vinland Saga","content":"You have no enemies. Nobody has any enemies. There is nobody that you should hurt."}, + {"category":"anime","attribution":"Mob Psycho 100","content":"If everyone is not special, maybe you can be what you want to be."}, + {"category":"anime","attribution":"Fruits Basket","content":"When you look at someone's kindness, it's like looking at the sun."}, + {"category":"anime","attribution":"A Silent Voice","content":"What I want more than anything is for you to live and help me live too."} +] |