Skip to content

Commit 335374d

Browse files
committed
Merge branch 'main' into 639-fix-dead-keys-problem
2 parents ed2f518 + 0eca09d commit 335374d

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

43 files changed

+164
-152
lines changed

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,6 @@
44

55
# MacOS generated files
66
**/.DS_Store
7+
8+
# VS Code generated files
9+
**/.vscode/*

README.md

Lines changed: 32 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -5,37 +5,42 @@
55
</div>
66

77
# [![View 👁️](https://img.shields.io/badge/Website-View%20🌐-red?style=for-the-badge&logo=appveyor)](https://code-racer-eight.vercel.app/)
8-
8+
99
<div align="center">
1010
Welcome to Code Racer, a community project built with <a href="https://nextjs.org/">Next.js</a>, <a href="https://tailwindcss.com">Tailwind CSS</a>, and <a href="https://www.typescriptlang.org">TypeScript</a>.
1111
Code Racer is a multiplayer coding game where developers can compete against each other to solve programming challenges in real-time. Sharpen your coding skills, challenge your peers, and have fun while racing against the clock!
1212
</div>
1313

14-
1514
## Table of Contents
1615

17-
- [:rocket: Features](#features)
18-
- [:hammer_and_wrench: Technologies Used](#technologies-used)
19-
- [:handshake: Contribution](#contribution)
20-
- [:lock: License](#license)
16+
- [:rocket:Features](#features)
17+
- [:hammer_and_wrench:Technologies Used](#technologies-used)
18+
- [:handshake:Contribution](#contribution)
19+
- [:lock: License](#license)
2120
- [🙏🏻 Acknowledgements](#acknowledgements)
22-
- [:envelope: Contact](#contact)
23-
- [:clapper: Related Youtube Videos & Progress](#related-youtube-videos--progress)
21+
- [:envelope:Contact](#contact)
22+
- [:clapper:Related Youtube Videos & Progress](#related-youtube-videos-progress)
23+
24+
<a id="features"></a>
2425

25-
## Features :rocket:
26+
## Features &colon;rocket&colon;
2627

2728
- Code snippet games
2829
- [Multiplayer races](./packages/wss/README.md)
2930

30-
## Technologies Used :hammer_and_wrench:
31+
<a id="technologies-used"></a>
32+
33+
## Technologies Used &colon;hammer_and_wrench&colon;
3134

3235
- [Next.js](https://nextjs.org): A React framework for building server-side rendered and statically generated applications.
33-
- [NextAuth](https://next-auth.js.org): For user authentication.
34-
- [Prisma](https://www.prisma.io): Next-generation ORM, it provides a clean and type-safe API for submitting database queries.
35-
- [Tailwind CSS](https://tailwindcss.com): A utility-first CSS framework for rapid UI development.
36-
- [TypeScript](https://www.typescriptlang.org): A typed superset of JavaScript that provides enhanced tooling and developer productivity.
36+
- [NextAuth](https://next-auth.js.org):For user authentication.
37+
- [Prisma](https://www.prisma.io):Next-generation ORM, it provides a clean and type-safe API for submitting database queries.
38+
- [Tailwind CSS](https://tailwindcss.com):A utility-first CSS framework for rapid UI development.
39+
- [TypeScript](https://www.typescriptlang.org):A typed superset of JavaScript that provides enhanced tooling and developer productivity.
40+
41+
<a id="contribution"></a>
3742

38-
## Contribution :handshake:
43+
## Contribution &colon;handshake&colon;
3944

4045
We welcome contributions from the community! If you'd like to contribute to Code Racer, please refer to [CONTRIBUTING.md](./CONTRIBUTING.md). We have these base guidelines:
4146

@@ -48,29 +53,38 @@ We welcome contributions from the community! If you'd like to contribute to Code
4853

4954
Please ensure that your code adheres to the project's coding standards and conventions.
5055

51-
## License :lock:
56+
## License &colon;lock&colon;
57+
58+
<a id="license"></a>
5259

5360
The Code Racer project is licensed under the MIT License. Feel free to use, modify, and distribute the code as per the terms of the license.
5461

62+
<a id="acknowledgements"></a>
63+
5564
## Acknowledgements 🙏🏻
5665

5766
Code Racer wouldn't be possible without the valuable contributions and support from the open-source community. We would like to express our gratitude to all the contributors and acknowledge the following libraries and resources used in this project.
5867

5968
A big thank you to all the developers who have helped shape Code Racer into what it is today!
6069

61-
## Contact :envelope:
70+
<a id="contact"></a>
71+
72+
## Contact &colon;envelope&colon;
6273

6374
If you have any questions, suggestions, or feedback regarding Code Racer, please feel free to reach out to us at in the WebDevCody [discord](https://discord.gg/4kGbBaa) server.
6475

6576
Happy coding and enjoy the race!
6677

67-
## Related Youtube Videos & Progress :clapper:
78+
<a id="related-youtube-videos-progress"></a>
79+
80+
## Related Youtube Videos & Progress &colon;clapper&colon;
6881

6982
1. [Community Project Announcement Video](https://www.youtube.com/watch?v=-n6tV3RPjGc)
7083
2. [First Q&A Livestream and Community Project Live Coding Session](https://www.youtube.com/watch?v=BQXXBsHXfak)
7184
3. [How to contribute to open source projects (our community project walkthrough)](https://www.youtube.com/watch?v=dLRA1lffWBw)
7285
4. [You need to write tests when this starts to happen](https://www.youtube.com/watch?v=PzrhclEQp-M)
7386
5. [CodeRacer had a major security issue](https://www.youtube.com/watch?v=FigpqBGqwK4)
87+
6. [Stop calling prisma inside server components](https://www.youtube.com/watch?v=sLIoCfKK5SA)
7488

7589
<details>
7690
<summary>

packages/app/.eslintrc.json

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -17,9 +17,10 @@
1717
"jsx-a11y/anchor-is-valid": "off",
1818
"no-unused-vars": "warn",
1919
"@typescript-eslint/no-empty-interface": "warn",
20+
"@typescript-eslint/no-explicit-any": "warn",
2021

2122
"import/extensions": 0,
2223
"import/no-extraneous-dependencies": 0,
2324
"import/prefer-default-export": 0
2425
}
25-
}
26+
}

packages/app/cypress.config.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
/* eslint-disable @typescript-eslint/no-unused-vars */
2+
/* eslint-disable no-unused-vars */
13
import { defineConfig } from "cypress";
24

35
export default defineConfig({
Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
describe('ComponentName.cy.tsx', () => {
2-
it('playground', () => {
1+
describe("ComponentName.cy.tsx", () => {
2+
it("playground", () => {
33
// cy.mount()
44
})
55
})

packages/app/cypress/e2e/business-layer/raceBL.ts

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
import { RacePage } from "../page-objects/pages/RacePage";
22
export class RaceBL {
33

4+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
45
public static runTypingRace(spans: any): RacePage{
56
const NEW_LINE = "⏎\n";
67
let code = "";
@@ -23,7 +24,7 @@ export class RaceBL {
2324
isIndentWhiteSpace = true;
2425
}
2526
}
26-
cy.get('[data-cy="race-practice-input"]').type(code, {
27+
cy.get("[data-cy=\"race-practice-input\"]").type(code, {
2728
force: true,
2829
parseSpecialCharSequences: false,
2930
delay: 30,
Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
export * from './NavbarComponent'
1+
export * from "./NavbarComponent";
Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
export class ContributorsPage{
22

3-
contributorCard(): Cypress.Chainable{ return cy.get('[data-cy="contributor-card"]') }
4-
contributorName(): Cypress.Chainable{ return cy.get('[data-cy="contributor-name"]') }
5-
commitDisplay(): Cypress.Chainable{ return cy.get('[data-cy="github-commit-display"]') }
6-
commitLink(): Cypress.Chainable{ return cy.get('[data-cy="github-commit-link"]') }
3+
contributorCard(): Cypress.Chainable{ return cy.get("[data-cy=\"contributor-card\"]") }
4+
contributorName(): Cypress.Chainable{ return cy.get("[data-cy=\"contributor-name\"]") }
5+
commitDisplay(): Cypress.Chainable{ return cy.get("[data-cy=\"github-commit-display\"]") }
6+
commitLink(): Cypress.Chainable{ return cy.get("[data-cy=\"github-commit-link\"]") }
77

88
public contributorCardText(contributorCard: Cypress.Chainable): Cypress.Chainable{
9-
return contributorCard.find('[data-cy="contributor-name"]').invoke('text')
9+
return contributorCard.find("[data-cy=\"contributor-name\"]").invoke("text")
1010
}
1111
}
Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,8 @@
11
export class LeaderboardPage{
22

3-
userRow(): Cypress.Chainable{ return cy.get('.table-row') }
4-
user(): Cypress.Chainable{ return cy.get('.flex.items-center.gap-2') }
5-
rowDropdown(): Cypress.Chainable{ return cy.get('[role="combobox"]') }
3+
userRow(): Cypress.Chainable{ return cy.get(".table-row") }
4+
user(): Cypress.Chainable{ return cy.get(".flex.items-center.gap-2") }
5+
rowDropdown(): Cypress.Chainable{ return cy.get("[role=\"combobox\"]") }
66

7-
rowDropdownElement(): Cypress.Chainable{ return cy.get('[role="option"]') }
7+
rowDropdownElement(): Cypress.Chainable{ return cy.get("[role=\"option\"]") }
88
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,3 @@
1-
export * from './ContributorsPage'
2-
export * from './RacePage'
3-
export * from './LeaderboardPage'
1+
export * from "./ContributorsPage"
2+
export * from "./LeaderboardPage"
3+
export * from "./RacePage"

0 commit comments

Comments
 (0)