79
/ 100
Solid engineering. The biggest lever is a reproducible setup.
Shoko is a media metadata aggregator that solves all of the annoying edge cases that face anime's differing structure from western media. It integrates directly with media software rather than working around things like nfo files or naming conventions.
Top fixes
Highest-impact changes first, ranked by point weight
- 1Tests18pt
Wire your tests to a documented command (e.g. a test script in your build config) so the suite is reproducible.
- 2CI/CD14pt
Add a lint step to catch style issues automatically.
- 3CI/CD14pt
Add `tsc --noEmit`, `mypy`, or `cargo check` to catch type errors before they merge.
- 4CI/CD14pt
Upload coverage to Codecov, Coveralls, or report it with `--coverage` flags.
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
69
Contributing guidance is in the README, not a dedicated CONTRIBUTING.md (−20 pts).
→ Moving it to a CONTRIBUTING.md makes it easier to find and keeps the README focused. A dedicated file earns +47 pts base.
README documents how to install the project.
README is present.
Licensed under MIT.
Engineering
77
No dependency lockfile found (−70 pts).
→ Enable and commit packages.lock.json so NuGet restores are repeatable.
Test files detected (Shoko.IntegrationTests/AnidbAnimeCatalogRoundTripTests.cs).
CI is configured (.github/workflows/build-daily.yml).
.NET formatting configured (.editorconfig).
Issue or PR templates present.
Project health
100
Dependency manifest found (Shoko.Server.sln).
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)
- 99Forks
- 43Releaseslatest 9y ago
Community
- 37% - WeakCommunity health
- -authors own >50% of commits
- 774Watchers
Responsiveness
- 128d 7hMedian issue response
- 1d 2hMedian PR merge time
- 53Open issues
Repository files39 root entries
- .devcontainer
- .githubGood: CI is configured (.github/workflows/build-daily.yml).Good: Issue or PR templates present.
- .vscode
- Dependencies
- Installer
- scripts
- Shoko.Abstractions
- Shoko.Benchmarks
- Shoko.BuildTools
- Shoko.BuildTools.Analyzers
- Shoko.BuildTools.Targets
- Shoko.CLI
- Shoko.IntegrationTestsGood: Test files detected (Shoko.IntegrationTests/AnidbAnimeCatalogRoundTripTests.cs).
- Shoko.Plugin.LegacyPlex
- Shoko.QueueProcessor
- Shoko.QueueProcessor.Tests
- Shoko.Server
- Shoko.TestData
- Shoko.Tests
- Shoko.TrayService
- .dockerignore
- .editorconfigGood: .NET formatting configured (.editorconfig).
- .git-blame-ignore-revs
- .gitignoreGood: .gitignore present.
- AGENTS.md
- BundledPlugins.targets
- CLAUDE.md
- Directory.Build.props
- dockerentry.sh
- DockerfileGood: Environment pinned via Dockerfile.
- Dockerfile.aarch64
- icon.png
- LICENSEGood: Licensed under MIT.
- MediaInfo.targets
- README.mdGood: README is present.Good: README is well structured with multiple sections.Good: README includes screenshots or visuals. Great for first impressions.Good: README has code examples.Good: README links to a live demo or deployed app.Issue: No status badges in the README (−10 pts).Fix: Add CI/build status badges from shields.io or your CI provider to signal project health.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.
- ReleasedPlugins.targets
- SharedAssemblyInfo.cs
- Shoko.Server.slnGood: Dependency manifest found (Shoko.Server.sln).
- Shoko.Server.sln.DotSettings
Add this badge to your README
It updates automatically each time the repo is re-graded.
[](https://www.repo-grade.com/report/shokoanime/shokoserver)