ossrs/srs
Grade a repo

89

/ 100

GradeB

Well engineered. The main gaps are CI and a contributing guide.

Top 14% of 5,156 graded repos

SRS is a simple, high-performance, AI-driven real-time media server supporting RTMP, WebRTC, HLS, HTTP-FLV, HTTP-TS, SRT, MPEG-DASH, and GB28181, with codec support for H.264, H.265, AV1, VP9, AAC, Opus, and G.711.

Top fixes

Highest-impact changes first, ranked by point weight

12 to address
  1. 1
    CI/CD14pt

    Add a step like `run: npm test`, `run: pytest`, or `run: tox` to your workflow file.

  2. 2
    CI/CD14pt

    Add a lint step to catch style issues automatically.

  3. 3
    CI/CD14pt

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

  4. 4
    Install and run instructions9pt

    Add a .env.example listing all required environment variables so contributors know what to set up.

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.

Install the GitHub App

Scorecard

Every check, grouped by category and sorted worst-first

Documentation

91

Contributing guide5pt59

CONTRIBUTING guide is very brief (−12 pts for depth). 150+ words earns +6 pts; 400+ earns +12 pts.

→ Add setup instructions, code style notes, and how to run tests.

Install and run instructions9pt90

README documents how to install the project.

README12pt100

README is present.

License6pt100

Licensed under MIT.

Engineering

86

CI/CD14pt57

CI is configured (.github/workflows/test.yml).

Reproducibility6pt85

Lockfile present (go.sum). Installs are reproducible.

Tests18pt100

Test files detected (cmd/integ/cases/api_auth_test.go).

Linting and formatting5pt100

Formatting enforced (trunk/3rdparty/srs-bench/vendor/github.com/bluenviron/gortsplib/v4/.golangci.yml).

Issue and PR templates6pt100

Issue or PR templates present.

Project health

92

Dependency manifest6pt75

Dependency manifest found (go.mod).

Repository metadata5pt100

Repository has a description.

Activity5pt100

Actively maintained (pushed within the last month).

Housekeeping3pt100

.gitignore present.

Repository health signals

Activity, community, and responsiveness at scan time

Activity

  • 15 / 60
    Commits (30d / 90d)
  • 5,703
    Forks
  • 81
    Releaseslatest 6y ago

Community

  • 87% - Good
    Community health
  • 1 bus factorlow
    author own >50% of commits
  • 29,366
    Watchers

Responsiveness

  • 670d 2h
    Median issue response
  • 2h
    Median PR merge time
  • 14
    Open issues
Repository files30 root entries
  • .agents
  • .claude
  • .github
    Good: CI is configured (.github/workflows/test.yml).
    Good: Issue or PR templates present.
  • .kiro
  • .openclaw
  • .run
  • .vscode
  • cmake
  • cmd
    Good: Test files detected (cmd/integ/cases/api_auth_test.go).
  • doc
  • internal
  • scripts
  • skills
  • tools
  • trunk
    Good: Formatting enforced (trunk/3rdparty/srs-bench/vendor/github.com/bluenviron/gortsplib/v4/.golangci.yml).
  • .clang-format
  • .codecov.yml
  • .gitignore
    Good: .gitignore present.
  • CONTRIBUTING.md
    Issue: CONTRIBUTING guide is very brief (−12 pts for depth). 150+ words earns +6 pts; 400+ earns +12 pts.Fix: Add setup instructions, code style notes, and how to run tests.
    Good: Contributing guide includes setup/install instructions.
    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).
    Issue: Contributing guide lacks a PR workflow section (−8 pts).Fix: Explain how to fork, branch, and open a pull request so contributors know what to expect.
    Issue: Contributing guide has no code examples (−5 pts).Fix: Add code blocks showing example commands for setup, running tests, and submitting a PR.
  • dev-docker
  • Dockerfile
    Good: Environment pinned via Dockerfile.
  • go.mod
    Good: Dependency manifest found (go.mod).
  • go.sum
    Good: Lockfile present (go.sum). Installs are reproducible.
  • LICENSE
    Good: Licensed under MIT.
  • Makefile
  • oryx
  • README.md
    Good: 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.
  • SECURITY.md
    Good: Security policy present.
  • state-threads
  • website
RepoGrade badge preview

Add this badge to your README

It updates automatically each time the repo is re-graded.

[![RepoGrade](https://www.repo-grade.com/api/badge/ossrs/srs)](https://www.repo-grade.com/report/ossrs/srs)

More graded C++ repos