package icon

Twig

Dual-pane file manager: archives, SFTP, SMB, WebDAV, S3, restic, Jellyfin
New in version 1.16.0
Folder sorting/views with optional inheritance. Add private space and per-pane root visibility, text saving and dual-pane share picking. Optional bottom toolbar, Exit on Back and completion alerts. Background deletion and batch trash recovery. Series opening/ending skip marks. Swipe music covers for volume; notification timer and Exit. Website camera/mic/location controls. Fix selection, mirror-sync refresh and share-picker rotation. Name dialogs: keyboard and stem selection. Remember ZIP/7Z.
Twig is a dual-pane file manager for Android that puts every storage source in one tree, written in plain Kotlin and XML views, with no Material library and as few dependencies as possible.

One tree, every source

Local storage, archives, FTP, SFTP, SMB, WebDAV, S3, restic backup repositories and Jellyfin/Emby servers are all the same thing to the interface. Copying between any two of them is one code path: an SMB folder can be compressed straight into a local ZIP, and a file inside a remote archive can be streamed to an FTP server. Archives expand in place, like folders.

Small and resource-conscious

The 1.14.0 libre APK measures 10.28 MiB for arm64-v8a and x86_64 together, including the terminal and media player. Dependencies are added only after measuring their APK cost.

Features


  • Two panes with independent navigation, tree-style in-place expansion, grid view and thumbnails

  • Copy and move across sources with progress and cancellation; multi-file sharing and selection properties

  • Batch rename with text/regex replacement, numbering and live previews

  • Read and create ZIP/7z, including encrypted archives; browse tar and gz/xz/bz2/zst files

  • Folder compare and sync between any two sources

  • Disk usage treemap, pinch to zoom

  • Text editing with syntax highlighting and original encoding; hex, PDF, image and media viewers

  • Music playlists across sources, waveform seeking, synced lyrics and background playback

  • A git client written from scratch: status, history, side-by-side diff, worktrees and submodules, on local and remote repositories

  • Local, SSH and privileged terminals with multiple sessions; locate the shell directory in the file tree

  • Configurable file, folder, website and command shortcuts; edit paths by long-pressing or double-tapping the path bar

  • Wi-Fi sharing: Twig becomes an HTTP and WebDAV server, so a desktop can mount it

  • Website bookmarks with home-screen shortcuts, per-site display settings, custom JavaScript/CSS, element hiding, manual resource blocking and page debugging

  • Website downloads default to Downloads/twig; optional background running uses a foreground service with a notification

  • Root/Shizuku access within the local tree; Android/data access through saved SAF grants where Android permits it

  • Encrypted saved credentials, master-password app lock, fingerprint unlock and configuration backups



Less usual things


  • Browse restic backup repositories read-only, decrypted on the device, with snapshots shown as dated folders.

  • Network MP4/MKV thumbnails use container indexes to locate keyframes, fetching only small portions of the video for metadata and frame decoding.

  • Blu-ray M2TS playback, including BDAV 192-byte packets, DTS-HD Master Audio, TrueHD through its embedded AC-3 core, and PGS bitmap subtitles.

  • Jellyfin and Emby libraries browse like any other source, with playback position synced back to the server, and posters, tags, lyrics and external subtitles taken from the API instead of by reading the media file.



About this build

F-Droid distributes the entirely free-software libre build. It excludes junrar, whose UnRAR license has non-free use restrictions, so it has no RAR support. The developer’s full build adds read-only RAR; all other features are the same.

Twig includes no advertising, no analytics and no telemetry. Network access follows your actions: configured connections, opened websites and their resources, downloads and sharing. Websites may load their own ads or trackers.

Microphone, camera and location permissions are optional and used only when you approve a website’s request. Permission prompts identify the website and let you choose which devices to allow. Saved bookmarks can remember these decisions; temporary pages ask every time.


Licensed under GPL-3

Versions

Although APK downloads are available below to give you the choice, you should be aware that by installing that way you will not receive update notifications and it's a less secure way to download. We recommend that you install the F-Droid client and use that.

