0
/ 100
A well-known project done right. Strong docs and solid engineering throughout.
Mainsail is the popular web interface for managing and controlling 3D printers with Klipper.
Top fixes
Highest-impact changes first, ranked by point weight
- 1README12pt
Show a quick-start snippet so contributors can see what using your project looks like.
- 2Install and run instructions9pt
Add a section showing how to start or use the project.
- 3Install and run instructions9pt
Add a .env.example listing all required environment variables so contributors know what to set up.
- 4Dependency manifest6pt
Add a one-line description to package.json. It appears in npm search and on GitHub.
Working through the fixes? Let every push regrade itself.
The free GitHub App rescans this repo on every push and posts the grade as a commit check, so the score climbs without coming back to rescan by hand.
Scorecard
Every check, grouped by category and sorted worst-first
Documentation
75
README documents how to install the project.
Contributing guide is detailed and thorough.
README is present.
Licensed under GPL-3.0.
Engineering
100
Test files detected (tests).
CI is configured (.github/workflows/ci.yml).
Linter or formatter configured (.editorconfig).
Lockfile present (package-lock.json). Installs are reproducible.
Issue or PR templates present.
Project health
89
Dependency manifest found (package.json).
Repository has a description.
Actively maintained (pushed within the last month).
.gitignore present.
Repository health signals
Activity, community, and responsiveness at scan time
Activity
- -Commits (30d / 90d)
- 567Forks
- 90Releaseslatest 6y ago
Community
- -Community health
- -authors own >50% of commits
- 2,172Watchers
Responsiveness
- 4hMedian issue response
- 3d 6hMedian PR merge time
- 115Open issues
Repository files30 root entries
- .docker
- .githubGood: Code of conduct present.Good: CI is configured (.github/workflows/ci.yml).Good: Dependabot covers 2 ecosystems (github-actions, npm). Dependencies stay current.Good: Issue or PR templates present.
- agent_docs
- cypress
- public
- remote
- src
- testsGood: Test files detected (tests).
- .dockerignore
- .editorconfigGood: Linter or formatter configured (.editorconfig).
- .env.development.local.example
- .gitignoreGood: .gitignore present.
- .prettierignore
- .prettierrc
- AGENTS.md
- CHANGELOG.md
- CLAUDE.md
- cliff-release.toml
- cliff.toml
- CONTRIBUTING.mdGood: Contributing guide is detailed and thorough.Issue: Contributing guide lacks a setup section (−12 pts).Fix: Show new contributors how to get a local dev environment running.Issue: Contributing guide lacks a code style section (−8 pts).Fix: Describe your linting/formatting rules and how to run them.Issue: Contributing guide lacks a testing section (−8 pts).Fix: Show contributors how to run the test suite (e.g. npm test, pytest, cargo test).Good: Contributing guide describes the PR/review workflow.Good: Contributing guide includes code examples.
- cypress.config.ts
- DockerfileGood: Environment pinned via Dockerfile.
- eslint.config.mjs
- index.html
- LICENSEGood: Licensed under GPL-3.0.
- package-lock.jsonGood: Lockfile present (package-lock.json). Installs are reproducible.
- package.jsonGood: Dependency manifest found (package.json).
- README.mdGood: README is present.Good: README is well structured with multiple sections.Good: README includes screenshots or visuals. Great for first impressions.Issue: README has no code examples (−15 pts).Fix: Show a quick-start snippet so contributors can see what using your project looks like.Good: README links to a live demo or deployed app.Good: README includes status badges.Good: README documents how to install the project.Issue: No run or usage instructions found (−45 pts).Fix: Add a section showing how to start or use the project.
- tsconfig.json
- vite.config.ts
Add this badge to your README
It updates automatically each time the repo is re-graded.
[](https://www.repo-grade.com/report/mainsail-crew/mainsail)