Skip to main content

Add your description here

Project description

OSS Sustain Guard

Test & Coverage Python Version PyPI - Version License: MIT

demo

Multi-language package sustainability analyzer - Evaluate your dependencies' health with 21 metrics including Contributor Redundancy, Maintainer Retention, and Security Signals.

Globally Distributed Cache - Instant results via Cloudflare KV with local fallback caching.

📌 Quick Notes:

  • Instant results - Popular packages served from global Cloudflare KV cache (no API calls needed)
  • SSL verification - Use --insecure flag to disable SSL verification for development/testing only
  • Package resolution - If a package cannot be resolved to a GitHub repository, it will be skipped with a notification
  • Full documentation - https://onukura.github.io/oss-sustain-guard/

💡 Project Philosophy

OSS Sustain Guard is designed to spark thoughtful conversations about open-source sustainability, not to pass judgment on projects. Our mission is to raise awareness about the challenges maintainers face and encourage the community to think together about how we can better support the open-source ecosystem.

We believe that:

  • 🌱 Sustainability matters - Open-source projects need ongoing support to thrive
  • 🤝 Community support is essential - For community-driven projects, we highlight funding opportunities to help users give back
  • 📊 Transparency helps everyone - By providing objective metrics, we help maintainers and users make informed decisions
  • 🎯 Respectful evaluation - We distinguish between corporate-backed and community-driven projects, recognizing their different sustainability models
  • 💝 Supporting maintainers - When available, we display funding links for community projects to encourage direct support

This tool is meant to be a conversation starter about OSS sustainability, not a judgment. Every project has unique circumstances, and metrics are just one part of the story.

🎯 Key Features

  • 21 Sustainability Metrics - Comprehensive evaluation across maintainer health, development activity, community engagement, project maturity, and security
  • Optional Dependents Analysis - Downstream dependency metrics (informational, not affecting total score)
  • 5 CHAOSS-Aligned Models - Risk, Sustainability, Community Engagement, Project Maturity, and Contributor Experience
  • Category-Weighted Scoring - Balanced 0-100 scale evaluation across 5 key sustainability dimensions
  • Multi-Language Support - Python, JavaScript, Go, Rust, PHP, Java, Kotlin, C#, Ruby
  • Time Series Analysis - Track package health trends over time, compare snapshots, generate reports
  • Community Support Awareness - Displays funding links for community-driven projects
  • Globally Distributed Cache - Cloudflare KV-based data delivery with local user cache fallback
  • CI/CD Integration - GitHub Actions, Pre-commit hooks
  • Zero Configuration - Works out of the box

🚀 Quick Start

# Install
pip install oss-sustain-guard

# Check a single package
oss-guard check requests

# Check multiple packages (auto-detect language)
oss-guard check django flask numpy

# Multi-language support
oss-guard check python:requests npm:react rust:tokio

# Auto-detect from manifest files
oss-guard check --include-lock

# Scan recursively (great for monorepos)
oss-guard check --recursive

📚 Documentation

For detailed usage, configuration, and features, see our documentation site:

Supported Ecosystems

Python, JavaScript, Go, Rust, PHP, Java, Kotlin, C#, Ruby

See Getting Started for ecosystem-specific syntax.

21 Sustainability Metrics

Evaluated across 5 categories:

  • Maintainer Health (25%) - Contributor diversity and retention
  • Development Activity (20%) - Release rhythm and recent activity
  • Community Engagement (20%) - Issue/PR responsiveness
  • Project Maturity (15%) - Documentation and governance
  • Security & Funding (20%) - Security posture and sustainability

Score interpretation: 80-100 (Healthy) | 50-79 (Monitor) | 0-49 (Needs Attention)

See Database Schema for complete metric details.

Special Features

  • 🎁 Gratitude Vending Machine - Discover community projects that need support

    oss-guard gratitude --top 5
    
  • 📊 Trend Analysis - Track package health evolution

    oss-guard trend requests
    oss-guard compare requests 2025-12-11 2025-12-12
    
  • 💝 Community Funding Links - Auto-displays funding options for community-driven projects

See Trend Analysis Guide for details.

🤝 Contributing

See CONTRIBUTING.md for development setup, testing, code style, and architecture documentation.

📝 Documentation

📄 License

MIT License

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

oss_sustain_guard-0.7.0.tar.gz (363.4 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

oss_sustain_guard-0.7.0-py3-none-any.whl (87.4 kB view details)

Uploaded Python 3

File details

Details for the file oss_sustain_guard-0.7.0.tar.gz.

File metadata

  • Download URL: oss_sustain_guard-0.7.0.tar.gz
  • Upload date:
  • Size: 363.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for oss_sustain_guard-0.7.0.tar.gz
Algorithm Hash digest
SHA256 d770ea9e76455e537a375661c38a6fce9fa0402926dc8b69e691a2ae8785fe01
MD5 6420e7063ba948c42577fcfee7078a49
BLAKE2b-256 fbcab8cb3ebd4f5c3ec890ab8bcec9f3a3fb76a190776a6ce895cb90acded9bf

See more details on using hashes here.

Provenance

The following attestation bundles were made for oss_sustain_guard-0.7.0.tar.gz:

Publisher: publish.yml on onukura/oss-sustain-guard

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file oss_sustain_guard-0.7.0-py3-none-any.whl.

File metadata

File hashes

Hashes for oss_sustain_guard-0.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 5850df13cde20b6b935844640c06fa8051b2d2d359e6898bc6fd3ea16fa50125
MD5 10f5780a1b365d02851de07b679847fa
BLAKE2b-256 2c3ce1d82e985bd127d4ef39712883a07b133e54e070010b1d47f809e9a6bba4

See more details on using hashes here.

Provenance

The following attestation bundles were made for oss_sustain_guard-0.7.0-py3-none-any.whl:

Publisher: publish.yml on onukura/oss-sustain-guard

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page