DiffPlex is Netstandard 2.0+ C# library to generate textual diffs.
mmanela/diffplex erreicht einen Gesundheitsindex von 44 von 100 und liegt damit im Bereich Schwach. Am stärksten schneidet es bei Sustainability & Governance (61/100) ab, am schwächsten bei Vitality (30/100). Zuletzt vor 180 Tagen aktualisiert. 2 Mitwirkende tragen den Großteil der jüngsten Arbeit.
Metriken werden auf einer standardisierten Skala von 1–100 in gewichtete Kategorien gruppiert. Der Gesamtwert beginnt als ihr gewichtetes Mittel, kalibriert auf die Verteilung des öffentlichen Registers, sodass die Stufen Perzentilbedeutung tragen; sobald öffentliche Evidenz die Richtlinie für Hochrisikojurisdiktionen auslöst, wird die Bewertung angepasst und erhält die Obergrenze Gefährdet von 34.
Jede Achse ist eine Kategorie. Die Form zählt mehr als der Durchschnitt — ein gesundes Projekt füllt die gesamte Fläche, während ein Profil aus Spitzen und Kratern bedeutet, dass Stärke in einer Dimension Risiken in einer anderen verdeckt.
Der gewichtete Gesamtwert 46 wird auf der veröffentlichten Indexskala auf 44 kalibriert (Register-Kalibrierung 2026-08-02).
Dieses Repository gehört einem persönlichen Konto. Ein Projekt mit nur einem Eigentümer trägt ein höheres Kontinuitätsrisiko als ein organisationsgetragenes.
| Registry | Paket | Version | Downloads / Monat | Versionen | Zuletzt veröffentlicht | Tags |
|---|---|---|---|---|---|---|
| NuGet | DiffPlex.Windows | 1.1.0 | - | 3 | vor 947 Tagen | diff |
Lebt das Projekt — wird Code geschrieben und werden Releases ausgeliefert?
| 9.9/36 | Push-Aktualität — letzter Push vor 180 Tagen |
| 3.5/36 | Commit-Rhythmus — 5/52 Wochen mit Commits |
| 10.3/18 | Commit-Volumen — 13 Commits im letzten Jahr |
| 0/10 | OpenSSF Scorecard: Maintained — 0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0 |
| commits_last_year | 13 |
| human_commit_share | — |
| days_since_last_push | 180 |
| active_weeks_last_year | 5 |
| 27/27 | Liefert Releases aus — 4 Releases veröffentlicht |
| 0/36 | Release-Aktualität — letztes Release vor 1.866 Tagen |
| 12.6/27 | Release-Rhythmus — ein Release etwa alle 245,8 Tage |
| 0/10 | OpenSSF Scorecard: Signed-Releases — Project has not signed or included provenance with any releases. |
| releases_count | 4 |
| latest_release_tag | DiffPlex-1.7.0 |
| releases_from_tags | nein |
| days_since_latest_release | 1.866 |
| mean_days_between_releases | 245,8 |
Hat das Projekt Nutzer, Downloads, Aufmerksamkeit und ein einladendes Umfeld für Beitragende?
| 50.3/60 | Stars — 1.271 Stars |
| 19.2/25 | Forks — 201 Forks |
| 9.1/15 | Watcher — 45 Watcher |
| forks | 201 |
| stars | 1.271 |
| watchers | 45 |
| growth_state | unverified |
| growth_factor_pct | 100 |
| growth_unverified_reason | no_history |
| 22.5/22.5 | README |
| 22.5/22.5 | Lizenz — anerkannte Lizenz (Apache-2.0) |
| 0/18 | CONTRIBUTING-Leitfaden |
| 0/13.5 | Verhaltenskodex |
| 0/7.2 | Issue-Vorlage |
| 0/6.3 | PR-Vorlage |
| has_readme | ja |
| has_license | ja |
| readme_badges | — |
| has_contributing | nein |
| has_issue_template | nein |
| has_code_of_conduct | nein |
| readme_badge_services | — |
| has_pull_request_template | nein |
| 35.4/80 | Downloads gesamt — 2.558 Downloads insgesamt über nuget |
| 0/20 | Abhängige in der Registry — von diesem Ökosystem nicht ausgewiesen |
| packages | DiffPlex.Windows |
| dependents | — |
| ecosystems | nuget |
| total_downloads | 2.558 |
| monthly_downloads | — |
| unverified_packages_excluded | — |
Überdauert das Projekt die Menschen, die es tragen — Bus-Faktor, Reaktionsfähigkeit, Trägerschaft und Paketpflege?
| 25.2/54 | Bus-Faktor — 2 Beitragende decken die Hälfte aller Commits ab |
| 12.8/22.5 | Commit-Verteilung — wichtigste beitragende Person verfasste 43 % der Commits |
| 13.5/13.5 | Breite der Beitragenden — 22 Beitragende |
| 10/10 | OpenSSF Scorecard: Contributors — project has 21 contributing companies or organizations |
| bus_factor | 2 |
| contributors_sampled | 22 |
| top_contributor_share | 0,431 |
| 25.6/42 | Issue-Lösungsquote — 61 % der Issues geschlossen |
| 24.6/30 | PR-Annahme — 55/67 entschiedene PRs gemergt |
| 0/13 | Newcomer PR acceptance — kein PR eines Erstbeitragenden in 30 Tagen entschieden |
| 0/15 | OpenSSF Scorecard: Code-Review — Found 0/19 approved changesets -- score normalized to 0 |
| merged_prs | 55 |
| open_issues | 34 |
| closed_issues | 53 |
| prs_merged_7d | — |
| prs_decided_7d | — |
| prs_merged_30d | — |
| prs_decided_30d | — |
| issue_closed_ratio | 0,609 |
| closed_unmerged_prs | 12 |
| first_time_authors_30d | — |
| first_time_prs_merged_30d | — |
| first_time_prs_decided_30d | — |
| 10/30 | Organisatorische Trägerschaft — persönliches (Nutzer-)Konto |
| 0/20 | Verifizierte Domain — für Nutzerkonten nicht anwendbar |
| 16.4/25 | Reichweite des Inhabers — 193 Follower von mmanela |
| 25/25 | Kontohistorie — 84 öffentliche Repos, Kontoalter ca. 16 Jahre |
| followers | 193 |
| owner_type | User |
| is_verified | — |
| owner_login | mmanela |
| public_repos | 84 |
| account_age_days | 5.876 |
| 25/25 | Veröffentlicht & auflösbar — 1 Paket(e) auf nuget |
| 4/35 | Veröffentlichungsaktualität — letzte Veröffentlichung vor 947 Tagen |
| 12/20 | Versionshistorie — 3 veröffentlichte Versionen |
| 20/20 | Nicht veraltet — aktiv, nicht veraltet oder zurückgezogen |
| packages | DiffPlex.Windows |
| ecosystems | nuget |
| any_deprecated | nein |
| min_days_since_publish | 947 |
Sind grundlegende Engineering- und Dokumentationspraktiken vorhanden?
| 24/24 | CI-Workflows — 1 Workflow(s) |
| 0/24 | Tests vorhanden |
| 0/16 | Linter-Konfiguration |
| 0/9.6 | Pre-Commit-Hooks |
| 0/6.4 | .editorconfig |
| 12/20 | OpenSSF Scorecard: CI-Tests — 2 out of 3 merged PRs checked by a CI test -- score normalized to 6 |
| has_ci | ja |
| has_tests | nein |
| has_editorconfig | nein |
| has_linter_config | nein |
| has_precommit_config | nein |
| 30/30 | README |
| 0/25 | Dokumentationsverzeichnis |
| 0/15 | Dokumentations-/Homepage-Site |
| 10/10 | Repository-Beschreibung |
| 0/10 | Topics |
| 10/10 | Wiki |
| topics | — |
| has_wiki | ja |
| homepage | — |
| docs_site | — |
| has_readme | ja |
| has_docs_dir | nein |
| has_description | ja |
Sind die sichtbaren Sicherheits- und Lieferkettenpraktiken belastbar, ohne ungeklärte Exposition gegenüber Hochrisikojurisdiktionen?
| 7.5/7.5 | Binary-Artifacts — no binaries found in the repo |
| 2.2/7.5 | Branch-Protection — branch protection is not maximal on development and all release branches |
| 1.5/2.5 | CI-Tests — 2 out of 3 merged PRs checked by a CI test -- score normalized to 6 |
| 0/2.5 | CII-Best-Practices — no effort to earn an OpenSSF best practices badge detected |
| 0/7.5 | Code-Review — Found 0/19 approved changesets -- score normalized to 0 |
| 2.5/2.5 | Contributors — project has 21 contributing companies or organizations |
| 10/10 | Dangerous-Workflow — no dangerous workflow patterns detected |
| 0/7.5 | Dependency-Update-Tool — no update tool detected |
| 0/5 | Fuzzing — project is not fuzzed |
| 2.5/2.5 | Lizenz — license file detected |
| 0/7.5 | Maintained — 0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0 |
| 0/5 | Packaging — keine Daten |
| 0/5 | Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0 |
| 0/5 | SAST — SAST tool is not run on all commits -- score normalized to 0 |
| 0/5 | Security-Policy — security policy file not detected |
| 0/7.5 | Signed-Releases — Project has not signed or included provenance with any releases. |
| 7.5/7.5 | Token-Permissions — GitHub workflow tokens follow principle of least privilege |
| 0/7.5 | Vulnerabilities — 101 existing vulnerabilities detected |
| source | openssf_scorecard |
| checks_evaluated | 17 |
| scorecard_version | v5.5.0 |
| checks_inconclusive | 1 |
| scorecard_aggregate | 3,4 |
Wie gut ist das Repository dafür ausgestattet, mit KI-Coding-Agenten entwickelt und gepflegt zu werden? Trägt ein bewusst kleines Gewicht (4 %): Agenten-Tooling ist ein echtes Pflegesignal, doch ein Repository ohne jedes Signal kann weiterhin 100/100 erreichen.
| 45/45 | Agentenanweisungen — AGENT.md |
| 0/15 | Maschinenlesbare Doku (llms.txt) |
| 0/40 | Lesbare Commit-Historie — keine Daten |
| has_llms_txt | nein |
| llms_txt_url | — |
| legible_history_share | — |
| agent_instruction_files | AGENT.md |
| agent_instruction_max_bytes | 1.195 |
| 0/18 | Bootstrap mit einem Befehl |
| 0/22 | Automatisierte Tests |
| 0/11 | Lint-/Format-Konfiguration |
| 11/11 | Statische Typprüfung — C# (statisch typisiert) |
| 10/10 | Reproduzierbare Umgebung — lockfile |
| 0/10 | Belegte Agentenpraxis — keine Daten |
| 0/8 | Automatisierte Wartung — keine Daten |
| 0/10 | OpenSSF Scorecard: Pinned-Dependencies — dependency not pinned by hash detected -- score normalized to 0 |
| has_nix | nein |
| has_tests | nein |
| lockfiles | Gemfile.lock |
| has_dockerfile | nein |
| typed_language | ja |
| bootstrap_files | — |
| has_devcontainer | nein |
| has_linter_config | nein |
| typecheck_configs | — |
| agent_commit_share | — |
| toolchain_manifests | — |
| dependency_bot_commit_share | — |
| 45/45 | Typprüfbarer Code — C# (statisch typisiert) |
| 55/55 | Handhabbare Dateigrößen — 0/100 Quelldateien über 60 KB |
| primary_language | C# |
| largest_source_bytes | 52.915 |
| source_files_sampled | 100 |
| oversized_source_files | 0 |
Unabhängige, werkzeugneutrale Sicherheitsbewertung durch das quelloffene OpenSSF Scorecard. Jede Prüfung honoriert eine Sicherheits-Praxis, nicht das Werkzeug eines bestimmten Anbieters. Prüfungen, die Scorecard nicht ermitteln konnte, sind mit k. A. markiert und vom Sicherheitswert ausgeschlossen (nie als null gezählt).
| 10 | Binary-Artifacts | no binaries found in the repo |
| 3 | Branch-Protection | branch protection is not maximal on development and all release branches |
| 6 | CI-Tests | 2 out of 3 merged PRs checked by a CI test -- score normalized to 6 |
| 0 | CII-Best-Practices | no effort to earn an OpenSSF best practices badge detected |
| 0 | Code-Review | Found 0/19 approved changesets -- score normalized to 0 |
| 10 | Contributors | project has 21 contributing companies or organizations |
| 10 | Dangerous-Workflow | no dangerous workflow patterns detected |
| 0 | Dependency-Update-Tool | no update tool detected |
| 0 | Fuzzing | project is not fuzzed |
| 10 | License | license file detected |
| 0 | Maintained | 0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0 |
| k. A. | Packaging | packaging workflow not detected |
| 0 | Pinned-Dependencies | dependency not pinned by hash detected -- score normalized to 0 |
| 0 | SAST | SAST tool is not run on all commits -- score normalized to 0 |
| 0 | Security-Policy | security policy file not detected |
| 0 | Signed-Releases | Project has not signed or included provenance with any releases. |
| 10 | Token-Permissions | GitHub workflow tokens follow principle of least privilege |
| 0 | Vulnerabilities | 101 existing vulnerabilities detected |
| Registry | Paket | Versionsvorgabe | Manifest |
|---|---|---|---|
| NuGet | Microsoft.WindowsAppSDK | 1.6.241114003 | DiffPlex.App/DiffPlex.App.csproj |
| NuGet | Microsoft.WindowsAppSDK | 1.6.241114003 | DiffPlex.Windows/DiffPlex.Windows.csproj |
| NuGet | Microsoft.Windows.SDK.BuildTools | 10.0.26100.1742 | DiffPlex.Windows/DiffPlex.Windows.csproj |
| NuGet | Trivial.WindowsKit | 9.2.0 | DiffPlex.Windows/DiffPlex.Windows.csproj |
| NuGet | Microsoft.SourceLink.GitHub | 8.0.0 | DiffPlex.Windows/DiffPlex.Windows.csproj |
| NuGet | Microsoft.NET.Test.Sdk | 17.1.0 | Facts.DiffPlex/Facts.DiffPlex.csproj |
| NuGet | Moq | 4.17.1 | Facts.DiffPlex/Facts.DiffPlex.csproj |
| NuGet | xunit | 2.4.1 | Facts.DiffPlex/Facts.DiffPlex.csproj |
| NuGet | xunit.runner.visualstudio | 2.4.3 | Facts.DiffPlex/Facts.DiffPlex.csproj |
| NuGet | BenchmarkDotNet | 0.13.12 | Perf.DiffPlex/Perf.DiffPlex.csproj |
| NuGet | BenchmarkDotNet.Diagnostics.Windows | 0.13.12 | Perf.DiffPlex/Perf.DiffPlex.csproj |
| NuGet | Microsoft.ApplicationInsights.AspNetCore | 2.22.0 | WebDiffer/WebDiffer.csproj |
| NuGet | Microsoft.VisualStudio.Web.BrowserLink | 2.2.0 | WebDiffer/WebDiffer.csproj |
Vollständig aufgelöster Abhängigkeitssatz aus dem GitHub-Abhängigkeitsgraphen: 12 direkte und 46 indirekte (transitive) Pakete. Die transitive Hülle ist vollständig, wenn das Repository eine Lockfile eincheckt.
| Registry | Paket | Version | Beziehung |
|---|---|---|---|
| NuGet | BenchmarkDotNet | 0.13.12 | direkt |
| NuGet | BenchmarkDotNet.Diagnostics.Windows | 0.13.12 | direkt |
| NuGet | Microsoft.ApplicationInsights.AspNetCore | 2.22.0 | direkt |
| NuGet | Microsoft.NET.Test.Sdk | 17.1.0 | direkt |
| NuGet | Microsoft.SourceLink.GitHub | 8.0.0 | direkt |
| NuGet | Microsoft.VisualStudio.Web.BrowserLink | 2.2.0 | direkt |
| NuGet | Microsoft.Windows.SDK.BuildTools | 10.0.26100.1742 | direkt |
| NuGet | Microsoft.WindowsAppSDK | 1.6.241114003 | direkt |
| NuGet | Moq | 4.17.1 | direkt |
| NuGet | Trivial.WindowsKit | 9.2.0 | direkt |
| NuGet | xunit | 2.4.1 | direkt |
| NuGet | xunit.runner.visualstudio | 2.4.3 | direkt |
| npm | btoa | ~1.1.2 | indirekt |
| npm | glob | ~7.0.3 | indirekt |
| npm | grunt | ~1.0.1 | indirekt |
| npm | grunt-autoprefixer | ~3.0.4 | indirekt |
| npm | grunt-contrib-clean | ~1.0.0 | indirekt |
| npm | grunt-contrib-compress | ~1.3.0 | indirekt |
| npm | grunt-contrib-concat | ~1.0.0 | indirekt |
| npm | grunt-contrib-connect | ~1.0.0 | indirekt |
| npm | grunt-contrib-copy | ~1.0.0 | indirekt |
| npm | grunt-contrib-csslint | ~1.0.0 | indirekt |
| npm | grunt-contrib-cssmin | ~1.0.0 | indirekt |
| npm | grunt-contrib-htmlmin | ~1.5.0 | indirekt |
| npm | grunt-contrib-jshint | ~1.0.0 | indirekt |
| npm | grunt-contrib-less | ~1.3.0 | indirekt |
| npm | grunt-contrib-pug | ~1.0.0 | indirekt |
| npm | grunt-contrib-qunit | ~0.7.0 | indirekt |
| npm | grunt-contrib-uglify | ~1.0.0 | indirekt |
| npm | grunt-contrib-watch | ~1.0.0 | indirekt |
| npm | grunt-csscomb | ~3.1.0 | indirekt |
| npm | grunt-exec | ~1.0.0 | indirekt |
| npm | grunt-html | ~8.0.1 | indirekt |
| npm | grunt-jekyll | ~0.4.4 | indirekt |
| npm | grunt-jscs | ~3.0.1 | indirekt |
| npm | grunt-saucelabs | ~9.0.0 | indirekt |
| npm | load-grunt-tasks | ~3.5.0 | indirekt |
| npm | markdown-it | ^7.0.0 | indirekt |
| npm | shelljs | ^0.7.0 | indirekt |
| npm | shx | ^0.1.2 | indirekt |
| npm | time-grunt | ^1.3.0 | indirekt |
| NuGet | jQuery | — | indirekt |
| RubyGems | addressable | 2.4.0 | indirekt |
| RubyGems | colorator | 0.1 | indirekt |
| RubyGems | ffi | 1.9.14-x64-mingw32 | indirekt |
| RubyGems | jekyll | 3.1.6 | indirekt |
| RubyGems | jekyll-sass-converter | 1.4.0 | indirekt |
| RubyGems | jekyll-sitemap | 0.11.0 | indirekt |
| RubyGems | jekyll-watch | 1.4.0 | indirekt |
| RubyGems | kramdown | 1.11.1 | indirekt |
| RubyGems | liquid | 3.0.6 | indirekt |
| RubyGems | listen | 3.0.8 | indirekt |
| RubyGems | mercenary | 0.3.6 | indirekt |
| RubyGems | rb-fsevent | 0.9.7 | indirekt |
| RubyGems | rb-inotify | 0.9.7 | indirekt |
| RubyGems | rouge | 1.11.1 | indirekt |
| RubyGems | safe_yaml | 1.0.4 | indirekt |
| RubyGems | sass | 3.4.22 | indirekt |
Stimmt etwas in diesem Bericht nicht, oder gibt es Gedanken dazu? Falsche Messungen, übersehene Tools, Ideen, Fragen — alles ist willkommen. Jede Nachricht wird gelesen und beantwortet.
Bewertungen sind Signale, keine Garantien. Sie spiegeln öffentlich sichtbare Praxis auf GitHub wider — kein Code-Audit und keine Sicherheitsgarantie.
Fehlende Daten werden ausgeschlossen und die Gewichte neu normiert, nie als null bewertet. Die Methodik ist versioniert und offen: Metriken v2.10.0, Schema v0.11.0 — vollständige Methodik · Metriken-Wiki.
Wie ein einzelnes Ergebnis im Gesamtregister steht: aggregierte Statistiken — NuGet.