You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
grumbulon 1477aee805 Fixed a really stupid issues preventing all search from actually working 4 months ago
custom Fixed a really stupid issues preventing all search from actually working 4 months ago
db refactor (#7) 5 months ago
public Changes to index page now allow custom limits, and removed finished TODOs 6 months ago
types refactor (#7) 5 months ago
util refactor (#7) 5 months ago
views refactor (#7) 5 months ago
.gitignore Babys first makefile 6 months ago
LICENSE Add license 6 months ago
Makefile Stuff 6 months ago
go.mod Babys first makefile 6 months ago
go.sum read .env file to define port, other stuff too, later, probably 6 months ago
main.go refactor (#7) 5 months ago Stuff 6 months ago


watershed is an application similar to Sonarr, however it is written in Go.

Build and run

First create a .env and enter PORT=:2255 or whatever your desired port is. If no .env is found the application will default to port 3000.

To install run make and this will download all deps in go.mod then run sudo make install and it will place the watershed binary in your /usr/local/bin directory.

Additional files will be "installed" to /usr/local/share/watershed

Tests and test coverage

Run make test and make test_coverage


sudo make clean or whatever the windows equivalent is

Watershed usage

Once the application is running you can go to http://localhost:whatever/ and you will see the index page. You may now search using,, or Lime torrents.


You can run curl -X GET "http://localhost:<whatever>/search?media=zoombies&feed=limetorrents&limit=5" | jq '.' to return a JSON object with results from that specific tracker.

Additionally right now you can run curl -X GET "http://localhost:<whatever>/scan?feed=rarbg" | jq '.' this will get the current rarbg RSS feed and return it as a JSON object -- it will also write results to a SQLite DB (reason for this to be implemented later)

"Fuck it, I'll rewrite it in Go" -- Greg Bulon one evening while not angry at javascript at all