govital

module
v1.2.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 18, 2026 License: Apache-2.0

README

= Govital - Go Dependency Maintenance Scanner

image:https://img.shields.io/badge/License-Apache%202.0-blue.svg[link="http://www.apache.org/licenses/LICENSE-2.0"]
image:https://github.com/steffakasid/govital/actions/workflows/codeql-analysis.yml/badge.svg[link:https://github.com/steffakasid/govital/actions/workflows/codeql-analysis.yml]
image:https://github.com/steffakasid/govital/actions/workflows/release.yml/badge.svg[link:https://github.com/steffakasid/govital/actions/workflows/release.yml]
image:https://github.com/steffakasid/govital/actions/workflows/go-test.yml/badge.svg[link:https://github.com/steffakasid/govital/actions/workflows/go-test.yml]

A command-line tool to scan all dependencies of a given Go project and check if those dependencies are actively maintained and if the used versions are up to date.

== Features

* Scans all dependencies of a Go project
* Checks if dependencies are actively maintained
* Identifies outdated dependency versions
* Provides detailed dependency status report

== Prerequisites

* Go 1.24.5 or later
* Git (for downloading dependencies)

== Installation

=== Homebrew

Install via Homebrew tap:

[source,bash]
----
brew tap steffakasid/homebrew-govital
brew install govital
----

=== Go Install

Install directly using Go:

[source,bash]
----
go install github.com/steffakasid/govital@latest
----

=== From Source

Clone and build:

[source,bash]
----
git clone https://github.com/steffakasid/govital.git
cd govital
go build -o govital ./cmd/govital
----

== Usage

=== Basic Scan

Scan the current project:

[source,bash]
----
govital scan
----

Scan a specific project:

[source,bash]
----
govital scan --project-path /path/to/project
----

=== Set Stale Threshold

Configure when dependencies are considered inactive (default: 30 days):

[source,bash]
----
govital scan --stale-threshold 180
----

=== Include Indirect Dependencies

By default, only direct dependencies are scanned. To include indirect (transitive) dependencies:

[source,bash]
----
govital scan --include-indirect
----

This is useful for analyzing the full dependency tree but can be slower for large projects.

=== Parallel Scanning

Control the number of parallel workers for faster scanning (default: 4):

[source,bash]
----
# Use 8 workers for faster scanning on powerful hardware
govital scan --workers 8

# Use 1 worker to minimize resource usage
govital scan --workers 1
----

Parallel scanning significantly improves performance on projects with many dependencies.

=== Log Levels

Set log level for output:

[source,bash]
----
govital scan --log-level debug
----

Available levels: `debug`, `info`, `warn`, `error`

== Configuration

include::CONFIGURATION.adoc[leveloffset=+1]

== Extension points for the future

* Scan multiple projects e.g. from Github organization or Gitlab group
* Build Docker images with Govital pre-installed for CI/CD integration
* Expose results as Prometheus metrics for monitoring
* Publish Homebrew formula updates through one shared tap repository for all projects

== License

Apache License 2.0

Directories

Path Synopsis
cmd
govital command
pkg

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL