Commit graph

1363 commits

Author SHA1 Message Date
Jack
8627235bef
feat(result): rename raw to burst, add raw line to result graph, add ability to hide chart data (@miodec) (#6907) 2025-09-02 11:06:15 +02:00
Jack
7487e53c67
refactor: result migration and tests cleanup (@miodec) (#6929)
move all legacy test value migration into a central place, update the
tests to only check if that was called, test replaceLegacyValues
2025-09-01 17:39:24 +02:00
Christian Fehmer
01f981cd0a
test: refactor controller tests (@fehmer) (#6925) 2025-09-01 11:53:05 +02:00
Christian Fehmer
d9887cf37c
refactor: use findOne instead of limit(1) (@fehmer) (#6924) 2025-09-01 11:52:16 +02:00
Miodec
c8cf1eae54 refactor: optimise fetching last result timestamp when adding a result 2025-08-28 16:19:26 +02:00
Jack
e4c0c28150
chore: bump eslint typescript plugin (@miodec) (#6915) 2025-08-26 22:12:27 +02:00
Miodec
b54052913c chore: bump oxlint version 2025-08-26 17:41:51 +02:00
Miodec
2a6bfbeefb chore: log high wpm results 2025-08-20 11:57:19 +02:00
Miodec
057fdf3fed chore: bump oxlint version 2025-08-18 15:38:13 +02:00
Christian Fehmer
c5d43dd673
feat(profile): optionally include test activity on users public profile (@fehmer) (#6824)
Co-authored-by: Miodec <jack@monkeytype.com>
2025-08-15 14:31:58 +02:00
Christian Fehmer
119649bc9e
test: don't use globals for vitest (@fehmer) (#6871)
- **test: support to run/watch all tests in vscode (@fehmer)**
- **packages/contracts**
- **move schema tests to schema package**
- **packages/funbox**
- **packages/utils**
- **frontend**
- **backend**

---------

Co-authored-by: Miodec <jack@monkeytype.com>
2025-08-14 11:25:44 +02:00
Christian Fehmer
7a91b4e08b
chore: update redocly to 2.0.5 (@fehmer) (#6874) 2025-08-14 11:14:33 +02:00
Christian Fehmer
3447907d09
test: support to run/watch all tests in vscode (@fehmer) (#6868) 2025-08-13 11:14:21 +02:00
Miodec
5183caf91e chore: upgrade oxlint 2025-08-10 15:08:46 +02:00
Christian Fehmer
f9b22ade56
chore: remove unused dependencies (@fehmer) (#6841)
- **remove chokidar**
- **remove path, node-fetch, ioredis-mock**
- **remove nodemon**
2025-08-07 15:02:19 +02:00
Christian Fehmer
bec5606c7a
chore: move knip to project root (@fehmer) (#6842) 2025-08-07 15:00:43 +02:00
Christian Fehmer
cd99d5af16
test: add WeeklyXpLeaderboards integration tests (@fehmer) (#6843) 2025-08-07 14:48:14 +02:00
Christian Fehmer
c8a91ede52
test: fix flaky user tests (@fehmer) (#6837) 2025-08-07 14:47:35 +02:00
Christian Fehmer
01ed9322ec
test: update to vitest3 (@fehmer) (#6811)
- **test: use mongodb testcontainer (@fehmer)**
- **don't run integration tests in parallel**
- **fix premium test**
- **refactor, cleanup**
- **refactor, cleanup**
- **test: add integration tests for daily leaderboards (@fehmer)**
- **trigger**
- **trigger**
- **test: update to vitest3 (@fehmer)**
2025-08-04 15:55:10 +02:00
Christian Fehmer
9c41fd5d04
test: add unit tests for daily leaderboards (@fehmer) (#6802)
- **refactor existing test to use it.for**
- **use testcontainers**
2025-08-04 15:28:55 +02:00
Christian Fehmer
d9009e51cc
test: use mongodb testcontainer (@fehmer) (#6808) 2025-08-04 15:10:41 +02:00
Christian Fehmer
c1a681c17f
test: split integration tests (@fehmer) (#6807)
- **trigger**
- **test: split integration tests (@fehmer)**
2025-07-30 13:22:40 +02:00
Christian Fehmer
aa94a8afed
chore: update nodejs to 20.19.4 (@fehmer) (#6805) 2025-07-30 10:06:04 +02:00
Cameron
2180e3b603
chore(deps): upgrade oxlint to 1.8.0, fix errors (@camc314) (#6776)
### Description

This PR updates oxlint to 1.8.0 and fixes the resulting errors in order
to keep oxlint's ecosystem CI green.

Thanks for using oxlint

---------

Co-authored-by: Miodec <jack@monkeytype.com>
2025-07-24 14:32:12 +02:00
Jack
69cbbe4ab2
refactor(contracts / schemas): move schemas into their own package (@miodec) (#6754) 2025-07-21 14:55:54 +02:00
Jack
92790f3682
refactor(config): config metadata (@miodec) (#6753)
Create config metadata object
Move all the special code on config change to config listeners
Create a generic set function which will work with the metadata object
to update any config key
Update all setters to use the generic set.
(Later probably only use the generic settter and remove all the specific
ones)
Also orders config groups and config schema.

---------

Co-authored-by: Christian Fehmer <cfe@sexy-developer.com>
2025-07-21 13:50:33 +02:00
Miodec
41495981a8 chore: bump oxlint version 2025-07-19 15:02:14 +02:00
Miodec
255fd7f410 chore: only log daily changes 6 hours after the reset 2025-07-19 02:09:09 +02:00
Miodec
c6d9033005 chore: move result logging later, log top 10 daily 2025-07-17 09:37:06 +02:00
Miodec
c4590a2939 chore: log only up to 2 minute tests 2025-07-17 09:27:48 +02:00
Miodec
c9986bbc4c chore: slice long messages 2025-07-17 09:19:39 +02:00
Miodec
b15520f0b3 chore: add ability to log results 2025-07-17 01:24:47 +02:00
Christian Fehmer
a4de8dfda6
impr(leaderboard): daily mode/language buttons based on backend configuration (@fehmer) (#6713)
Co-authored-by: Miodec <jack@monkeytype.com>
2025-07-14 15:32:09 +02:00
Christian Fehmer
5aec2c9a17
fix(docker): use frontend url for firebase admin (@fehmer) (#6730)
fixes #6728

---------

Co-authored-by: Jack <jack@monkeytype.com>
2025-07-14 15:30:34 +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
9b26793a6d
chore: update express to 5.1.0 (@fehmer) (#6691) 2025-07-03 15:43:01 +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
e4a102ac64
impr(results): allow PBs with stop on letter if accuracy is 100% (@byseif21) (#6611) 2025-06-26 17:11:15 +02:00
Miodec
63b63ffa9c chore: update plugins overrides 2025-06-14 15:33:52 +02:00
Miodec
4c05dd8326 chore: bump oxlint version 2025-06-14 14:43:05 +02:00
Miodec
2d008461ed chore: catch firebase internal errors when trying to auth 2025-06-14 14:11:05 +02:00
Miodec
04fbd81c10 chore: bump oxlint version 2025-05-29 13:23:13 +02:00
Christian Fehmer
d6ae7cf7c4
fix: compatability check header shown if client is using cached responses (@fehmer) (#6602)
If frontend and backend are deployed with a new COMPATABILITY_CHECK
header frontend might show the backend version is lower because of the
http header of a cached response.

Adding the COMPATABILITY_CHECK version as part of the etag fixes this.
2025-05-27 16:59:49 +02:00
Jack
ea90e0a99e
refactor: dont allow nullable numbers (@miodec) (#6564)
Enables strict boolean expressions rule for nullable numbers
2025-05-16 16:04:19 +02:00
Miodec
8370de1fa4 impr: add function to clearstreakhouroffset
!nuf
2025-05-12 13:52:37 +02:00
Christian Fehmer
eb092cea1c
refactor: move languages to contracts (@fehmer) (#6497) 2025-05-07 14:02:27 +02:00
Miodec
255c4b944d fix: unable to link discord if user has no avatar 2025-04-30 18:41:03 +02:00
Miodec
c666d13c96 impr: parse response from discord api with zod
!nuf
2025-04-29 13:53:02 +02:00
Christian Fehmer
212b8d38cb
refactor: make funbox settings an array (@fehmer) (#6487)
change funbox from "hash separated values" to array.

---------

Co-authored-by: Miodec <jack@monkeytype.com>
2025-04-29 11:31:44 +02:00
Miodec
ab9cef010e chore: swap monkeyerror for error to not expose actual error message to the frontend 2025-04-26 21:53:16 +02:00