monkeytype/backend
Brian Evans cffa7514ea
Save speed stats in leaderboard update (#3652) mrbrianevans
* Save speed stats in leaderboard update

Saves a histogram data structure of speeds for buckets rounded to the nearest 10.

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* API endpoint to get public speed stats

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* Add APE class for public stats (WIP)

I created an APE class for accessing public stats. Also stubbed getting and showing the public speed stats on the about page. Haven't implemented the histogram yet though.

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* Draw histogram for global speed stats

On about page

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* Update histogram colors on theme change

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* Fixed out-of-order data in speed histogram

 Data was not sorted correctly, which resulted in an incorrect histogram being drawn.

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* Public speed stats PR fixes

Small fixes based on PR feedback:
 - changed _req to req
 - removed unnecessary client version header

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* Add endpoint for typing stats

New endpoint to retrieve the public typing stats such as global count of tests completed.

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* Renamed public-stats to public

Except in cases where it would cause an identifier named `public` as this is forbidden in strict mode.

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* Add stats section to about page

In this commit:
 - add a section above about called stats
 - display typing stats in three columns
 - underneath show the histogram of speeds on english time 60
 - make chart responsive

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* Add unit test for Public DAL

Signed-off-by: Brian Evans <ebrian101@gmail.com>

* updated styling

* only requesting data once per session

* going one column on narrow screens

* added option to specify number of decimal poitns

* just showing million instead of abbreviating
updated structure
updated styling

Signed-off-by: Brian Evans <ebrian101@gmail.com>
Co-authored-by: Miodec <jack@monkeytype.com>
2022-10-18 15:45:45 +02:00
..
__tests__ Save speed stats in leaderboard update (#3652) mrbrianevans 2022-10-18 15:45:45 +02:00
private Add new rate limiting flow (#3230) Bruception 2022-06-28 13:45:57 +02:00
redis-scripts Purge from dailies (#3635) Bruception 2022-10-10 18:29:29 +02:00
src Save speed stats in leaderboard update (#3652) mrbrianevans 2022-10-18 15:45:45 +02:00
.gitignore fixed ignore 2022-03-07 14:39:09 +01:00
docker-compose.yml Add docker-compose and instructions to README (#2939) sondrekje 2022-05-05 01:52:17 +02:00
example.env Add docker-compose and instructions to README (#2939) sondrekje 2022-05-05 01:52:17 +02:00
jest-mongodb-config.js Feature/backend test (#2937) sondrekje 2022-05-05 15:19:31 +02:00
jest.config.ts Implement streaks (#3385) typermonkeyuser, bruception, miodec 2022-09-05 12:13:55 +02:00
package-lock.json Add new rate limiting flow (#3230) Bruception 2022-06-28 13:45:57 +02:00
package.json running tests sequentially 2022-06-30 01:33:23 +02:00
setup-tests.ts Add daily leaderboards (#3023) bruception 2022-05-26 16:30:11 +02:00
tsconfig.json Move backend source files into src folder (#2943) 2022-05-05 19:27:00 +02:00