Commit graph

11698 commits

Author SHA1 Message Date
Miodec
f7666ab8e3 refactor: empty word appending in zen mode 2025-03-31 14:32:54 +02:00
Nad Alaba
bd22d8f708
refactor: split updateWordsHeight() and move some style changes to .scss files (@NadAlaba) (#5920) 2025-03-31 14:22:16 +02:00
Christian Fehmer
f7be839e74
chore: minify html for production build (@fehmer) (#6413) 2025-03-30 19:50:08 +02:00
Miodec
6aeab4d3fc refactor: convert ui element index to offset 2025-03-28 20:03:00 +01:00
Miodec
cfc810a7d8 impr(keymap): dynamic legends now show alt layer if supported by the layout 2025-03-27 16:19:40 +01:00
Γucky
6513e6481a
feat(layout): update Bepo and optimot, add bepo afnor (@GuckicheLorraine) (#6384) 2025-03-27 12:18:23 +01:00
Miodec
6441731e16 chore: release v25.13.0 2025-03-26 23:04:54 +01:00
Miodec
b9916b8b8d chore: trim branch string 2025-03-26 18:19:36 +01:00
Miodec
80a2492a06 fix: quote length 2025-03-26 17:47:55 +01:00
Miodec
97224ea9b2 fix(quotes): quote reports 2025-03-26 16:12:29 +01:00
Miodec
0c1b3509e1 impr: add alias to command
!nuf
2025-03-26 15:24:11 +01:00
dependabot[bot]
5002075dbd
build(deps-dev): bump vite from 6.0.11 to 6.0.12 in /frontend (#6405)
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite)
from 6.0.11 to 6.0.12.
<details>
<summary>Release notes</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/releases">vite's
releases</a>.</em></p>
<blockquote>
<h2>v6.0.12</h2>
<p>Please refer to <a
href="https://github.com/vitejs/vite/blob/v6.0.12/packages/vite/CHANGELOG.md">CHANGELOG.md</a>
for details.</p>
</blockquote>
</details>
<details>
<summary>Changelog</summary>
<p><em>Sourced from <a
href="https://github.com/vitejs/vite/blob/v6.0.12/packages/vite/CHANGELOG.md">vite's
changelog</a>.</em></p>
<blockquote>
<h2><!-- raw HTML omitted -->6.0.12 (2025-03-24)<!-- raw HTML omitted
--></h2>
<ul>
<li>fix: fs raw query with query separators (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19702">#19702</a>)
(<a
href="92ca12dc79">92ca12d</a>),
closes <a
href="https://redirect.github.com/vitejs/vite/issues/19702">#19702</a></li>
</ul>
</blockquote>
</details>
<details>
<summary>Commits</summary>
<ul>
<li><a
href="9d981f9d38"><code>9d981f9</code></a>
release: v6.0.12</li>
<li><a
href="92ca12dc79"><code>92ca12d</code></a>
fix: fs raw query with query separators (<a
href="https://github.com/vitejs/vite/tree/HEAD/packages/vite/issues/19702">#19702</a>)</li>
<li>See full diff in <a
href="https://github.com/vitejs/vite/commits/v6.0.12/packages/vite">compare
view</a></li>
</ul>
</details>
<br />


[![Dependabot compatibility
score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=vite&package-manager=npm_and_yarn&previous-version=6.0.11&new-version=6.0.12)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores)

Dependabot will resolve any conflicts with this PR as long as you don't
alter it yourself. You can also trigger a rebase manually by commenting
`@dependabot rebase`.

[//]: # (dependabot-automerge-start)
[//]: # (dependabot-automerge-end)

---

<details>
<summary>Dependabot commands and options</summary>
<br />

You can trigger Dependabot actions by commenting on this PR:
- `@dependabot rebase` will rebase this PR
- `@dependabot recreate` will recreate this PR, overwriting any edits
that have been made to it
- `@dependabot merge` will merge this PR after your CI passes on it
- `@dependabot squash and merge` will squash and merge this PR after
your CI passes on it
- `@dependabot cancel merge` will cancel a previously requested merge
and block automerging
- `@dependabot reopen` will reopen this PR if it is closed
- `@dependabot close` will close this PR and stop Dependabot recreating
it. You can achieve the same result by closing it manually
- `@dependabot show <dependency name> ignore conditions` will show all
of the ignore conditions of the specified dependency
- `@dependabot ignore this major version` will close this PR and stop
Dependabot creating any more for this major version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this minor version` will close this PR and stop
Dependabot creating any more for this minor version (unless you reopen
the PR or upgrade to it yourself)
- `@dependabot ignore this dependency` will close this PR and stop
Dependabot creating any more for this dependency (unless you reopen the
PR or upgrade to it yourself)
You can disable automated security fix PRs for this repo from the
[Security Alerts
page](https://github.com/monkeytypegame/monkeytype/network/alerts).

</details>

---------

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
Co-authored-by: Miodec <jack@monkeytype.com>
2025-03-26 15:21:00 +01:00
Christian Fehmer
d181406e31
chore: minify json files (@fehmer) (#6404) 2025-03-26 15:06:01 +01:00
Christian Fehmer
b1d75fb077
fix: local development using docker not working with pnpm (@fehmer) (#6401)
!nuf
2025-03-26 13:11:02 +01:00
Tristan Marion
818e72fecc
feat(language): add french bitoduc (@TristanMarion) (#6400)
### Description

This PR introduces a new language variation to MonkeyType: Bitoduc, a
French variation that exclusively contains words from
[bitoduc.fr](http://bitoduc.fr/). Bitoduc is a humorous project that
maps English tech terms to French alternatives, often with a creative or
amusing twist.

#### Changes
Added bitoduc as a new language variation.
Included a word list sourced from [bitoduc.fr](http://bitoduc.fr/).
Updated language selection to include bitoduc.

<img width="1347" alt="Screenshot 2025-03-24 at 09 41 15"
src="https://github.com/user-attachments/assets/13be87e1-5363-4dd2-adf4-bf002a1e1170"
/>

### Checks

- [x] Adding a language or a theme?
- [x] If is a language, did you edit `_list.json`, `_groups.json` and
add `languages.json`?
- [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-03-26 13:10:17 +01:00
Huterok Bebrov
ad5c077679
fix(language): remove rustlang "box" keyword (@Huterenok) (#6397)
### Description

Removes Rust language "box" keyword, as it was removed a long time ago
in rust-lang/rust#49733
2025-03-26 13:09:19 +01:00
Atharv Gokule
fc1602b1ef
fix(language): fixed Marathi not showing up in the language list (@agokule) (#6395)
### Description

Right now, the Marathi language should exist on Monkeytype (there is a
`marathi.json` file in both `frontend/static/quotes` and
`frontend/static/languages`) but it doesn't. This is probably because it
isn't in the `_list.json` and `_groups.json` file, so I added it to
those files.

This is related to #4174.

---------

Co-authored-by: Atharv Gokule <106445077+username121546434@users.noreply.github.com>
2025-03-26 13:07:36 +01:00
Christian Fehmer
978878c180
feat(account page): change test activity graph starting day depending on the browser locale (@fehmer) (#6385)
implements #6356
2025-03-25 12:55:07 +01:00
Абибуллаев Сулейман
821478e617
feat(language): add crimean tatar latin and cyrillic (@WhiteSun13) (#6369)
### Description

Add crimean tatar language ( latin & cyrillic ) 200, 1k, 5k, 10k, 15k
<!-- 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.
- [x] Adding a language or a theme?
- [x] If is a language, did you edit `_list.json`, `_groups.json` and
add `languages.json`?
  - [ ] If is a theme, did you add the theme.css?
- Also please add a screenshot of the theme, it would be extra awesome
if you do so!
- [ ] 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-03-25 12:48:30 +01:00
Haz
828e6bfc9e
feat(language): add bosnian (@aitchz) (#6350)
Add Bosnian 

### Checks
- [x] If is a language, did you edit `_list.json`, `_groups.json` and
add `languages.json`?
- [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-03-25 12:43:42 +01:00
Seif Soliman
785d6efef5
feat(langugae): add arabic_egypt (@byseif21) (#6337)
### Description  

This PR adds **Arabic_Egypt** as a new language option and includes **10
meaningful Arabic quotes**.

#### Why add Arabic_Egypt?  
Arabic_Egypt (العربية المصرية) is the most widely used form of Arabic in
**daily written communication**, especially in **social media,
messaging, and informal writing**. While Modern Standard Arabic (MSA) is
already present, it is primarily used for **formal** contexts like news
and official documents. The addition of Arabic_Egypt allows users to
type in the way they naturally communicate online.

#### Added Quotes  
I have also included **10 new Arabic quotes** from well-known writers
and thinkers. These quotes are meaningful and align with the existing
quote selection. Below are the translations for verification:

- "Knowledge is not in the abundance of information, but in the depth of
understanding and good application. Science without action is like a
tree without fruit." – Muhammad Al-Ghazali
- "Life is too short to be wasted in sorrow, and too beautiful to be
consumed by hatred. Choose to be positive even in the most difficult
circumstances." – Adham Sharqawi
- "A true human is one who can see beauty in people's differences,
richness in their diversity, and wisdom in the multiplicity of
perspectives." – Muhammad Al-Sharif
- "Do not measure yourself by what others possess, but by what personal
development you have achieved. Success is not in similarity, but in
distinction." – Zaki Naguib Mahmoud
- "Failure is not a final dismissal, but a turning point that teaches
you how to rise stronger. Every experience is a lesson, and every
stumble is the beginning of a new path." – Farouk Jweida
- "Silence is sometimes more eloquent than speech, and listening is
deeper than responding. He who knows the value of words knows the value
of silence." – Ali Shariati
- "How beautiful it is to be a human who respects others' differences,
sees diversity as an enrichment rather than a threat, and views
differences as an opportunity to learn, not a cause for conflict." –
Samih Al-Qasim
- "Wisdom is not in possessing knowledge, but in the ability to be
humble and acknowledge what we do not know. The true scholar learns
every day." – Naguib Mahfouz
- "Do not carry the worries of the past, nor the anxiety of the future.
Live the moment deeply, and create your happiness from the breadth of
your spirit and the vastness of your heart." – Ahmed Amin
- "True strength is not in the ability to silence others, but in the
capacity to listen and understand. Dialogue is a bridge that connects
minds and hearts." – Muhammad Al-Sharif

---

### Checks  

- [x] Adding quotes?  
  - [x] Included translations for verification.  
- [x] Adding a language?  
- [x] Edited `_list.json`, `_groups.json`, and added `languages.json`.
- [x] Checked for related issues (none found).  
- [x] PR title follows **Conventional Commits standard**.  
- [x] GitHub username included in PR title.  

Closes #
2025-03-25 12:42:59 +01:00
Miodec
bf7f2ccfa8 impr: update maintenance/server down message based on instatus api 2025-03-23 12:55:59 +01:00
Miodec
d567130053 chore: remove logs, cache is fine 2025-03-20 17:56:10 +01:00
Miodec
33977b71e6 chore: ugly console log to check if the cache is working for sure 2025-03-20 17:50:40 +01:00
Miodec
4bfe6c9bf7 impr: cache leaderboard collection size to improve performance
!nuf
2025-03-20 14:54:29 +01:00
Miodec
7f4cf76141 impr: parse username locally before querying the server
also fixes non user friendly error messages

!nuf
2025-03-18 20:18:32 +01:00
Miodec
313897d0d1 fix: sign up only working on the second attempt 2025-03-18 20:12:03 +01:00
Miodec
daa3668848 docs: add orderedByFrequency to the language adding guide 2025-03-18 13:54:09 +01:00
Goldy Yan
f63b966e2c
feat(theme): add Phantom (@Cybertaco360) (#6348)
### Description

Added new theme "Phantom", a dark and light blue theme utilizing
glowing. (Originally going to be Tokyo Night if someone wants to make
one)

### Checks

 - [ ] Adding quotes?
- [x] Make sure to include translations for the quotes in the
description (or another comment) so we can verify their content.
- [x] Adding a language or a theme?
- [ ] If is a language, did you edit `_list.json`, `_groups.json` and
add `languages.json`?
  - [x] If is a theme, did you add the theme.css?
- Also please add a screenshot of the theme, it would be extra awesome
if you do so!
- [ ] 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! :) -->


![image](https://github.com/user-attachments/assets/8800c232-4321-4f17-8570-52c2c7001acf)

![image](https://github.com/user-attachments/assets/31e7e98e-dddc-42b7-8bd5-9bf91cdce620)

![image](https://github.com/user-attachments/assets/5406c864-fb67-49c0-b84c-7ba4493dd811)

![image](https://github.com/user-attachments/assets/d9fbe5bd-2241-4407-85fa-7c7aed25046b)
2025-03-18 13:44:29 +01:00
Christian Fehmer
cef3ff57c7
impr(result page): clicking on daily leaderboard rank opens the leaderboards page the user is on (@fehmer) (#6380)
Co-authored-by: Miodec <jack@monkeytype.com>
2025-03-18 13:18:12 +01:00
Anurag Bandyopadhyay
5ba8f007e2
impr(quotes): add docker_file quotes (@SoulPancake) (#6365) 2025-03-18 12:31:21 +01:00
Exotic
fec3e316ff
feat(font): add Geist and Geist Mono (@extoci) (#6379)
### 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 or a theme?
- [ ] If is a language, did you edit `_list.json`, `_groups.json` and
add `languages.json`?
  - [ ] If is a theme, did you add the theme.css?
- Also please add a screenshot of the theme, it would be extra awesome
if you do so!
- [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! :) -->

Co-authored-by: Extoci <extoci@users.noreply.github.com>
2025-03-18 12:30:32 +01:00
Nad Alaba
6686834eeb
chore(workflows): use correct name of action input (@NadAlaba) (#6378)
change the name of the input action that should've been changed in #6344
when the action was changed.
Sorry!
2025-03-17 16:30:41 +01:00
Christian Fehmer
e647d875f0
impr: error handling on user deletion (@fehmer) (#6363)
!nuf
2025-03-17 16:05:46 +01:00
Miodec
a94a6db75a ci: use full_name instead 2025-03-17 14:10:42 +01:00
Miodec
44955bf750 ci: pretty fix fix attempt 2025-03-17 14:07:40 +01:00
Christian Fehmer
b7c4166ab6
ci: fix prettier workflow (@fehmer) (#6371)
fixes
https://github.com/monkeytypegame/monkeytype/actions/runs/13846153945/job/38746363714#step:7:58
2025-03-17 13:53:57 +01:00
5quidwyrm
8fa99d87d0
feat(layout): add Sword (@5quiwyrm) (#6366)
### Description
Added Sword layout, created by Duodeath.
2025-03-17 12:22:50 +01:00
Miodec
a3bd06950b fix(theme): adjust error colors in ms cupcakes theme
closes #6370
2025-03-17 12:20:46 +01:00
Nad Alaba
2e1c7eb967
chore(workflows): use specific version of add-remove-label-action (@NadAlaba) (#6368)
revert fixing major version only of the
`PauMAVA/add-remove-label-action` action from #6344 because this action
does not have a `v1` tag

Co-authored-by: Christian Fehmer <fehmer@users.noreply.github.com>
2025-03-17 12:20:25 +01:00
fau
ee665c200b
impr(language): add more keywords and chars to code_pascal (@fau) (#6341)
### Description

Added more keywords from Delphi and Free Pascal and special chars used
in pascal code.
2025-03-17 12:13:06 +01:00
Miodec
f84f8508ca fix: scroll to top button remaining visible on the test page 2025-03-15 11:34:41 +01:00
Miodec
0833e1efc7 fix(daily leaderboard): schema issues when switching languages
!nuf
2025-03-13 11:37:42 +01:00
Miodec
334abc2933 fix: validation errors when switching leaderboard modes 2025-03-12 19:05:57 +01:00
Miodec
880dfb3442 chore: update error message 2025-03-12 17:37:50 +01:00
Miodec
518049e00d fix: errors when applying result filter presets 2025-03-12 17:37:50 +01:00
Cedric Baaklini
66ea0294e3
impr(quote): add quote from The LEGO Movie (@CedricBaaklini) (#6360)
I added a quote from one of my all time favorite movies.
2025-03-12 16:54:46 +01:00
Christian Fehmer
9e3f795380
fix: protect against stored xss in custom background url (@fehmer) (#6355)
!nuf

closes #6354
2025-03-12 16:52:57 +01:00
Adrien MOYAUX
220f2b8cb7
feat(layout): add Ergopti (@adrienm7) (#6352)
### Description

This pull request adds the [Ergopti keyboard
layout](https://ergopti.fr).

### 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 or a theme?
- [ ] If is a language, did you edit `_list.json`, `_groups.json` and
add `languages.json`?
  - [ ] If is a theme, did you add the theme.css?
- Also please add a screenshot of the theme, it would be extra awesome
if you do so!
- [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-03-12 16:49:48 +01:00
Nad Alaba
195b9d8402
chore(workflows): update deprecated action and remove duplicate workflow message (@NadAlaba) (#6344)
### Description

1. remove duplicate correct examples in semantic-pr-title error message,
and make the examples more diverse (show how to credit multiple
contributors).

![patternMessage](https://github.com/user-attachments/assets/cb6afe48-ed67-4894-ab4a-76894dd50e3b)

2. make the scope (quotes, languages, ...) consistently plural across
the repo docs (A subjective change I know, but in the changelog, the
scope looks better when it is plural i.e. **quotes:** add various
quotes).
3. update deprecated action `upload-artifact` from v3 to v4, because it
was making the `ci-failure-comment` workflow fail.
> Error: This request has been automatically failed because it uses a
deprecated version of `actions/upload-artifact: v3`. Learn more:
https://github.blog/changelog/2024-04-16-deprecation-notice-v3-of-the-artifact-actions/
4. use the same official action to download and upload artifacts across
the repo's workflows.
5. add 'waiting for update' and remove 'waiting for review' labels when
the Monkey CI workflow fails.
6. fix actions' major version only, to allow minor updates and patches.
2025-03-12 16:35:58 +01:00