[pull] master from monkeytypegame:master#806
Merged
pull[bot] merged 22 commits intoUncodedtech:masterfrom Feb 28, 2026
Merged
Conversation
) fix the limitation of dots effect wouldn't work correctly for ligature-based languages cuz connected letters cannot be rendered as individual dots. before it was not worth the fix for the theme only now after the new typed effect feat #7360 i think this needed. * introduces a small helper that breaks ligatures only after a word is finished, allowing the dots effect to render correctly while keeping ligatures intact during typing. * runs only when needed (on word completion or when the typed effect is switched to dots) and avoids any continuous checks or performance overhead. related #6472
### Description Add new akl vitrimak ### 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` - [ ] (optional) Add theme css file to `frontend/static/themes` - [ ] Add some screenshots 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 [fonts 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.--> 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](#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! :) --> --------- Co-authored-by: fehmer <3728838+fehmer@users.noreply.github.com> Co-authored-by: Miodec <jack@monkeytype.com>
Updates documentation to reflect the project's transition from Prettier to `oxc` (`oxfmt` and `oxlint`) for code formatting and linting. - `docs/CONTRIBUTING.md` - `docs/CONTRIBUTING_ADVANCED.md` Fixes #7491 --------- Co-authored-by: Jack <jack@monkeytype.com>
### Description `isPartOfSubgruop` -> `isPartOfSubgroup` Co-authored-by: Jack <jack@monkeytype.com>
fix some widths issue for the test bar:
ways to reproduce
* case 1
1- being logged in
2- switch to quote mode
3- log out
4- observe extra spacing before `all` button
* case 2
1- switch between modes s (e.g., time → quote)
2- open DevTools "to change size"
3- switch modes again and be lastly in quote mode selection
3- close DevTools
4- the bar incorrectly sized
* case 3
this have many inconstant way to reproduce but that will give what
happens shortly
1- stay in a mode other than quote
2- open the console and run `qsa("#testConfig .quoteLength
.textButton").removeClass("active")`
3- switch to quote mode
4- no buttons get rehighlighted as it should
---------
Co-authored-by: Jack <jack@monkeytype.com>
…rscores in its name (@Leonabcd123) (#7501) ### Description 1. Create new preset with an underscore in its name (e.g. `underscore_here`) 2. Notice that name still has underscores 3. Click on edit and save without making any changes 4. Notice that name has a space instead of an underscore 5. Click on edit 6. Notice that you can't save the preset because the space isn't replaced with an underscore This PR makes it so that we display the preset name with spaces, but when you edit it spaces are replaced with underscores. --------- Co-authored-by: Jack <jack@monkeytype.com>
## unable to select filter presets, chart not updating reproduce: - create two presets e.g. `all` and `last three month` - switch between presets The current preset doesnt get highlighted and the chart doesnt get updated. ## advanced filters - clear filters not working
We are using navigator.onLine to detect if the user is online. This is not very reliable and we get bug reports from people who are able to access the site but are prevented from logging in. > Browsers and operating systems leverage different heuristics to determine whether the device is online. In general, connection to LAN is considered online, even though the LAN may not have Internet access. > [...] On Windows, the online status is determined by whether it can reach a Microsoft home server, which may be blocked by firewalls or VPNs, even if the computer has Internet access. > Therefore, this property is inherently unreliable, and you __should not disable features based on the online status__, only provide hints when the user may seem offline. source: [mdn Navigator.onLine](https://developer.mozilla.org/en-US/docs/Web/API/Navigator/onLine) --------- Co-authored-by: Jack <jack@monkeytype.com> Co-authored-by: Miodec <13181393+Miodec@users.noreply.github.com>
…byseif21) (#7513) in the settings page, clicking "hide elements" or "danger zone" from the top quick nav did not open those sections when they were collapsed, unlike the other quick nav links, that's due to a mismatch between the visible label and the section’s class name. Steps to reproduce 1. open the settings page 2. collapse the hide elements or danger zone sections 3. scroll back up to the top quick nav and click one of them 4. section stays collapsed (does not open)
### Description Added two new English quotes to `english.json`: 1. "The only way to learn is by playing. The only way to win is by learning. And the only way to begin is by beginning." - Source: Sam Reich on Game Changer 2. "I will travel far beyond the path of reason. Take me back to Eden." - Source: Sleep Token These follow JSON standards and the `length` and `id` fields have been properly updated. --------- Co-authored-by: Miodec <jack@monkeytype.com>
### Description all sounds normalized using peak normalize: `ffmpeg-normalize "$file" -nt peak -t -10 -o "$file" -f -ext wav` some sounds were quiet like 'click', 'nk creams' - they are louder now, and some sounds were pretty loud, like 'fart-reverb' - it's a bit quieter now. ### Checks - [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.--> Co-authored-by: rzr <rzr>
…ests (@openvaibhav) (#7519) ### Description Single word custom tests (e.g. "a" or "I") were incorrectly flagged as "AFK detected" instead of "too short". This happens because AFK validation was evaluated before the "too short" validation inside the result checks chain. Since both checks exist in the same "else if" chain, the first match wins. Very short completed tests therefore triggered AFK before the "too short" condition was reached. This PR reorders the validation so that "too short" is evaluated before AFK detection. ### Reproduction 1. Go to custom mode 2. Set word count to 1 3. Complete a test with word "a" or "I" 4. Observe incorrect AFK message ### After Fix The test correctly shows: Test invalid - too short instead of: Test invalid - AFK detected ### Technical Notes No logic was modified, only validation priority was adjusted. Duration mismatch and difficulty checks remain unaffected. ### 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` - [ ] (optional) Add theme css file to `frontend/static/themes` - [ ] Add some screenshots 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 [fonts 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. <!-- 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 #7518 <!-- 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](#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! :) -->
### Description added miligram layout, made by me, inspired by engram ### 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` - [ ] (optional) Add theme css file to `frontend/static/themes` - [ ] Add some screenshots of the theme, especially with different test settings (colorful, flip colors) to your pull request - [x] Adding a layout? - [x] Make sure to follow the [layouts documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LAYOUTS.md) - [x] Add layout to `packages/schemas/src/layouts.ts` - [x] Add layout json file to `frontend/static/layouts` - [ ] Adding a font? - Make sure to follow the [fonts 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. - [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](#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! :) --> --------- Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com> Co-authored-by: Jack <jack@monkeytype.com>
`addClass("hidden")` -> `hide()`
`removeClass("hidden")` -> `show()`
Co-authored-by: Jack <jack@monkeytype.com>
…7529) ### Description This PR expands the **Kinyarwanda** vocabulary by adding **100 additional common words**. Building on the initial language support merged recently, these words were carefully curated from **Digital Umuganda** open-source datasets to improve the typing experience with more modern and frequently used terms. * Expanded word count from ~200 to ~300 words. * All new words are in lowercase and have been verified for duplicates using `check-assets-languages`. * Corrected minor BCP 47 properties to ensure full standards compliance. ### Checks * [ ] Adding quotes? * [x] Adding a language? * [x] Add language json file to `frontend/static/languages` (Updated existing file) * [ ] Adding a theme? * [ ] Adding a layout? * [ ] Adding a font? * [x] Check if any open issues are related to this PR. * [x] Make sure the PR title follows the Conventional Commits standard. * [x] Make sure to include your GitHub username prefixed with @ inside parentheses at the end of the PR title. **impr(languages): expand kinyarwanda word list (@cedrick13bienvenue)** ---
### Description This PR adds several quotes from popular Esperanto songs and poems, and adds some quotes from the Esperanto translation of The Hobbit by Christopher Gledhill and William Auld. ### 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` - [ ] (optional) Add theme css file to `frontend/static/themes` - [ ] Add some screenshots 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 [fonts 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. <!-- 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](#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! :) -->
### Description Check for quotes shorter than 60 characters (60 being the threshold mentioned in the [docs](https://github.com/monkeytypegame/monkeytype/blob/v26.6.0/docs/CONTRIBUTING.md?plain=1#L82)). --------- Co-authored-by: Jack <jack@monkeytype.com>
### Description - Adds Irish 1k word list (corpus-based) <br/> This PR adds a frequency-based **Irish 1k word list** to Monkeytype. ### Source The list is primarily based on Kevin Scannell’s @kscanne corpus-derived “Top 1000” Irish wordforms (Fleiscíniú project), which were extracted from a large corpus of Irish texts. The original list included typographic hyphenation for syllable breaking. These hyphens were removed to ensure compatibility with Monkeytype and to reflect standard written forms. A very small number of invalid or incompatible entries were replaced with common alternatives to maintain a clean 1000-word set. ### Rationale * Based on real-world corpus frequency * Wordform-based (not lemma-only), better suited for typing practice * Function-word heavy, which improves natural rhythm and realistic typing flow * Cleaned, deduplicated, and validated locally ### Changes * Added `irish_1k.json` (1000 non-duplicate common Irish words) * Updated `irish.json` (added valid BCP-47 code) * Updated `languages.ts` (registered `irish_1k`) * Updated `constants/languages.ts` (dropdown integration) ### Testing & changes to existing files. Tested locally in a browser after running `pnpm run dev`. It feels natural and well-balanced for B1/B2 level typing practice. Checked for duplicates. Added bcp47 to existing irish.json. ### Checks - [ ] Adding quotes? - [ ] Make sure to include translations for the quotes in the description (or another comment) so we can verify their content. - [X] Adding a language? - Make sure to follow the [languages documentation](https://github.com/monkeytypegame/monkeytype/blob/master/docs/LANGUAGES.md) - [X] Add language to `packages/schemas/src/languages.ts` - [X] Add language to exactly one group in `frontend/src/ts/constants/languages.ts` - [X] 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` - [ ] (optional) Add theme css file to `frontend/static/themes` - [ ] Add some screenshots 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 [fonts 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. <!-- 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](#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! :) -->
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
See Commits and Changes for more details.
Created by
pull[bot] (v2.0.0-alpha.4)
Can you help keep this open source service alive? 💖 Please sponsor : )