open-saas icon indicating copy to clipboard operation
open-saas copied to clipboard

Add ESLint linting infrastructure

Open Copilot opened this issue 5 months ago • 0 comments

Description

Adds ESLint with TypeScript and React support to enforce code quality standards across the monorepo.

Key Changes:

  • ESLint Configuration (eslint.config.js)

    • Flat config with TypeScript parser and React/React Hooks plugins
    • File-specific rules for .ts/.tsx, .cjs, .mjs, and scripts
    • Balanced strictness: errors for bugs (missing keys), warnings for style (any usage)
  • CI Integration (.github/workflows/lint.yml)

    • Runs Prettier + ESLint on PRs and main branch
    • Minimal permissions for security
  • Scripts (added to package.json)

    npm run lint        # Check for issues
    npm run lint:fix    # Auto-fix where possible
    
  • Code Fixes

    • Resolved 5 missing React key errors in SourcesTable.tsx and Clients.tsx
    • Auto-fixed 6 style issues (prefer-const, redundant negations)
    • Result: 0 errors, 30 non-critical warnings
  • Documentation (README.md)

    • Added "Code Quality Tools" section with usage instructions

Contributor Checklist

  • [ ] Update e2e tests: If you changed the /template/app, then make sure to do any neccessary updates to /template/e2e-tests also.
  • [ ] Update demo app: If you changed the /template/app, then make sure to do any neccessary updates to /opensaas-sh/app_diff also. Check /opensaas-sh/README.md for details.
  • [ ] Update docs: If needed, update the /opensaas-sh/blog/src/content/docs.
Original prompt

This section details on the original issue you should resolve

<issue_title>Add linter</issue_title> <issue_description></issue_description>

Comments on the Issue (you are @copilot in this section)

@Martinsos Sure @shemzz give it a try! One thing to note, and sorry for assuming too much possibly, but the message above sounds like it was generated by LLM / AI. I don't mind you assisting yourself with the AI, but I do care about you being able to verifying the results it produces, confirming they are the best choice, that it all makes sense, ... . What I am trying to say is, if result is mostly/purely produced by AI and goes beyond your own knowledge, then I will not be inclined to accept the PR as it demands quite some work from us. If instead the PR will be guided by your own experience and research, then I don't mind if it was AI assisted.
  • Fixes wasp-lang/open-saas#216

💬 We'd love your input! Share your thoughts on Copilot coding agent in our 2 minute survey.

Copilot avatar Nov 14 '25 13:11 Copilot