Need help with synology-download-manager?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

177 Stars 26 Forks 561 Commits 28 Opened issues


An open source browser extension for adding/managing download tasks to your Synology DiskStation.

Services available


Need anything else?

Contributors list

# 41,946
530 commits
# 541,391
1 commit
# 210,462
1 commit

NAS Download Manager

An open source browser extension for adding/managing download tasks to your Synology DiskStation.


Having an Issue?

If you're here because of an issue with the extension, please check the FAQ first. If you can't find an answer there, feel free to open an issue!


NAS Download Manager allows you to add and manage your download tasks on your Synology DiskStation right from your browser. It requires a Synology NAS with DSM version 4 or higher.

Please note that NAS Download Manager is not an official Synology offering.


  • Right-click and download many types of media (
    tags) and files (e.g.
  • Clear all completed tasks with one click.
  • Choose destination folder for new download tasks.
  • View, filter and sort all the current download tasks in the extension popup.
  • Add/pause/resume/remove download tasks in the extension popup.
  • System notifications for completed download tasks.
  • Open some types of links (e.g.
    ) in the extension rather than a desktop application.

Officially Supported Browsers

Browsers Reported to Work

These browsers are not officially supported and the extension is untested with them, but there are ways to install it.

Unsupported Browsers

There are currently no plans to support the following browsers.

  • Safari


NAS Download Manager needs your login credentials to communicate with your NAS. It doesn't collect, store or transmit any other information. Read more.


Please note that development is not actively supported on Windows. Some of the below commands may fail and require manually invoking an analogous Windows command instead.


Dependencies are managed with Yarn. Install it if you don't already have it.

Actively Developing the Extension

These instructions describe how to build and automatically re-build the assets for the extension for quick iteration during active development. For building, optimizing and packaging the extension for distribution, see the next section.

Please note that while the build tasks will auto-recompile, the browser may not pick up changes automatically. In particular, changes to code running in the extension's background generally requires you to explicitly refresh the extension (for which there is usually a button in the debugging interface). Changes to language support may require you to remove the development extension entirely and re-add it.

  1. Install dependencies.

  2. Start a build to watch files and auto-recompile code on change.

    yarn watch
  3. In your browser, navigate to the extension debugging page and open



    > This Firefox > Load Temporary Add-on...


    > Enable "Developer mode" > Load unpacked

Packing the Extension for Distribution

  1. Install dependencies.

  2. Build and optimize all assets.

    yarn build
  3. Zip all assets into a file suitable for distribution.

    yarn zip
  4. (Optional) Zip all source code into a file suitable for distribution.

    yarn zip-sources

Translating the Extension

I need help localizing NAS Download Manager! Read in detail about how to localize WebExtensions, or skip to the sections below for short summaries.

Adding a New Language

In order to add the new language, base your translation file off the English messages file.

  1. Copy
    into a new file at
  2. Edit the
    field in each item with your translation.
  3. In
    , add a new import line like
    import "moment/locale/";
  4. Load (or reload) the extension to test it out. You may need to remove the extension entirely and then re-add it for changes to be reflected.
  5. Open a pull request!

There are automated checks to ensure that you're only defining translated strings that the extension actually uses.

Editing an Existing Language

If you're adding more strings for an incomplete translation, you can use

to get a list of all the entries you need to add to the
in a format that is easily copy-pasted:
$ ./scripts/diff-messages ru
"Badge_shows": {
  "message": "Badge shows",
  "description": "Prefix text for badge-display-type dropdown."

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.