Commit graph

12380 commits

Author SHA1 Message Date
Jack
f910c8a567
chore: prettier upgrade (@miodec) (#7159) 2025-11-27 00:20:09 +01:00
Miodec
12f206eeca fix: ts issues (how did this get past ci?) 2025-11-27 00:05:41 +01:00
sapbotgit
a875aa6ede
impr(quotes): Add quotes from eChat source code (@sapbotgit) (#7154)
### Description

Different snippets of code from my old, dead project.

### Checks

- [X] Adding quotes?
- [ ] Make sure to include translations for the quotes in the
description (or another comment) so we can verify their content.
- [ ] Adding a language?
- Make sure to follow the [languages
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md)
  - [ ] Add language to `packages/schemas/src/languages.ts`
- [ ] Add language to exactly one group in
`frontend/src/ts/constants/languages.ts`
  - [ ] Add language json file to `frontend/static/languages` 
- [ ] Adding a theme?
- Make sure to follow the [themes
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/THEMES.md)
  - [ ] Add theme to `packages/schemas/src/themes.ts`
  - [ ] Add theme to `frontend/src/ts/constants/themes.ts`
  - [ ] Add theme css file to `frontend/static/themes`
- [ ] Add some screenshot of the theme, especially with different test
settings (colorful, flip colors) to your pull request
- [ ] Adding a layout?
- [ ] Make sure to follow the [layouts
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md)
  - [ ] Add layout to `packages/schemas/src/layouts.ts`
  - [ ] Add layout json file to `frontend/static/layouts` 
- [ ] Adding a font?
- Make sure to follow the [themes
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/FONTS.md)
  - [ ] Add font file  to `frontend/static/webfonts`
  - [ ] Add font to `packages/schemas/src/fonts.ts`
  - [ ] Add font to `frontend/src/ts/constants/fonts.ts`
- [ ] Check if any open issues are related to this PR; if so, be sure to
tag them below.
- [ ] Make sure the PR title follows the Conventional Commits standard.
(https://www.conventionalcommits.org for more info)
- [ ] Make sure to include your GitHub username prefixed with @ inside
parentheses at the end of the PR title.

<!-- label(optional scope): pull request title (@your_github_username)
-->

<!-- I know I know they seem boring but please do them, they help us and
you will find out it also helps you.-->

<!-- the issue(s) your PR resolves if any (delete if that is not the
case) -->
<!-- please also reference any issues and or PRs related to your pull
request -->
<!-- Also remove it if you are not following any issues. -->

<!-- pro tip: you can mention an issue, PR, or discussion on GitHub by
referencing its hash number e.g:
[#1234](https://github.com/monkeytypegame/monkeytype/pull/1234) -->

<!-- pro tip: you can press . (dot or period) in the code tab of any
GitHub repo to get access to GitHub's VS Code web editor Enjoy! :) -->
2025-11-26 23:33:32 +01:00
NeraShi
c2691b334e
impr(quotes): add Russian quotes (@NeraShi) (#7152)
### Description

Some quotes from my favourite literature.

### Translations
id_1151: Almost five years! There were probably moments today when the
living Daisy did not quite match the Daisy of his dreams - and it was
not her fault, but the immense life force of the image he had created.
This image was better than her, better than anything in the world. He
shaped it with the genuine passion of an artist, constantly adding
details, decorating every bright feather that came into his hand. No
tangible, real charm can compare to what a person can accumulate in the
depths of their imagination.
id_1152: Gatsby believed in the green light, the gleam of an incredible
future happiness that recedes each year. Even if it eluded him today,
tomorrow we will run faster, reach further... And one fine morning... So
we try to swim forward, struggling against the current, and it keeps
pushing our little boats back into the past.
id_1153: They say emotional wounds heal - a thoughtless analogy to
bodily injuries, but in life it is not so. Such a wound may shrink,
partially close, but it is always an open wound, even if no larger than
a pinprick. The trace of suffered pain can perhaps be compared to the
loss of a finger or sight in one eye. You come to terms with the injury,
remembering it maybe only once a year - but when it suddenly comes to
mind, there is no help for it.
id_1154: Youth is like a plate piled high with sweets. Sentimental
people claim they would like to return to the simple, pure state in
which they existed before tasting the sweets. This is incorrect. They
would like to experience those pleasurable sensations again.
id_1155: Self-sacrifice, like a high elective office or inherited power,
for some people at some times is a luxury, yet it brings not guarantee
but responsibility, not calm but desperate risk. By its own inertia, it
can push one to ruin — an emotional wave causes it, and the person is
left alone forever on a bare rock of hopelessness.
id_1156: There is so much within me that I want to express. But it is
all so immense. I cannot find the words, I cannot convey what is inside.
Sometimes it feels as if the whole world, all of life, everything in
existence resides within me and demands: be our voice. I feel, oh, I
don’t know how to explain... I feel its vastness, and when I begin to
speak, it comes out as childish babble. How difficult it is to convey
feeling, sensation in words, on paper or aloud, so that the reader or
listener feels the same as you. It is a great task.
id_1157: Facing life in all its forms, whirling in its changing vortex,
Martin learned one rule: when playing an unfamiliar game, give the first
move to another. This rule saved him thousands of times, honing his
observation. He knew how to scrutinize the unknown and wait until a
weakness or vulnerable point revealed itself. Just as in a boxing match,
you test the opponent to find a weakness. And once found, - long
experience taught him - use it fully.
id_1158: Wherever he went, he was liked by everyone, because whether in
work or in play, he remained true to himself, always ready and able to
fight for his rights and demand respect. But he never put down roots.
Those around him were pleased, but he himself was never fully content.
There was no peace in him; he was constantly drawn and beckoned,
wandering through life, not knowing what he sought or where the call
came from, until he discovered books, creativity, and love.
id_1159: The dream of love was more important to him than the dream of
knowledge. The world seemed wondrous not because it consisted of
molecules and atoms obeying some mysterious laws - it seemed wondrous
because Ruth lived in it. She was a miracle, one that had never appeared
to him even in dreams.
id_1160: In the mouths of these people, the books he had read came
alive. They spoke passionately, fervently. Thought burned them, as
alcohol or anger might burn others. Philosophy was no longer dry printed
lines from legendary demigods like Kant or Spencer. Philosophy had come
alive, embodied in these two, filled with boiling crimson blood,
transforming their faces.

### Checks

- [x] Adding quotes?
- [x] Make sure to include translations for the quotes in the
description (or another comment) so we can verify their content.
- [x] Check if any open issues are related to this PR; if so, be sure to
tag them below.
- [x] Make sure the PR title follows the Conventional Commits standard.
(https://www.conventionalcommits.org for more info)
- [x] Make sure to include your GitHub username prefixed with @ inside
parentheses at the end of the PR title.
2025-11-26 23:31:24 +01:00
Christian Fehmer
71b5d22159
refactor: Use class for validateWithIndicator (@fehmer) (#7151)
In preparation for the ElementWithUtils refactoring
2025-11-26 23:29:57 +01:00
Christian Fehmer
227a522024
refactor: use modern api for toggle fullscreen (@fehmer) (#7150) 2025-11-26 23:28:39 +01:00
Christian Fehmer
aafabeb78d
fix(friends): proper display of pending requests on small screens (@fehmer) (#7148) 2025-11-26 23:27:30 +01:00
GreenvillSSnick
14895f64a5
chore: add more words to hinglish language(hinglish.json) (@GreenvillSSnick) (#7138)
### Description

I added some new words to /frontend/static/languages/hinglish.json

Translations:

barre: outside
durghatana: accident
oopar: above
sabse: most
sveekaar: accept

### Checks

- [ ] Adding quotes?
- [ ] Make sure to include translations for the quotes in the
description (or another comment) so we can verify their content.
- [ ] Adding a language?
- Make sure to follow the [languages
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md)
  - [] Add language to `packages/schemas/src/languages.ts`
- [ ] Add language to exactly one group in
`frontend/src/ts/constants/languages.ts`
  - [ ] Add language json file to `frontend/static/languages` 
- [ ] Adding a theme?
- Make sure to follow the [themes
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/THEMES.md)
  - [ ] Add theme to `packages/schemas/src/themes.ts`
  - [ ] Add theme to `frontend/src/ts/constants/themes.ts`
  - [ ] Add theme css file to `frontend/static/themes`
- [ ] Add some screenshot of the theme, especially with different test
settings (colorful, flip colors) to your pull request
- [ ] Adding a layout?
- [ ] Make sure to follow the [layouts
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md)
  - [ ] Add layout to `packages/schemas/src/layouts.ts`
  - [ ] Add layout json file to `frontend/static/layouts` 
- [ ] Adding a font?
- Make sure to follow the [themes
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/FONTS.md)
  - [ ] Add font file  to `frontend/static/webfonts`
  - [ ] Add font to `packages/schemas/src/fonts.ts`
  - [ ] Add font to `frontend/src/ts/constants/fonts.ts`
- [x] Check if any open issues are related to this PR; if so, be sure to
tag them below.
- [x] Make sure the PR title follows the Conventional Commits standard.
(https://www.conventionalcommits.org for more info)
- [x] Make sure to include your GitHub username prefixed with @ inside
parentheses at the end of the PR title.
2025-11-26 23:16:46 +01:00
Christian Fehmer
0a4043de45
impr: validate username on profile search page (@fehmer) (#7132)
fixes #7131
2025-11-26 23:03:52 +01:00
Étienne BERSAC
b7ddb26000
fix(language): replace oe with œ where relevant (@bersace) (#7130)
### Description

Fix more ligatures on French.

Supersedes #7111 

### Checks


- [x] Check if any open issues are related to this PR; if so, be sure to
tag them below.
- [x] Make sure the PR title follows the Conventional Commits standard.
(https://www.conventionalcommits.org for more info)
- [x] Make sure to include your GitHub username prefixed with @ inside
parentheses at the end of the PR title.

<!-- label(optional scope): pull request title (@your_github_username)
-->

<!-- I know I know they seem boring but please do them, they help us and
you will find out it also helps you.-->


<!-- the issue(s) your PR resolves if any (delete if that is not the
case) -->
<!-- please also reference any issues and or PRs related to your pull
request -->
<!-- Also remove it if you are not following any issues. -->

<!-- pro tip: you can mention an issue, PR, or discussion on GitHub by
referencing its hash number e.g:
[#1234](https://github.com/monkeytypegame/monkeytype/pull/1234) -->

<!-- pro tip: you can press . (dot or period) in the code tab of any
GitHub repo to get access to GitHub's VS Code web editor Enjoy! :) -->
2025-11-26 23:03:18 +01:00
Lodun Coombs
c99f504f3b
fix(keymap): prevent tilde key from highlighting entire keymap (@LodunCoombs) (#7128) 2025-11-26 23:02:35 +01:00
Leonabcd123
f54c8a8cd8
impr(practice-words): Add option to practice missed and slow words from commandline (@Leonabcd123) (#7125)
### Description

Added an option to practice both missed and slow words from the command
line by doing esc -> Practice words -> both.

Implements #5753
2025-11-26 22:51:08 +01:00
28Zapper
31e07e28ab
impr(quotes): add quote to the english repository (@28Zapper) (#7113)
impr(quotes): Added a quote from UNDERTALE to
`./frontend/static/quotes/english.json`. (@28Zapper)

---------

Co-authored-by: Miodec <13181393+Miodec@users.noreply.github.com>
2025-11-26 22:40:56 +01:00
Leonabcd123
e8339f0a1f
feat(funbox): Add rot13 funbox (@Leonabcd123) (#7116)
### Description

Added a new funbox mode that implements the rot13 cipher, shifting each
character over by 13 places.

I'm not really sure which properties fit best with this...

Implements #6565
2025-11-26 22:40:10 +01:00
Jérémie Roquet
ddd5eb40d7
fix(language): add missing ligatures in french_10k (@Arkanosis) (#7111)
In some words, only the ligature was missing; in others, the letters
were too.

Missing ligature only:
 - cœur
 - œil
 - œuvre

Missing letters as well:
 - manœuvres
 - manœuvre
 - chœur
 - nœud
 - coup d'œil
 - blanc d'œuf
2025-11-26 22:32:51 +01:00
Aquaduckd
dcc4e40529
fix(layout): pine v4 (#7110)
the K key should be lowercase on the main layer
2025-11-26 22:32:07 +01:00
Miodec
60d1aac72e fix: composition update not making sounds 2025-11-26 17:52:24 +01:00
Miodec
f63972a63c fix: ellipsis not working correctly
closes #7156
closes #7149
2025-11-26 17:43:13 +01:00
Miodec
0faccf7cb1 chore: release v25.48.0 2025-11-26 13:17:33 +01:00
Miodec
a552272cd4 fix: skill issue fix not fitting on mobile screens 2025-11-26 10:45:24 +01:00
Miodec
3375419023 fix: unable to enter fullscreen on result page 2025-11-26 10:08:57 +01:00
Miodec
0d9a1d9da5 fix: backspace always playing error sound 2025-11-25 18:39:15 +01:00
Miodec
68266101d0 refactor: move data normalization to a function 2025-11-25 10:53:45 +01:00
Miodec
43e0bc783f refactor: move const inside an if 2025-11-25 10:37:54 +01:00
Miodec
54b9220a2f fix: arrows funbox not working 2025-11-25 10:36:44 +01:00
Miodec
e3135550d5 fix: nospace not working 2025-11-25 10:23:07 +01:00
Miodec
3dfea100d1 chore: upgrade typescript
also disables declaration file generation since we dont use them anyway
2025-11-24 13:33:49 +01:00
Miodec
aad3912eee fix: set korean status based on generated words 2025-11-23 22:46:57 +01:00
Miodec
cc9eee1986 chore: reorder folders 2025-11-23 22:21:02 +01:00
Miodec
f4f4057dd9 fix(zen mode): newline not working 2025-11-23 21:40:43 +01:00
Leonabcd123
dfa716a41a
fix(test): restart not working in long tests (@Leonabcd123) (#7143)
### Description

Fixed a bug where you can't use shift + quick restart key to restart
long tests. I didn't touch the enter one because it seemed to use a
different logic (double tapping shift + enter) and I'm not sure why it
does.
2025-11-23 21:39:59 +01:00
Miodec
032844d023 feat: add show personal best
you can now view the pb for
current test settings right above
the test words, before starting the test
2025-11-23 19:30:30 +01:00
Miodec
eab1737ea9 fix: alt space highlighting correct word as incorrect
also updates tests to just use the implementation instead of mocking it
2025-11-23 19:24:35 +01:00
Miodec
d617513fcf chore: add comment 2025-11-23 19:24:35 +01:00
Miodec
4e7bda0238 fix(input): broken accents in safari
turns out safari uses a completely different event for composition ending
2025-11-23 19:24:35 +01:00
Miodec
f86f253561 fix: non-breaking space behaving like a character 2025-11-23 19:24:35 +01:00
Leonabcd123
595ff27766
fix(custom-theme): Remove duplicate .customTheme selectors (@Leonabcd123) (#7120)
### Description

Removed duplicate `.customTheme` selectors to make:

```
$(`.pageSettings .tabContent.customTheme #${color}[type='color']`).attr(
  "value"
)
```

Select the custom theme data inputs successfully.

Closes #7121
Closes #7122
2025-11-23 17:13:42 +01:00
Miodec
13d7752c6d chore: add command to fix skill issue 2025-11-23 16:04:35 +01:00
Jack
ea84adfb42
refactor: input rewrite v3 (@miodec) (#7119)
input goes brr
2025-11-23 15:52:52 +01:00
Miodec
04d9ed2418 chore: add initial value 2025-11-22 19:48:15 +01:00
Miodec
bd5b91e669 chore: lower min fps to 15 2025-11-21 19:08:04 +01:00
Miodec
a5f2a5be9f fix: double caret on webkit devices 2025-11-20 17:53:10 +01:00
Miodec
2107c87fdb chore: upgrade oxlint
also enables prefer-includes
2025-11-20 12:22:58 +01:00
Miodec
8e9379203e chore: add protection against all custom theme colors being the same 2025-11-19 19:00:17 +01:00
Miodec
6c3adc0e96 chore: change from type assertion to type definition for stronger type checking 2025-11-19 12:55:16 +01:00
Miodec
36574b4096 impr: add monkey caret style
also moves caret images to a folder
2025-11-19 11:08:36 +01:00
Miodec
5a9038cfef chore: move code 2025-11-18 20:01:55 +01:00
Miodec
3454da18e0 fix(animation modal): animations stacking unnecessairly 2025-11-18 17:23:44 +01:00
Miodec
fa669fb274 fix: custom theme color pickers not working 2025-11-18 16:35:18 +01:00
Miodec
4cc1c09561 chore: move files 2025-11-17 13:02:15 +01:00