Commit graph

12079 commits

Author SHA1 Message Date
Miodec
02fcad4a8b fix(caret): incorrect vertical position if word wrapped to the next line 2025-07-11 19:24:00 +02:00
Seif Soliman
2908331bff
fix(zen): remove input length check to prevent jump to hidden line (@byseif21, @NadAlaba) (#6714)
Closes #6697
2025-07-11 16:11:54 +02:00
Nad Alaba
ee02bee5db
fix(wordsInput): prevent automatic scrolling when focusing #wordsInput (@NadAlaba) (#6724)
fix #6723
2025-07-11 16:10:41 +02:00
Nad Alaba
14cf7b0584
refactor(hints): allow joinOverlappingHints to run on joined hints (@NadAlaba) (#6716) 2025-07-11 16:06:11 +02:00
Soufiane
0c5cb1b94c
impr(quotes): Add 4 english quotes from Better Call Saul (@Soufi-ane) (#6720)
### Description

Added 4 English quotes from Better Call Saul

### 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-07-11 16:02:52 +02:00
Christian Fehmer
477dc48673
fix(settings): fix highlight not visible with reduced-motion (@fehmer) (#6719)
Highlight was not visible if the user has prefers-reduced-motion
enabled.
2025-07-10 13:53:54 +02:00
Miodec
9a6fe31a62 fix(test): line not jumping when word overflows to the next line 2025-07-09 22:27:41 +02:00
Miodec
ed47e2ff91 fix(account settings): ape keys table not displaying correctly 2025-07-09 22:21:36 +02:00
Nad Alaba
5243d146db
refactor(hints): improve readability of hints functions (@NadAlaba) (#6629)
- Refactoring `joinOverlappingHints()` solves the issue of hints joining
when they correspond to letters of different lines, which was one of the
issues [#6636](https://github.com/monkeytypegame/monkeytype/pull/6636)
was supposed to solve.
- Also add a utility that debounces/locks async functions.
2025-07-09 18:39:55 +02:00
Christian Fehmer
83cc7590fb
impr(commandline): validate input for polyglot and layoutfluid (@fehmer) (#6709) 2025-07-09 18:03:27 +02:00
Christian Fehmer
b9cff9e504
impr(commandline): allow validation for text inputs (@fehmer) (#6692)
Co-authored-by: Miodec <jack@monkeytype.com>
2025-07-09 17:18:12 +02:00
Miodec
a12999d1fe chore: change insane badge colors per request 2025-07-09 12:49:17 +02:00
Miodec
178033c2ef impr: add perfection badge 2025-07-09 12:17:22 +02:00
Seif Soliman
2d430c1ae8
chore: fix syntax in example.env (@byseif21) (#6712) 2025-07-09 12:10:14 +02:00
Christian Fehmer
8be3a3cc9b
fix(leaderboard): use minTimeTyping from configuration (@fehmer) (#6710)
We added `minTimeTyping` to the configuration but it was only used to
create the indicies.
2025-07-09 12:09:49 +02:00
Christian Fehmer
0c1e1f2bd7
fix(settings): remove highlight if not set (@fehmer) (#6711)
1. config highlight was shown again if you
- select a deep link
- go to another page
- go to the settings page

2. when closing a settings group with a highlight the animation broke
3. when opening a closed settings group with a highlight the animation
was repeated
2025-07-09 12:08:53 +02:00
Rafael Romão
f13094777b
impr(layout): adjust the Romak layout according to the latest changes (@rafaelromao) (#6708)
Layout Page: https://rafaelromao.github.io/romak/
2025-07-09 12:08:09 +02:00
NeoNyaa
7b283b9e20
docs: Fix missing colons and comma in THEMES.md (@NeoNyaa) (#6707)
### Description

Fix missing colons and a single missing comma in the typescript
codeblock for the theme preview
#### Before

![Before](https://github.com/user-attachments/assets/0658f777-755f-46a0-9dbd-e8d7a11a8759)
#### After

![After](https://github.com/user-attachments/assets/48e4ec7d-af29-4b40-b3a4-2cb4dc752632)


### 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/contracts/src/schemas/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/contracts/src/schemas/themes.ts`
  - [ ] Add theme to `frontend/src/ts/constants/themes.ts`
  - [ ] Add theme css file to `frontend/static/themes`
- Also please add a screenshot of the theme, it would be extra awesome
if you do so!
- [ ] Adding a layout?
- [ ] Make sure to follow the [layouts
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md)
  - [ ] Add layout to `packages/contracts/src/schemas/layouts.ts`
  - [ ] Add layout json file to `frontend/static/layouts` 
- [ ] 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-07-09 12:07:46 +02:00
Christian Fehmer
07a04d1e59
fix(test): funbox does not remember settings (@fehmer) (#6701)
`funbox.applyConfig` was called twice when changing to test page.
`funbox.rememberSettings` was saving the wrong setting, as it was called
after the first `applyConfig`.

fixes #6700
2025-07-09 12:07:11 +02:00
Christian Fehmer
6b1bbfb432
fix: pin implementation (@fehmer) (#6699) 2025-07-09 12:05:18 +02:00
Seif Soliman
06ca8c2385
impr(ligatures): always enable in Zen and Custom modes for always correct script rendering (@byseif21) (#6694)
### Description

fixes broken ligature rendering in zen mode by always enabling
ligatures, ensuring that scripts like Arabic etc .. display correctly
and words connect as expected in any scenario or direction!.
2025-07-09 12:02:17 +02:00
Miodec
de2541727a chore: upgrade throttle debounce type 2025-07-04 23:25:17 +02:00
Miodec
8d15d6b181 fix(indicate typos): input sometimes being blocked in the middle of a word 2025-07-04 23:25:17 +02:00
Christian Fehmer
9e7740a330
refactor(config): remove special handling for font size 15 (@fehmer) (#6693) 2025-07-04 17:24:01 +02:00
Miodec
243722245c refactor(commandline): rework some parts of the code
extract icon getting code to a function
cleanup code that builds command html
update the placeholder of the input according to the active command group
fix some icon alignment
update some strings
2025-07-03 18:09:55 +02:00
Christian Fehmer
43198309e8
refactor: split key labels in layout files (@fehmer) (#6527) 2025-07-03 16:14:11 +02:00
Christian Fehmer
9b26793a6d
chore: update express to 5.1.0 (@fehmer) (#6691) 2025-07-03 15:43:01 +02:00
Antikore
14d5a728d9
impr(quotes): add 3 spanish quotes (@AntikoreDev) (#6676)
### Description

Added 3 quotes:
1. "Aquél que tiene un porqué para vivir, puede soportar casi cualquier
cómo" by Nietzsche, as translated from "He who has a why to live for can
bear almost any how."
(https://www.goodreads.com/quotes/137-he-who-has-a-why-to-live-for-can-bear)
2. "Es mucho más difícil crear que destruir, por eso solo los cobardes
se decantan por lo segundo." from Steve in A Minecraft Movie, as
translated from "It is harder to create than to destroy...that's why
cowards then choose the deuce"
(https://www.pcgamer.com/movies-tv/a-minecraft-movie-review/)
3. "Caminante, no hay camino, se hace camino al andar. Al andar se hace
el camino, y al volver la vista atrás se ve la senda que nunca se ha de
volver a pisar." by Antonio Machado
(https://www.espoesia.com/poesia/antonio-machado/caminante-no-hay-camino-antonio-machado/)

### 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] 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-07-03 14:36:56 +02:00
Christian Fehmer
e50d5e9cdd
feat(settings): add deep links to specific sections (@fehmer) (#6661)
Allow to deep-link to  a specific config setting.

Users in discord often ask how to enable a specific setting. Instead of
guiding them manually to the correct settings we can use a deep-link:


https://github.com/user-attachments/assets/90b99660-13ae-49bf-8ff2-c5e6da290070

Added a link next to the group on mouse over to copy the deep link to
the clipboard:


![image](https://github.com/user-attachments/assets/d389754e-f43a-4638-b18f-729e818ef170)

---------

Co-authored-by: Miodec <jack@monkeytype.com>
2025-07-01 20:46:43 +02:00
Miodec
ee6a9293c4 fix(funbox): remove difficulty xp bonus from instant messaging funbox 2025-07-01 19:14:11 +02:00
Seif Soliman
ce737e35b3
fix(caret): misalignment issue when switching between carets (@byseif21) (#6642)
### Description

fixes a caret misalignment issue that occurred when switching between
caret styles (e.g., from block/outline/underline to line caret).


#### Bug:

When switching caret styles, the **line caret** could retain the width
from the previous style (e.g., block), causing it to appear **visually
incorrect** until the next input.

#### Root Cause:

* The caret's inline `width` was **not reset** when changing styles, so
the new style inherited the old dimensions.
* `updatePosition()` was called **before** the style was fully applied,
leading to **incorrect positioning**.

---

### Fix

* Added a `subscribe` listener in `caret.ts` for the `"caretStyle"`
event.
* When the caret style changes:

  * The caret's inline width is **reset**:

    ```ts
    caret.style.width = "";
    ```
  * Its position is immediately **recalculated** with:

    ```ts
    updatePosition(true);
    ```

---------

Co-authored-by: Miodec <jack@monkeytype.com>
2025-07-01 19:06:43 +02:00
Christian Fehmer
de447c2cae
impr(account): add url params / deep links to account settings (@fehmer) (#6660)
Co-authored-by: Miodec <jack@monkeytype.com>
2025-07-01 18:02:06 +02:00
Christian Fehmer
084dc0d855
refactor(page): Move urlParams to beforeShow (@fehmer) (#6687) 2025-07-01 17:21:52 +02:00
Rangga Danu Kusuma
b9bb113ded
impr(quotes): add Indonesian quotes (@RKPYI) (#6680)
### Description

<!-- Please describe the change(s) made in your PR -->

### 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.
- [ ] Adding a language?
- Make sure to follow the [languages
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md)
  - [ ] Add language to `packages/contracts/src/schemas/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/contracts/src/schemas/themes.ts`
  - [ ] Add theme to `frontend/src/ts/constants/themes.ts`
  - [ ] Add theme css file to `frontend/static/themes`
- Also please add a screenshot of the theme, it would be extra awesome
if you do so!
- [ ] Adding a layout?
- [ ] Make sure to follow the [layouts
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md)
  - [ ] Add layout to `packages/contracts/src/schemas/layouts.ts`
  - [ ] Add layout json file to `frontend/static/layouts` 
- [ ] 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.-->

Closes #

<!-- 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-07-01 13:31:10 +02:00
Dhyan Rai
3135197476
fix(theme-picker): ensure color input is updated correctly in updateColors function (@raaid3) (#6678)
### Description

The input of type color doesn't properly get updated when the text input
for setting a custom color is modified with a value.

Video:
https://github.com/user-attachments/assets/87bcc3fd-a71c-460f-adb6-94945efb8b1f
2025-07-01 13:29:55 +02:00
47th
0f4d311c7c
fix(input-controller): update keymap UI on backspace in layout emulator (@47th) (#6675)
### Description

Fixes the keymap UI not highlighting the current letter to be typed when
backspaced to a previous word in layout emulator.



https://github.com/user-attachments/assets/12ba72d8-567b-4097-bbf6-407814140545
2025-07-01 13:25:35 +02:00
Plume
1ace28da4e
feat(font): add iosevka (@leana8959) (#6674)
### Description

<!-- Please describe the change(s) made in your PR -->
- added woff2 font file
- updated `frontend/static/{fonts/_list.json,styles/fonts.scss}` files

- tested locally, the font looks as such:

![image](https://github.com/user-attachments/assets/5a853477-335f-4c9e-b845-589f300243d4)


### 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/contracts/src/schemas/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/contracts/src/schemas/themes.ts`
  - [ ] Add theme to `frontend/src/ts/constants/themes.ts`
  - [ ] Add theme css file to `frontend/static/themes`
- Also please add a screenshot of the theme, it would be extra awesome
if you do so!
- [ ] Adding a layout?
- [ ] Make sure to follow the [layouts
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md)
  - [ ] Add layout to `packages/contracts/src/schemas/layouts.ts`
  - [ ] Add layout json file to `frontend/static/layouts` 
- [ ] 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-07-01 13:25:10 +02:00
Dhyan Rai
3724389a8b
impr(test-screenshot): Show download screenshot button when holding shift on result page (@raaid3) (#6673)
### Description

Previously, if you shift clicked on the `copy screenshot` button, you
could download a screenshot. But many users probably don't know about
this because it's not mentioned anywhere on the result page and there
are no visual indicators hinting at there being such a feature.

So I added a "(shift click to download)" message to the `aria-label` of
the `#saveScreenshot` button. I also added the ability for the icon
inside the button to switch to `fa-download` when shift is held as a
visual indicator that clicking the button would download a screenshot.

---------

Co-authored-by: Miodec <jack@monkeytype.com>
2025-07-01 13:24:33 +02:00
Christian Fehmer
afbff1bcf6
fix(docker): Allow to self-host without firebase config (@fehmer) (#6685)
fixes #6505
2025-07-01 13:06:06 +02:00
Seif Soliman
64322a2ed1
fix(commandline): prevent duplicate entries in Polyglot and Layoutfluid funbox modes (@byseif21) (#6684)
### Description
 #### Issue:
* It was possible to add duplicate languages to Polyglot mode or
duplicate layouts to Layoutfluid mode via the command line

#### fix:
* Prevent duplicate entries in Polyglot and Layoutfluid configs by
deduplicating values before saving, ensuring unique values regardless of
input source.
2025-07-01 13:00:57 +02:00
WormholeDragon
4fffc645f4
fix(quotes): replace long dash with short one in some quotes (@WormholeDragon) (#6686)
### Description

Replaced the long dash with a short dash in the last added quotes

### 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/contracts/src/schemas/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/contracts/src/schemas/themes.ts`
  - [ ] Add theme to `frontend/src/ts/constants/themes.ts`
  - [ ] Add theme css file to `frontend/static/themes`
- Also please add a screenshot of the theme, it would be extra awesome
if you do so!
- [ ] Adding a layout?
- [ ] Make sure to follow the [layouts
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md)
  - [ ] Add layout to `packages/contracts/src/schemas/layouts.ts`
  - [ ] Add layout json file to `frontend/static/layouts` 
- [ ] 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.-->

Closes #

<!-- 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-07-01 13:00:23 +02:00
Miodec
ebaf49dfd1 chore: release v25.27.0 2025-06-28 11:13:07 +02:00
Dhyan Rai
fdead53ba9
fix(theme-constroller): fix theme flashing behavior when switching custom themes in apply() (@raaid3) (#6670)
### Description

Closes [#6669](https://github.com/monkeytypegame/monkeytype/issues/6669)

<!-- 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-06-27 19:34:45 +02:00
Miodec
83a34c64d7 fix: cursor disappearing when hovering over buttons 2025-06-27 19:23:16 +02:00
Christian Fehmer
36dcfe2f7f
refactor: add url parameter handling to Page class (@fehmer) (#6668) 2025-06-27 19:03:37 +02:00
Christian Fehmer
677c328bed
chore(language): remove word from english_450k (@fehmer) (#6672)
remove word cimcumvention
2025-06-27 18:10:34 +02:00
Miodec
6133bd2fb2 impr: block Math.random from simple reassignments at runtime
!nuf
2025-06-27 15:43:33 +02:00
Seif Soliman
e4a102ac64
impr(results): allow PBs with stop on letter if accuracy is 100% (@byseif21) (#6611) 2025-06-26 17:11:15 +02:00
Seif Soliman
836345c57c
fix(inbox): size indicator not updating on item deletion (@byseif21) (#6649)
### Description

Closes #6648
2025-06-26 16:46:32 +02:00
jack rosenberg
cfff7120e4
fix(xp-bar): don't show attribute if it's 0 (@jackrosenberg) (#6664)
Only show accPenalty if it's relevant. Still need to build and test :)

### Description

<!-- Please describe the change(s) made in your PR -->

### 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/contracts/src/schemas/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/contracts/src/schemas/themes.ts`
  - [ ] Add theme to `frontend/src/ts/constants/themes.ts`
  - [ ] Add theme css file to `frontend/static/themes`
- Also please add a screenshot of the theme, it would be extra awesome
if you do so!
- [ ] Adding a layout?
- [ ] Make sure to follow the [layouts
documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md)
  - [ ] Add layout to `packages/contracts/src/schemas/layouts.ts`
  - [ ] Add layout json file to `frontend/static/layouts` 
- [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.-->

Closes #

<!-- 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-06-26 16:43:01 +02:00