Favicon of OpenList

OpenList

OpenList is an open-source, AGPL-3.0 Go project that unifies dozens of cloud storage providers into one searchable, previewable web file listing.

Open Source Alternative to:
OpenList website screenshot
OpenList GitHub repository preview

OpenList is a community-maintained fork of AList, built for developers and self-hosters who want a single web interface to browse, preview, and manage files across dozens of cloud storage providers. It's aimed at anyone running a personal or shared file server who is tired of juggling separate apps for Google Drive, OneDrive, Baidu, Aliyun, S3, and similar services.

The project was created in response to trust concerns around the original AList project's governance, with an emphasis on staying fully open-source and AGPL-3.0 licensed going forward.

Key features

  • Multi-storage support: connects to 40+ backends including local storage, S3, WebDAV, FTP/SFTP, GoogleDrive, OneDrive, Dropbox, Mega.nz, Aliyundrive, BaiduNetdisk, PikPak, 115, Quark, Thunder, and more.
  • File preview: renders PDFs, markdown, code, plain text, images (gallery mode), video/audio with lyrics and subtitle support, and Office documents (docx, pptx, xlsx).
  • Web-based file operations: upload (optionally by anonymous visitors), delete, mkdir, rename, move, and copy files, including copying between two different storage backends.
  • WebDAV server: exposes your aggregated storage as a WebDAV endpoint for use with other clients.
  • Offline download: queue downloads to run server-side without keeping a client connection open.
  • Package download: download whole files or folders as a packaged archive.
  • Access control: protected routes with password protection and authentication for shared links.
  • Deployment flexibility: runs via Docker, supports Cloudflare Workers as a proxy, and offers multi-thread downloading acceleration for single-thread sources.
  • UI extras: dark mode, internationalization (i18n), permalink copying, and direct file download links.

Ideal use cases

OpenList fits well if you run a home server, NAS, or VPS and want one dashboard to browse files scattered across multiple cloud accounts, or if you want to re-share files from a cloud drive without exposing the underlying account. It also works for teams that need a lightweight, self-hosted file browser with upload/download permissions and WebDAV access for other tools.

It is not a good fit if you need a full file-sync client (it proxies and lists, it doesn't sync bidirectionally), or if you require a hosted SaaS with support contracts and guaranteed uptime, since the docs and demo run on donated infrastructure. It also isn't the right tool if you need to modify or intercept file contents in transit; OpenList performs HTTP redirects or traffic forwarding through official SDKs/APIs without altering data.

Installation

OpenList is written in Go and distributed as prebuilt binaries and Docker images through GitHub Releases. The most common path is Docker:

docker pull openlistteam/openlist:latest
docker run -d --restart=unless-stopped \
  -v /etc/openlist:/opt/openlist/data \
  -p 5244:5244 \
  --name openlist \
  openlistteam/openlist:latest

After the container starts, check the logs for the auto-generated admin password, then log in at http://<your-server-ip>:5244.

For a manual/binary setup, grab the release matching your OS/arch from the GitHub Releases page, extract it, and run the binary directly:

./openlist server

Full configuration options, storage-provider setup guides, and reverse-proxy instructions are covered in the official docs at doc.oplist.org (with a CN mirror at doc.oplist.org.cn). A live demo is available for both global and CN regions if you want to try the UI before deploying.

Frequently asked questions

Share:

Stars
24.3K
Forks
2.2K
Last commit
24 hours ago
Repository age
1 year
License
AGPL-3.0
Self-hosted
Yes
Activity score
83/100
View Repository
Ad
Favicon

 

  
 

Similar to OpenList

Favicon

 

  
 
Favicon

 

  
 
Favicon