0
/ 100
Polished work that hasn't found its audience yet.
CTFs as you need them
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.
- 2Install and run instructions9pt
Add a .env.example listing all required environment variables so contributors know what to set up.
- 3Reproducibility6pt
Add .github/dependabot.yml with at least one package-ecosystem entry so dependencies are updated automatically.
- 4Reproducibility6pt
Use a multi-stage Dockerfile.
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
91
Contributing guide is too short for full depth credit (−6 pts). 400+ words earns the full +12 pts.
→ Add setup instructions, code style notes, and how to run tests.
README documents how to install the project.
README is present.
Licensed under Apache-2.0.
Engineering
90
Test files detected (tests).
Lockfile present (requirements.txt). Installs are reproducible.
CI is configured (.github/workflows/lint.yml).
Linter or formatter configured (.eslintrc.js).
Issue or PR templates present.
Project health
75
No pushes in over 2 years. Looks unmaintained (−95 pts).
→ A recent commit signals the project is alive and worth using.
Dependency manifest found (package.json).
Repository has a description.
.gitignore present.
Repository health signals
Activity, community, and responsiveness at scan time
Activity
- -Commits (30d / 90d)
- 0Forks
- 0Releases
Community
- -Community health
- -authors own >50% of commits
- 1Watchers
Responsiveness
- -Median issue response
- -Median PR merge time
- 0Open issues
Repository files39 root entries
- .githubGood: CI is configured (.github/workflows/lint.yml).Good: Issue or PR templates present.
- conf
- CS2107
- CTFd
- migrations
- scripts
- testsGood: Test files detected (tests).
- .codecov.yml
- .dockerignore
- .eslintrc.jsGood: Linter or formatter configured (.eslintrc.js).
- .flaskenv
- .gitignoreGood: .gitignore present.
- .isort.cfg
- .prettierignore
- CHANGELOG.md
- CONTRIBUTING.mdIssue: Contributing guide is too short for full depth credit (−6 pts). 400+ words earns the full +12 pts.Fix: Add setup instructions, code style notes, and how to run tests.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.Issue: Contributing guide has no code examples (−5 pts).Fix: Add code blocks showing example commands for setup, running tests, and submitting a PR.
- ctfd.service
- development.txt
- docker-compose.yml
- docker-entrypoint.sh
- DockerfileGood: Environment pinned via Dockerfile.
- export.py
- import.py
- LICENSEGood: Licensed under Apache-2.0.
- Makefile
- manage.py
- package.jsonGood: Dependency manifest found (package.json).
- ping.py
- populate.py
- prepare.sh
- 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.Good: README includes status badges.Good: README documents how to install the project.Good: README documents how to run the project.
- requirements.in
- requirements.txtGood: Lockfile present (requirements.txt). Installs are reproducible.
- serve.py
- setup.cfg
- Vagrantfile
- webpack.config.js
- wsgi.py
- yarn.lock
Add this badge to your README
It updates automatically each time the repo is re-graded.
[](https://www.repo-grade.com/report/mychewcents/ctfd)