83/ 100 · B

Good shape overall. A few tweaks would push it into the top tier.

RPKI Certificate Authority and Publication Server written in Rust

Rust365 starsMPL-2.0updated 18d ago
DocumentationREADME, setup, examples, license
71
EngineeringTests, CI, linting, lockfiles
85
Project healthDescription, activity, stars, deps
98

What to fix first

The highest-impact improvements for this repo.

  1. 1
    CI/CD
    EngineeringInfo

    Add `tsc --noEmit`, `mypy`, or `cargo check` to catch type errors before they merge.

  2. 2
    README
    DocumentationInfo

    Add more sections (Overview, Install, Usage, Contributing) using ## headings.

  3. 3
    README
    DocumentationInfo

    Show a quick-start snippet so contributors can see what using your project looks like.

Detailed breakdown

Documentation

71
  • README78
    • README is present.
    • README has some structure (+8 pts); 4+ sections earns the full +15 pts.Add more sections (Overview, Install, Usage, Contributing) using ## headings.
    • README includes screenshots or visuals. Great for first impressions.
    • README has no code examples (−15 pts).Show a quick-start snippet so contributors can see what using your project looks like.
    • README links to a live demo or deployed app.
    • README includes status badges.
  • Install and run instructions45
    • README documents how to install the project.
    • No run or usage instructions found (−45 pts).Add a section showing how to start or use the project.
    • If your project uses environment variables, add a .env.example listing them (+10 pts).Add a .env.example listing all required environment variables so contributors know what to set up.
  • License100
    • Licensed under MPL-2.0.
  • Contributing guide67
    • Contributing guide is detailed and thorough.
    • Contributing guide lacks a setup section (−12 pts).Show new contributors how to get a local dev environment running.
    • Contributing guide lacks a code style section (−8 pts).Describe your linting/formatting rules and how to run them (e.g. npm run lint, ruff check .).
    • Contributing guide lacks a testing section (−8 pts).Show contributors how to run the test suite (e.g. npm test, pytest, cargo test).
    • Contributing guide describes the PR/review workflow.
    • Contributing guide has no code examples (−5 pts).Add code blocks showing example commands for setup, running tests, and submitting a PR.
    • Optional: add a Code of Conduct.A CODE_OF_CONDUCT.md signals that your project is welcoming. GitHub has a template you can add in one click.

Engineering

85
  • Tests100
    • Test files detected (tests).
    • Cargo.toml has dev-dependencies and test files are present.
  • CI/CD100

    Not applicable?

    • CI is configured (.github/workflows/ci.yml).
    • CI workflow runs tests.
    • CI runs on pull requests, not just on pushes to main.
    • CI workflow runs a lint or format check.
    • Optional: add type checking to CI.Add `tsc --noEmit`, `mypy`, or `cargo check` to catch type errors before they merge.
    • CI reports or uploads test coverage.
    • CI tests across multiple environments or versions.
    • CI includes a build step.
  • Linting and formatting100
    • Rust linting configured (rustfmt.toml, cargo clippy in CI).
  • Reproducibility80
    • Lockfile present (Cargo.lock). Installs are reproducible.
    • Environment pinned via Dockerfile.
    • Dockerfile uses multi-stage builds (smaller, more secure images).
    • No Dependabot config (adding it earns up to +20 pts).Add .github/dependabot.yml with at least one package-ecosystem entry so dependencies are updated automatically.
    • Cargo.toml does not specify edition 2021.Add `edition = "2021"` to [package] in Cargo.toml for the latest Rust language features.
  • Issue and PR templates0
    • No issue or PR templates found (−100 pts).Add .github/ISSUE_TEMPLATE/ with bug_report.md and feature_request.md to guide contributors. It dramatically improves issue quality.
    • Security policy present.

Project health

98
  • Dependency manifest95
    • Dependency manifest found (Cargo.toml).
    • Cargo.toml includes a description for crates.io.
    • Cargo.toml declares a license.
    • Cargo.toml links to the source repository.
    • Cargo.toml has no documentation link (−5 pts).Add `documentation = "https://docs.rs/<crate>"` to [package] so users can find the API docs.
  • Repository metadata100
    • Repository has a description.
    • Primary language detected: Rust.
    • Cargo.toml [package] metadata is complete (description, authors, repository).
  • Activity100
    • Actively maintained (pushed within the last month).
    • 365 stars.
  • Housekeeping100
    • .gitignore present.
Repository files24 root entries
  • .github
    Good: CI is configured (.github/workflows/ci.yml).
  • defaults
  • doc
  • docker
  • pkg
  • src
  • test-resources
  • tests
    Good: Test files detected (tests).
  • ui
  • .dockerignore
  • .gitignore
    Good: .gitignore present.
  • .readthedocs.yaml
  • build.rs
  • Cargo.lock
    Good: Lockfile present (Cargo.lock). Installs are reproducible.
  • Cargo.toml
    Good: Dependency manifest found (Cargo.toml).
  • Changelog.md
  • CONTRIBUTING.md
    Good: Contributing guide is detailed and thorough.
    Info: Contributing guide lacks a setup section (−12 pts).Fix: Show new contributors how to get a local dev environment running.
    Info: Contributing guide lacks a code style section (−8 pts).Fix: Describe your linting/formatting rules and how to run them (e.g. npm run lint, ruff check .).
    Info: 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.
    Info: Contributing guide has no code examples (−5 pts).Fix: Add code blocks showing example commands for setup, running tests, and submitting a PR.
  • cypress.json
  • Dockerfile
    Good: Environment pinned via Dockerfile.
  • LICENSE
    Good: Licensed under MPL-2.0.
  • README.md
    Good: README is present.
    Info: README has some structure (+8 pts); 4+ sections earns the full +15 pts.Fix: Add more sections (Overview, Install, Usage, Contributing) using ## headings.
    Good: README includes screenshots or visuals. Great for first impressions.
    Info: 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.
    Warning: No run or usage instructions found (−45 pts).Fix: Add a section showing how to start or use the project.
  • rustfmt.toml
    Good: Rust linting configured (rustfmt.toml, cargo clippy in CI).
  • SECURITY.md
    Good: Security policy present.
  • TODO.md