gitwtfhub

qooode/nzbdavex

28C#Audience · ops devopsComplexity · 3/5ActiveSetup · moderate

TL;DR

Self-hosted WebDAV server that mounts NZB Usenet content as a virtual drive, streaming bytes on demand instead of downloading whole files.

Mindmap

mindmap
  root((NzbDavEx))
    Inputs
      NZB files
      Usenet credentials
      Indexer config
      User profiles
    Outputs
      WebDAV mount
      SABnzbd API
      Health reports
      Usage stats
    Use Cases
      Stream media without full download
      Drop in replacement for SABnzbd
      Mount Usenet as a drive
      Automated re fetch jobs
    Tech Stack
      CSharp
      Docker
      WebDAV
      Rclone
Click or tap to explore — scroll the page freely

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

Why anyone would actually build this

REASON 1

Mount Usenet NZB content as a network drive and stream media without waiting for downloads

REASON 2

Replace SABnzbd as the download target for Sonarr or Radarr via the compatible HTTP API

REASON 3

Run a watchdog that verifies and re-fetches broken Usenet posts automatically

REASON 4

Configure multiple Usenet providers with failover and per-provider usage tracking

Stack

C#DockerWebDAVRclone.NET

Spinning it up

Difficulty · moderate Time to first run · 1h+

No published Docker image, so you must git clone then docker build before running, and configure Usenet provider credentials and indexers.

Wtf does this do

NzbDavEx is a self-hosted server that presents NZB files as if they were folders and files on a normal disk. An NZB is a small index file used by Usenet clients that points at posts on Usenet servers, the way a torrent file points at peers. Normally a downloader has to pull every part down to local storage before you can read anything. NzbDavEx skips that step: it exposes the content over WebDAV, the same protocol macOS Finder and many file managers can mount as a network drive, and only fetches the bytes you actually read. The server supports random-access reads, including seeking inside RAR and 7z archives, and inside password-protected archives. That means a media player or another program can open a file directly from the mount and jump to any point without waiting for a full download. The project also ships an HTTP API that is compatible with SABnzbd, a popular Usenet downloader, so any automation tool that already speaks SABnzbd can use NzbDavEx as a drop-in target. NzbDavEx is an extended fork of an earlier project called nzbdav. The added features include a Watchdog module that runs unattended verification and re-fetch jobs based on user rules, support for several Usenet providers with failover and per-provider usage tracking, an indexer manager configurable from the UI, a profile system for per-profile quality and handling policies, and an updated settings interface. There are also health checks that detect when content has gone missing upstream and trigger replacements. There is no published Docker image. Installation is a git clone, then docker build, then docker run, exposing port 3000. To keep settings between runs you mount a host folder at /config, and there are PUID and PGID environment variables for file ownership. A more detailed setup guide covers Docker Compose, mounting through Rclone, and tuning. The README ends with a disclaimer that the software hosts no content itself and that the user is responsible for following the law and provider terms of service.

Yoink these prompts

Prompt 1
Write a docker-compose.yml that builds NzbDavEx from a cloned repo, exposes port 3000, mounts /config, and sets PUID and PGID
Prompt 2
Configure Sonarr to use NzbDavEx as a SABnzbd-compatible download client and point it at the WebDAV mount path
Prompt 3
Set up Rclone to mount the NzbDavEx WebDAV endpoint as a local folder on a Linux server
Prompt 4
Write a NzbDavEx Watchdog rule that re-fetches any media file failing a health check from the secondary Usenet provider
Prompt 5
Compare NzbDavEx with the original nzbdav project and explain which extra features I would lose by switching back
View the repo → Decode another repo

← qooode on gitmyhub — every repo by this author, as a profile.

Don't trust strangers blindly. Verify against the repo.