OpenList Documentation

website·Indexed 32 days ago

https://doc.oplist.org.cn

Documentation for OpenList, featuring installation guides for Docker, PaaS (Koyeb, ClawCloud), TrueNAS Scale, and manual setups. Includes configuration for third-party SSO (GitHub, Google, Microsoft, Keycloak, Authentik, Casdoor) and a wide array of storage drivers including WebDAV, SFTP, SMB, and various cloud services like Yandex Disk, Terabox, and Tencent Weiyun.

Tokens
129.9K
Snippets
338
Records
1K
Agent score
60%

What's inside OpenList

  1. Overview of OpenList Desktop

    OpenList Desktop is a cross-platform application built with Vue 3, Tauri, and Rust. It provides a graphical user interface to manage the OpenList core, perform local cloud storage mounts via Rclone (specifically WebDAV), monitor service status/uptime, and manage logs. It includes system tray integration for background operations.
  2. Overview of OpenList Desktop

    OpenList Desktop is a cross-platform desktop application built with Vue 3, Tauri, and Rust. It provides a graphical user interface for managing OpenList file management services, mounting cloud storage (WebDAV) via Rclone to the local file system, and monitoring service status and uptime. Key capabilities include process management with auto-restart, system tray integration for background operations, and GUI-based configuration management.
  3. Overview of UrlTree driver

    The UrlTree driver is used to mount individual file links into a virtual file system. It allows developers to define a directory structure and map specific URLs to files or folders.
  4. Overview of OpenList Proxy

    OpenList Proxy is a simple implementation used to proxy OpenList's download traffic. By isolating the server traffic of the OpenList deployment from the traffic required for downloads, it reduces the traffic consumption of the main server and can potentially speed up downloads. It works by verifying request signatures, fetching the real download address from the OpenList server, and forwarding the file content from the storage service to the client.
  5. Overview of OpenList Mobile

    OpenList Mobile is a mobile file server application built with the Flutter framework and based on OpenList. It allows users to turn their mobile device into a file server with the following capabilities:

    • LAN File Sharing: Share files within a local network.
    • Remote Access: Access files via an internet connection.
    • Online Management: Manage files through a web-based interface.
    • Auto-Update: The app automatically syncs with the latest OpenList releases via GitHub Actions twice daily (5 AM and 5 PM).
  6. Overview of the Strm driver

    The Strm driver converts supported files from multiple cloud drives into .strm files. It uses a local proxy method, meaning the deployed machine's traffic is consumed during 'Download Preview (Read-Only)' operations (typically less than 100KB per file).

    Critical Constraints:

    • Only Download Preview (Read-Only) is supported.
    • Operations such as Copy, Delete, Rename, Offline Download, and Upload are not supported.
  7. Overview of OpenList Worker

    OpenList Worker (repository OpenList-TSWorker) is the official TypeScript and Serverless port of the OpenList backend. It is rewritten from Go to TypeScript using Hono.js to run on edge platforms. It pairs with the official OpenList-Frontend (SolidJS), allowing for deployment without a dedicated server.
  8. Overview of OpenList Worker

    OpenList Worker (repository OpenList-TSWorker) is a TypeScript + Serverless port of OpenList. It replaces the original Go backend with a TypeScript service designed to run on edge computing platforms while maintaining the same frontend interface and interaction as the official OpenList project. It is licensed under AGPL-3.0.
  9. Overview of the Alias merge feature

    The Alias feature allows multiple different cloud drives or storage paths to be merged into a single unified directory. Folders with the same name are automatically merged, and their contents are aggregated. If files with the same name exist across different merged paths, they are handled according to specific conflict policies. This simplifies management by providing a single interface for content stored across multiple accounts or locations.
  10. Overview of OpenList seed file formats

    OpenList uses three convertible sidecar formats to share file metadata across different cloud drives, users, and devices. The .oss format is the primary, most complete container, while .torrent and .cas act as semantic projections of it.

    Format Relationships & Conversion:

    • .oss $\supseteq$ .torrent: Converts to .torrent if it contains required BitTorrent info (SHA-1 whole and piece hashes). .torrent always converts to .oss.
    • .oss $\supseteq$ .cas: Converts to .cas if it contains whole and piece MD5 hashes. .cas always converts to .oss.

    Design Goals:

    • Portability: Cross-drive and cross-device sharing.
    • Hash Reuse: Reuses drive-provided hashes to avoid redundant downloads.
    • Compatibility: .torrent follows BT v1; .cas is byte-compatible with reference project five-field formats.
    • Security: Parsing is bounded by byte, file, depth, and path-traversal limits; credentials are never serialized in seeds.
  11. Overview of the Strm driver

    The Strm driver converts supported files from multiple cloud drives into .strm files.

    Critical Constraints:

    • Only the Download Preview (Read-Only) operation is supported.
    • Operations such as Copy, Delete, Rename, Offline Download, and Upload are not supported.
    • The driver uses a local proxy method; performing a Download Preview consumes traffic from the machine where the driver is deployed (typically <100KB per file).
  12. Overview of ChaoxingxingGroupCloud driver

    The ChaoxingxingGroupCloud driver provides access to the group cloud service affiliated with Chaoxingxing (Official website: https://i.chaoxing.com). Note that this is a reverse-engineered interface based on legacy products and is not actively maintained by the project team; issues regarding fixes or further reverse engineering requests will not be addressed.