Skip to content

yaaama/megatui

Repository files navigation

MegaTUI - Terminal User Interface for MEGA

Python License: GPLv3


THIS IS A WORK IN PROGRESS!

Navigate and manage your MEGA cloud storage directly from the comfort of your terminal! MegaTUI provides an intuitive text-based user interface (TUI) powered by the excellent Textual framework.

It interacts with your MEGA account by leveraging the official MEGAcmd command-line tools in the background.

The UI and bindings are inspired by ranger and lf.

megatui screenshot

Showcase

Renaming a file

Renaming a file demonstration

Making new directories

Making directories demonstration

🪷 Features

As of writing this (2025-11-04), work is still ongoing and active.

Implemented

  • File Navigation: Navigate through your MEGA cloud drive using intuitive keybindings (press f1 to view currently active bindings).
  • Operate On Files:
    • Download files
    • Delete files (and folders)
    • Create new directories
    • Upload files
    • Move files around
    • Rename files
    • View media information (frames per second, playtime, resolution).
  • View ongoing transfers
  • Marking (Selecting) Files For Bulk Operations: Marking files will allow certain operations to operate on all of them.
    • For example, if you mark 3 files, the move command will move all 3 marked files.
  • Login Check: Verifies your MEGAcmd login status on startup.

⚙️ Installation (Development Only)

These instructions are for development purposes only. The package is not even in alpha!

Before you begin, ensure you have the following installed:

  1. Python: Version 3.13 is what is currently being used (subject to change potentially).

  2. MEGAcmd: The official MEGA command-line tool.

    • Download and install it from the official MEGAcmd GitHub releases page.
    • Crucially: You need to log in to your MEGA account using MEGAcmd before running MegaTUI.
      • Open your terminal and run mega-login your-email@example.com and follow the prompts. You can verify your login status with mega-whoami.
      • MegaTUI currently relies on an existing MEGAcmd session.
    • Run mega-cmd-server as a daemon process in the background (speed of command execution will be severely reduced otherwise).
  3. (Recommended) Install uv for package and virtual environment management.

  4. git clone https://github.com/yaaama/megatui.git && cd megatui

  5. uv sync

  6. To run the project: uv run /path/to/main.py

📄 License

This project is licensed under the GPL 3.0 License - see the LICENSE file for details.

🙏 Acknowledgements

  • Textual for the awesome TUI framework.
  • MEGA and the developers for their tools!

About

A terminal user interface to manage your files on MEGA

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •