Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
22 changes: 11 additions & 11 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,17 +27,17 @@ Monkeytype is a minimalistic and customizable [typing test](https://www.monkeyty

# Features

- minimalistic design, with optional advertisements and focus mode while typing
- type what you see, see what you type
- live errors, wpm, and accuracy displays
- a variety of test lengths and languages
- punctuation and numbers modes
- quotes
- themes
- smooth caret
- account system
- challenges and just-for-fun test modifiers
- and much more
- Minimalistic design, with optional advertisements and focus mode while typing
- Type what you see, see what you type
- Live errors, wpm, and accuracy displays
- A variety of test lengths and languages
- Punctuation and numbers modes
- Quotes
- Themes
- Smooth caret
- Account system
- Challenges and just-for-fun test modifiers
- And much more

# Discord bot

Expand Down
4 changes: 2 additions & 2 deletions backend/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,7 @@
"bcrypt": "5.1.1",
"bullmq": "1.91.1",
"chalk": "4.1.2",
"cors": "2.8.5",
"cors": "2.8.6",
"cron": "2.3.0",
"date-fns": "3.6.0",
"dotenv": "16.4.5",
Expand Down Expand Up @@ -62,7 +62,7 @@
"@monkeytype/typescript-config": "workspace:*",
"@redocly/cli": "2.24.1",
"@types/bcrypt": "5.0.2",
"@types/cors": "2.8.12",
"@types/cors": "2.8.19",
"@types/cron": "1.7.3",
"@types/express": "5.0.3",
"@types/ioredis": "4.28.10",
Expand Down
4 changes: 2 additions & 2 deletions backend/src/api/controllers/dev.ts
Original file line number Diff line number Diff line change
Expand Up @@ -285,7 +285,7 @@ async function updateUser(uid: string): Promise<void> {
}

//update testActivity
await updateTestActicity(uid);
await updateTestActivity(uid);
}

//update the user
Expand Down Expand Up @@ -317,7 +317,7 @@ function createArray<T>(size: number, builder: () => T): T[] {
return new Array(size).fill(0).map(() => builder());
}

async function updateTestActicity(uid: string): Promise<void> {
async function updateTestActivity(uid: string): Promise<void> {
await ResultDal.getResultCollection()
.aggregate(
[
Expand Down
16 changes: 16 additions & 0 deletions frontend/src/styles/media-queries-blue.scss
Original file line number Diff line number Diff line change
Expand Up @@ -39,6 +39,22 @@
}
}

.pageAccountSettings {
.main {
grid-template-columns: 1fr;
grid-template-rows: auto auto;
.tabs {
padding: 0;
display: grid;
grid-auto-flow: row;
button {
justify-content: center;
padding: 1em 0.5em;
}
}
}
}

.pageFriends {
.content .friends table,
.content .pendingRequests table {
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/ts/collections/custom-themes.ts
Original file line number Diff line number Diff line change
Expand Up @@ -180,7 +180,7 @@ export const __nonReactive = {
};

/**
* On prod the collection gets cleaned up after a while.
* The collection gets cleaned up after a while.
* Keeping a query active fixes that. Remove when removing __nonReactive
*/
// oxlint-disable-next-line typescript/no-explicit-any
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/ts/collections/presets.ts
Original file line number Diff line number Diff line change
Expand Up @@ -205,7 +205,7 @@ export const __nonReactive = {
};

/**
* On prod the collection gets cleaned up after a while.
* The collection gets cleaned up after a while.
* Keeping a query active fixes that. Remove when removing __nonReactive
*/
const _keepAlive = usePresetsLiveQuery();
2 changes: 1 addition & 1 deletion frontend/src/ts/collections/results.ts
Original file line number Diff line number Diff line change
Expand Up @@ -691,7 +691,7 @@ export const __nonReactive = {
};

/**
* On prod the collection gets cleaned up after a while.
* The collection gets cleaned up after a while.
* Keeping a query active fixes that. Remove when removing __nonReactive
*/
// oxlint-disable-next-line typescript/no-explicit-any
Expand Down
2 changes: 1 addition & 1 deletion frontend/src/ts/collections/tags.ts
Original file line number Diff line number Diff line change
Expand Up @@ -555,7 +555,7 @@ export const __nonReactive = {
};

/**
* On prod the collection gets cleaned up after a while.
* The collection gets cleaned up after a while.
* Keeping a query active fixes that. Remove when removing __nonReactive
*/
const _keepAlive = useTagsLiveQuery();
4 changes: 2 additions & 2 deletions frontend/src/ts/components/pages/settings/Settings.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -265,7 +265,7 @@ function AccountSettingsNotice(): JSXElement {
});
return (
<Show when={!dismissed()}>
<div class="grid grid-cols-[auto_1fr_auto] items-center gap-8 rounded px-8 py-4 ring-4 ring-sub-alt">
<div class="grid grid-cols-[auto_1fr] items-center gap-4 rounded px-4 py-4 ring-4 ring-sub-alt md:grid-cols-[auto_1fr_auto] md:gap-8">
<Fa icon="fa-user-cog" class="text-4xl text-sub" />
<div>
Account settings have moved. You can now access them by hovering over
Expand All @@ -275,7 +275,7 @@ function AccountSettingsNotice(): JSXElement {
<Button
text="go to account settings"
href="/account-settings"
class="p-4"
class="col-span-2 p-4 md:col-span-1"
router-link
onClick={() => {
setDismissed(true);
Expand Down
4 changes: 2 additions & 2 deletions frontend/src/ts/config/metadata.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -304,8 +304,8 @@ export const configMetadata: ConfigMetadataObject = {
fa: { icon: "fa-eye-slash" },
optionsMetadata: {
true: {
// Need to have space here so that the `on` button for blind mode will have the
// same height on both Chromium and Firefox.
// Use an `&ensp;` here so that the `on` button for blind mode will
// have the same height on both Chromium and Firefox.
displayString: " ",
},
},
Expand Down
62 changes: 62 additions & 0 deletions frontend/static/layouts/nokwts.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
{
"keymapShowTopRow": false,
"type": "ansi",
"keys": {
"row1": [
["`", "~"],
["1", "!"],
["2", "@"],
["3", "#"],
["4", "$"],
["5", "%"],
["6", "^"],
["7", "&"],
["8", "*"],
["9", "("],
["0", ")"],
["[", "{"],
["]", "}"]
],
"row2": [
["z", "Z"],
["m", "M"],
["r", "R"],
["l", "L"],
["f", "F"],
["j", "J"],
["y", "Y"],
["o", "O"],
["u", "U"],
["'", "<"],
["-", ":"],
["=", ">"],
["\\", "|"]
],
"row3": [
["n", "N"],
["t", "T"],
["h", "H"],
["s", "S"],
["b", "B"],
["c", "C"],
["d", "D"],
["e", "E"],
["i", "I"],
["a", "A"],
[",", "\""]
],
"row4": [
["x", "X"],
["q", "Q"],
["w", "W"],
["k", "K"],
["v", "V"],
["p", "P"],
["g", "G"],
["/", "+"],
[".", "_"],
[";", "?"]
],
"row5": [[" "]]
}
}
2 changes: 1 addition & 1 deletion frontend/storybook/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@
"@storybook/addon-a11y": "^10.2.14",
"@storybook/addon-docs": "^10.2.14",
"@storybook/addon-links": "^10.2.14",
"@storybook/addon-onboarding": "^10.2.14",
"@storybook/addon-onboarding": "^10.4.1",
"@storybook/addon-vitest": "^10.2.14",
"@storybook/builder-vite": "^10.2.14",
"@tailwindcss/vite": "^4.2.1",
Expand Down
14 changes: 7 additions & 7 deletions packages/funbox/src/list.ts
Original file line number Diff line number Diff line change
Expand Up @@ -207,20 +207,20 @@ const list: Record<FunboxName, FunboxMetadata> = {
frontendFunctions: ["getWord"],
name: "specials",
},
plus_one: {
description: "Only one future word is visible.",
canGetPb: true,
difficultyLevel: 0,
properties: ["changesWordsVisibility", "toPush:2", "noInfiniteDuration"],
name: "plus_one",
},
plus_zero: {
description: "React quickly! Only the current word is visible.",
canGetPb: true,
difficultyLevel: 1,
properties: ["changesWordsVisibility", "toPush:1", "noInfiniteDuration"],
name: "plus_zero",
},
plus_one: {
description: "Only one future word is visible.",
canGetPb: true,
difficultyLevel: 0,
properties: ["changesWordsVisibility", "toPush:2", "noInfiniteDuration"],
name: "plus_one",
},
plus_two: {
description: "Only two future words are visible.",
canGetPb: true,
Expand Down
2 changes: 1 addition & 1 deletion packages/schemas/src/configs.ts
Original file line number Diff line number Diff line change
Expand Up @@ -302,8 +302,8 @@ export const FunboxNameSchema = z.enum([
"gibberish",
"ascii",
"specials",
"plus_one",
"plus_zero",
"plus_one",
"plus_two",
"plus_three",
"read_ahead_easy",
Expand Down
1 change: 1 addition & 0 deletions packages/schemas/src/layouts.ts
Original file line number Diff line number Diff line change
Expand Up @@ -239,6 +239,7 @@ export const LayoutNameSchema = z.enum(
"GralmakS",
"vitrimak",
"miligram",
"nokwts",
],
{
errorMap: customEnumErrorHandler("Must be a supported layout"),
Expand Down
Loading
Loading