Skip to content
Open
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
10 changes: 8 additions & 2 deletions epam/async-race.md
Original file line number Diff line number Diff line change
Expand Up @@ -90,7 +90,7 @@ What are you waiting for? Let's start coding!
- **TypeScript Mandatory**: Strong typing enforced throughout. TypeScript `strict` mode must be enabled, and the `noImplicitAny` flag set to `true` to ensure no implicit `any` types are used.
- **Modular Architecture**: Clear separation of concerns between API interaction, UI rendering, and state management.
- **SPA Implementation**: All content must be generated using TypeScript with strict type checking.
- **Code Quality**: Adherence to Airbnb's ESLint configuration, with functions limited to 40 lines and avoidance of magic numbers/strings. The `tsconfig.json` must be configured to enforce strict typing principles.
- **Code Quality**: Adherence to ESLint configuration based on recommended rules for TypeScript and React (`eslint:recommended`, `plugin:@typescript-eslint/recommended`, `plugin:react/recommended`, `plugin:react-hooks/recommended`). Avoid magic numbers and magic strings. The `tsconfig.json` must be configured to enforce strict typing principles (`strict: true`, `noImplicitAny: true`).
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It only includes React-specific rules, but Angular is also an allowed framework

- **UI Design**: The design is completely up to you. In this project, we care about the quality of the code and the fulfillment of other functional and non-functional requirements.

- These criteria emphasize the importance of clean code, proper architecture, and adherence to modern development practices. Intreviewers will use these guidelines to assess the technical execution and overall quality of the project.
Expand Down Expand Up @@ -186,7 +186,13 @@ Also, please deploy the UI to GitHub Pages, Netlify, Vercel, Cloudflare Pages, o
## 🎨 Prettier and ESLint Configuration (10 points)

- [ ] **Prettier Setup (5 points):** Prettier is correctly set up with two scripts in `package.json`: `format` for auto-formatting and `ci:format` for checking issues.
- [ ] **ESLint Configuration (5 points):** ESLint is configured with the [Airbnb style guide](https://www.npmjs.com/package/eslint-config-airbnb). A `lint` script in `package.json` runs ESLint checks. Configuration files should reflect strict TypeScript settings as per `tsconfig.json`.
- [ ] **ESLint Configuration (5 points):** ESLint is configured using the recommended rulesets:
- `eslint:recommended`
- `plugin:@typescript-eslint/recommended`
- `plugin:react/recommended`
- `plugin:react-hooks/recommended`
Comment on lines +190 to +193
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

To me, the listed rule format looks like a deprecated one. ESLint 9 now uses a new "flat config" system

Configuration must reflect strict TypeScript settings as per `tsconfig.json` (with `strict` and `noImplicitAny` enabled).
A `lint` script in `package.json` must run ESLint checks for `.ts` and `.tsx` files.

## 🌟 Overall Code Quality. (100 points) _Skip during self-check_

Expand Down
Loading