microsoft / microsoft/Web-Dev-For-Beginners
[Enhancement] Update ESLint configuration from v7 to v9 in bank-api project
Nobody has claimed this yet.
- Dominant language
- JavaScript
- Stars
- 96.7k
- Forks
- 15.9k
- PR merge metrics
- No merged PRs in 30d
Description
Feature Request
Summary
Upgrade ESLint from v7.5.0 to v9.x in the 7-bank-project/api directory to benefit from modern linting capabilities, improved performance, and continued security support.
Current State
- Location:
7-bank-project/api/package.json - Current Version: ESLint 7.5.0 (released July 2020)
- Latest Stable: ESLint 9.x
Problem
ESLint 7.x is significantly outdated:
-
ESLint 7.x reached end-of-life
"devDependencies": { "eslint": "^7.5.0", },{ "env": { "commonjs": true, "es2020": true, "node": true }, "extends": "eslint:recommended", "parserOptions": { "ecmaVersion": 11 }, "rules": { } } -
Missing 5+ years of bug fixes and improvements
-
No access to modern ECMAScript features support
-
Potential security vulnerabilities in older dependencies
-
New contributors may have compatibility issues with modern Node.js versions
Proposed Solution
- Upgrade ESLint to v9.x
- Migrate configuration from
.eslintrc.jsto the new flat config format (eslint.config.js) - Update any deprecated rules
- Ensure compatibility with existing codebase
Benefits
- Modern JavaScript/ES2024+ support
- Improved performance and faster linting
- Access to new rules and plugins
- Better IDE integration
- Continued security updates
- Aligns with modern development practices taught in the curriculum
Files to Update
7-bank-project/api/package.json- Update ESLint version7-bank-project/api/.eslintrc.js- Migrate to flat config format
Additional Context
This educational repository teaches modern web development practices. Keeping development tools up-to-date ensures students learn current industry standards.
Willingness to Contribute
- I am willing to submit a PR to implement this feature
Related
- ESLint Migration Guide: https://eslint.org/docs/latest/use/migrate-to-9.0.0
- ESLint Flat Config: https://eslint.org/docs/latest/use/configure/configuration-files-new
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start with 7-bank-project/api/package.json and 7-bank-project/api/.eslintrc.js, then read the linked ESLint 9 migration guide to identify configuration and deprecated-rule changes. Update the dependency and migrate the configuration to flat config, ensuring the existing bank-api code remains compatible with the new linting setup.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- eslint, javascript
- Domain
- tooling
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100