Download F-Droid
  • Version 1.16.0 (313) suggested Added on Oct 29, 2026

    arm64-v8a x86_64

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • access approximate location only in the foreground
      This app can get your approximate location from location services while the app is in use. Location services for your device must be turned on for the app to get location.
    • access precise location only in the foreground
      This app can get your precise location from location services while the app is in use. Location services for your device must be turned on for the app to get location. This may increase battery usage.
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • view Wi-Fi connections
      Allows the app to view information about Wi-Fi networking, such as whether Wi-Fi is enabled and name of connected Wi-Fi devices.
    • take pictures and videos
      This app can take pictures and record videos using the camera while the app is in use.
    • allow Wi-Fi Multicast reception
      Allows the app to receive packets sent to all devices on a Wi-Fi network using multicast addresses, not just your phone. It uses more power than the non-multicast mode.
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "dataSync"
      Allows the app to make use of foreground services with the type "dataSync"
    • run foreground service with the type "mediaPlayback"
      Allows the app to make use of foreground services with the type "mediaPlayback"
    • run foreground service with the type "specialUse"
      Allows the app to make use of foreground services with the type "specialUse"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • android.permission.MANAGE_EXTERNAL_STORAGE
    • change your audio settings
      Allows the app to modify global audio settings such as volume and which speaker is used for output.
    • show notifications
      Allows the app to show notifications
    • query all packages
      Allows an app to see all installed packages.
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • record audio
      This app can record audio using the microphone while the app is in use.
    • request delete packages
      Allows an application to request deletion of packages.
    • request install packages
      Allows an application to request installation of packages.
    • use biometric hardware
      Allows the app to use biometric hardware for authentication
    • control vibration
      Allows the app to control the vibrator.
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • modify or delete the contents of your shared storage
      Allows the app to write the contents of your shared storage.
    • com.twig.app.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
    • moe.shizuku.manager.permission.API_V23

    Download APK 10 MiB PGP Signature | Build Log

  • New in version 1.15.2
    Website bookmarks gain shared defaults, per-site screenshot protection and Twig file uploads; external web links can open as temporary pages. Playback history includes a Continue watching tab, and video thumbnails show saved progress after ten seconds of continuous playback. Sharper thumbnails, a space-map zoom reset button and updated Russian translations. Launcher shortcuts check the app lock before reading saved actions.
  • Version 1.15.2 (308) - Added on Oct 27, 2026

    arm64-v8a x86_64

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • view Wi-Fi connections
      Allows the app to view information about Wi-Fi networking, such as whether Wi-Fi is enabled and name of connected Wi-Fi devices.
    • allow Wi-Fi Multicast reception
      Allows the app to receive packets sent to all devices on a Wi-Fi network using multicast addresses, not just your phone. It uses more power than the non-multicast mode.
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "dataSync"
      Allows the app to make use of foreground services with the type "dataSync"
    • run foreground service with the type "mediaPlayback"
      Allows the app to make use of foreground services with the type "mediaPlayback"
    • run foreground service with the type "specialUse"
      Allows the app to make use of foreground services with the type "specialUse"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • android.permission.MANAGE_EXTERNAL_STORAGE
    • show notifications
      Allows the app to show notifications
    • query all packages
      Allows an app to see all installed packages.
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • request delete packages
      Allows an application to request deletion of packages.
    • request install packages
      Allows an application to request installation of packages.
    • use biometric hardware
      Allows the app to use biometric hardware for authentication
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • modify or delete the contents of your shared storage
      Allows the app to write the contents of your shared storage.
    • com.twig.app.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
    • moe.shizuku.manager.permission.API_V23

    Download APK 10 MiB PGP Signature | Build Log

  • Version 1.15.1 (307) - Added on Oct 25, 2026

    arm64-v8a x86_64

    This version requires Android 7.0 or newer.

    It is built and signed by the original developer, and guaranteed to correspond to this source tarball.

    Permissions
    • view network connections
      Allows the app to view information about network connections such as which networks exist and are connected.
    • view Wi-Fi connections
      Allows the app to view information about Wi-Fi networking, such as whether Wi-Fi is enabled and name of connected Wi-Fi devices.
    • allow Wi-Fi Multicast reception
      Allows the app to receive packets sent to all devices on a Wi-Fi network using multicast addresses, not just your phone. It uses more power than the non-multicast mode.
    • run foreground service
      Allows the app to make use of foreground services.
    • run foreground service with the type "dataSync"
      Allows the app to make use of foreground services with the type "dataSync"
    • run foreground service with the type "mediaPlayback"
      Allows the app to make use of foreground services with the type "mediaPlayback"
    • run foreground service with the type "specialUse"
      Allows the app to make use of foreground services with the type "specialUse"
    • have full network access
      Allows the app to create network sockets and use custom network protocols. The browser and other applications provide means to send data to the internet, so this permission is not required to send data to the internet.
    • android.permission.MANAGE_EXTERNAL_STORAGE
    • show notifications
      Allows the app to show notifications
    • query all packages
      Allows an app to see all installed packages.
    • read the contents of your shared storage
      Allows the app to read the contents of your shared storage.
    • request delete packages
      Allows an application to request deletion of packages.
    • request install packages
      Allows an application to request installation of packages.
    • use biometric hardware
      Allows the app to use biometric hardware for authentication
    • prevent phone from sleeping
      Allows the app to prevent the phone from going to sleep.
    • modify or delete the contents of your shared storage
      Allows the app to write the contents of your shared storage.
    • com.twig.app.DYNAMIC_RECEIVER_NOT_EXPORTED_PERMISSION
    • moe.shizuku.manager.permission.API_V23

    Download APK 10 MiB PGP Signature | Build Log