Help us shape the future of Go! Take the 2026 Go Developer Survey

diffx

module
v0.2.5 Latest Latest
Warning

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

Go to latest
Published: Nov 1, 2026 License: MIT

README

diffx

Review local Git changes in your browser without modifying your working tree or index.

Install

With Homebrew:

brew install flexdinesh/tap/diffx

Or with Go 1.27.3 or later:

go install github.com/flexdinesh/diffx/cmd/diffx@latest

See Getting started for pinned and edge versions.

Quick start

From your Git repository, run:

diffx

Your browser opens the captured changes. Review a fixed patch instead with git diff | diffx. Use diffx --help for usage.

Documentation

User documentation lives in docs-website/:

For development and architecture, see docs/development.md and docs/architecture.md. Publishing instructions: docs/release.md.

Directories

Path Synopsis
cmd
diffx command
diffx-console command
diffx-fetcher command
diffx-server command
internal
authhttp
Package authhttp holds the HTTP rules the remote server and the console share: problem responses, JSON bodies, identity error mapping, session cookies, CSRF, authentication admission and deployment probes.
Package authhttp holds the HTTP rules the remote server and the console share: problem responses, JSON bodies, identity error mapping, session cookies, CSRF, authentication admission and deployment probes.
collector
Package collector produces Git-aware ingestion requests.
Package collector produces Git-aware ingestion requests.
config
Package config owns persisted settings, separate from private runtime credentials.
Package config owns persisted settings, separate from private runtime credentials.
consoleserver
Package consoleserver serves the admin console: first-admin setup, admin sign-in, account and invite administration and the app's settings over the server's database.
Package consoleserver serves the admin console: first-admin setup, admin sign-in, account and invite administration and the app's settings over the server's database.
contextservice
Package contextservice manages durable review targets independently of transports.
Package contextservice manages durable review targets independently of transports.
controlapi
Package controlapi implements the private, authenticated CLI-to-local-server API.
Package controlapi implements the private, authenticated CLI-to-local-server API.
diagnostics
Package diagnostics records bounded, content-free collection diagnostics.
Package diagnostics records bounded, content-free collection diagnostics.
fetcher
Package fetcher mirrors leased GitHub pull requests and collects them offline with the shared collector.
Package fetcher mirrors leased GitHub pull requests and collects them offline with the shared collector.
fetchprotocol
Package fetchprotocol is the internal contract between diffx-server and diffx-fetcher.
Package fetchprotocol is the internal contract between diffx-server and diffx-fetcher.
github
Package github adapts GitHub App REST, OAuth and webhook wire formats.
Package github adapts GitHub App REST, OAuth and webhook wire formats.
githubsync
Package githubsync owns the GitHub integration's application rules: which accounts may follow which repositories, webhook deduplication, coalesced refresh intent and reconciliation.
Package githubsync owns the GitHub integration's application rules: which accounts may follow which repositories, webhook deduplication, coalesced refresh intent and reconciliation.
google
Package google is the Google OpenID Connect wire adapter: authorization URLs and the authorization-code exchange.
Package google is the Google OpenID Connect wire adapter: authorization URLs and the authorization-code exchange.
hooks
Package hooks schedules finite, detached checkout synchronization workers.
Package hooks schedules finite, detached checkout synchronization workers.
identityservice
Package identityservice owns remote account and credential policies.
Package identityservice owns remote account and credential policies.
ingestion
Package ingestion defines snapshot contracts, pure identity rules and HTTP clients.
Package ingestion defines snapshot contracts, pure identity rules and HTTP clients.
ingestionqueue
Package ingestionqueue owns durable admission and worker contracts.
Package ingestionqueue owns durable admission and worker contracts.
pgstore
Package pgstore is the server's Postgres persistence: every server replica shares its state, so no process owns the database.
Package pgstore is the server's Postgres persistence: every server replica shares its state, so no process owns the database.
processlock
Package processlock provides kernel-owned process locks.
Package processlock provides kernel-owned process locks.
pushservice
Package pushservice owns Web Push for the remote server: when push is enabled, the server's VAPID identity, each account's device subscriptions, and delivery of notification intent recorded with ingestion admissions.
Package pushservice owns Web Push for the remote server: when push is enabled, the server's VAPID identity, each account's device subscriptions, and delivery of notification intent recorded with ingestion admissions.
remoteserver
Package remoteserver composes distributed identity and owner-scoped applications.
Package remoteserver composes distributed identity and owner-scoped applications.
reviewdata
Package reviewdata defines storage-independent review identities and results.
Package reviewdata defines storage-independent review identities and results.
serverapp
Package serverapp composes stored-data application services and transports.
Package serverapp composes stored-data application services and transports.
storetest
Package storetest is the behavioral contract shared by every review store.
Package storetest is the behavioral contract shared by every review store.
submission
Package submission preserves immutable manual uploads across CLI invocations.
Package submission preserves immutable manual uploads across CLI invocations.
testsupport/pgtest
Package pgtest gives each test its own migrated Postgres database.
Package pgtest gives each test its own migrated Postgres database.
version
Package version reports diffx build metadata.
Package version reports diffx build metadata.
webpush
Package webpush is the Web Push wire adapter: VAPID key generation, RFC 8291 payload encryption with RFC 8292 VAPID authorization, and classification of push service responses.
Package webpush is the Web Push wire adapter: VAPID key generation, RFC 8291 payload encryption with RFC 8292 VAPID authorization, and classification of push service responses.
packages
api
tools
check-boundaries command
Command check-boundaries validates production dependencies for the active Go build target.
Command check-boundaries validates production dependencies for the active Go build target.
check-runner command
check-runner validates immutable sources in explicitly managed Dagger sessions.
check-runner validates immutable sources in explicitly managed Dagger sessions.
release-version command
stage-web command

Jump to

Keyboard shortcuts

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