From 6fdef0357fa8ff78cfd13073bd2e999746f01214 Mon Sep 17 00:00:00 2001 From: Amolith Date: Thu, 21 Sep 2023 22:26:56 -0400 Subject: [PATCH] Fill out README --- README.md | 54 ++++++++++++++++++++++++++++++++++++++++++++---------- 1 file changed, 44 insertions(+), 10 deletions(-) diff --git a/README.md b/README.md index c99d81d..27ff577 100644 --- a/README.md +++ b/README.md @@ -4,16 +4,52 @@ SPDX-FileCopyrightText: Amolith SPDX-License-Identifier: CC0-1.0 --> -# PROJECT_NAME +# Willow [![Go report card status][goreportcard-badge]][goreportcard] [![REUSE status][reuse-shield]][reuse] [![Donate with fosspay][fosspay-shield]][fosspay] -[![scratchanitch.dev badge][scratchanitch-badge]][scratchanitch] -## Installation +_Software release tracker supporting arbitrary forges_ -## Usage +## What is it? + +Willow tracks software releases across arbitrary forge platforms by trying to +support one of the very few things they all have in common: the VCS. At the +moment, git is the _only_ supported VCS, but I would be interested in adding +Pijul, Fossil, Mercurial, etc. You can also track releases using RSS feeds. + +Willow exists because decentralisation can be annoying. One piece of software +can be found on GitHub, another piece on GitLab, one on Bitbucket, a fourth on +SourceHut, and a fifth on the developer's self-hosted Forgejo instance. Forgejo +and GitHub have RSS feeds that only notify you of releases. GitLab doesn't +support RSS feeds for anything, just an API you can poke. Some software updates +might be on the developers' personal blog. Sometimes there are CVEs for specific +software and they get published somewhere completely different before they're +fixed in a release. + +I want to bring all that scattered information under one roof so a developer or +sysadmin can pop open willow's web UI and immediately see what needs updating +where. I've recorded some of my other ideas and plans in [my wiki]. + +[my wiki]: https://wiki.secluded.site/hypha/willow + +## Installation and use + +* Clone the repo +* Build the binary with `CGO_ENABLED=0 go build .` +* Upload it to a remote server +* Execute the binary +* Reverse proxy `localhost:1337` +* Open the web UI +* Click `Track new project` +* Fill out the form +* Indicate which version you're currently on +* That's it! + +Note that there's currently no authentication, so consider putting your instance +behind HTTP Basic Auth, keeping it private, or helping me implement +authentication. ## Questions & Contributions @@ -38,11 +74,9 @@ section._ [irc]: irc://irc.nixnet.services/#secluded [xmpp]: xmpp:secluded@muc.secluded.site?join -[goreportcard-badge]: https://goreportcard.com/badge/git.sr.ht/~amolith/p2c -[goreportcard]: https://goreportcard.com/report/git.sr.ht/~amolith/p2c -[reuse]: https://api.reuse.software/info/git.sr.ht/~amolith/p2c -[reuse-shield]: https://shields.io/reuse/compliance/git.sr.ht/~amolith/p2c +[goreportcard-badge]: https://goreportcard.com/badge/git.sr.ht/~amolith/willow +[goreportcard]: https://goreportcard.com/report/git.sr.ht/~amolith/willow +[reuse]: https://api.reuse.software/info/git.sr.ht/~amolith/willow +[reuse-shield]: https://shields.io/reuse/compliance/git.sr.ht/~amolith/willow [fosspay]: https://secluded.site/donate/ [fosspay-shield]: https://shields.io/badge/donate-fosspay-yellow -[scratchanitch-badge]: https://img.shields.io/badge/scratchanitch-dev-FFC4B5 -[scratchanitch]: https://scratchanitch.dev