-
Notifications
You must be signed in to change notification settings - Fork 12
chore: add linting via ESLint for new apps using the edge-apps-library
#591
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
PR Reviewer Guide 🔍(Review updated until commit 49eef5f)Here are some key observations to aid the review process:
|
PR Code Suggestions ✨Latest suggestions up to 49eef5f
Previous suggestionsSuggestions up to commit 1626df3
|
- Fix linting issues in the `menu-board` app - Configure ESLint configs in boths apps to ignore certain paths
- Move shared eslint.config.ts to edge-apps-library - Create edge-apps-scripts CLI wrapper around ESLint and build tools - Update apps to use edge-apps-scripts lint instead of direct eslint - Remove duplicate ESLint dependencies from individual apps - Update package.json to expose CLI binary and include scripts/bin in files - Add @screenly/edge-apps bin entry pointing to edge-apps-scripts.ts
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This PR introduces shared ESLint tooling infrastructure to the edge-apps-library, enabling consistent linting across edge apps via a new CLI tool. It also includes a type signature improvement in the menu-board app.
Key changes:
- Creates a new
edge-apps-scriptsCLI tool with lint command support - Adds ESLint 9.x flat config with TypeScript support to edge-apps-library
- Updates qr-code and menu-board apps to use the new shared linting tooling
Reviewed changes
Copilot reviewed 7 out of 9 changed files in this pull request and generated 8 comments.
Show a summary per file
| File | Description |
|---|---|
| edge-apps/edge-apps-library/bin/edge-apps-scripts.ts | Entry point for the new CLI tool |
| edge-apps/edge-apps-library/scripts/cli.ts | CLI command dispatcher with lint and format (stub) commands |
| edge-apps/edge-apps-library/eslint.config.ts | Shared ESLint flat configuration with TypeScript support |
| edge-apps/edge-apps-library/package.json | Adds ESLint dependencies, bin entry, and includes new files for distribution |
| edge-apps/edge-apps-library/README.md | Documents bun link workflow for local development |
| edge-apps/qr-code/package.json | Updates lint script to use edge-apps-scripts CLI |
| edge-apps/menu-board/package.json | Updates lint script to use edge-apps-scripts CLI |
| edge-apps/menu-board/src/utils.ts | Improves type specificity of getSetting parameter from any to string | undefined |
| edge-apps/edge-apps-library/bun.lock | Lockfile updates for new ESLint and tooling dependencies |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
- Use fileURLToPath to derive __dirname from import.meta.url - Define libraryRoot variable for consistent path resolution - Replace path.dirname(__dirname) with libraryRoot variable - Improves robustness when package is installed as dependency
|
Persistent review updated to latest commit 49eef5f |
PR Type
Enhancement, Documentation
Description
Add centralized ESLint config and CLI
Introduce edge-apps-scripts lint command
Update apps to use shared lint script
Improve tests global handling and types
Diagram Walkthrough
File Walkthrough
7 files
Add executable entry for edge-apps-scripts CLIProvide shared ESLint base configurationImplement CLI dispatcher with lint commandNarrow getSetting type for menu itemsExpose CLI binary and add ESLint depsUse edge-apps-scripts for lintingUse edge-apps-scripts for linting3 files
Use typed global reference in testsSwitch to typed global for screenly mockRefine global window typing in test setup1 files
Document local linking and new CLI usage