Skip to content

Latest commit

 

History

History
108 lines (74 loc) · 3.88 KB

README.md

File metadata and controls

108 lines (74 loc) · 3.88 KB

Croc GUI

CrocGUI Logo

GitHub release (latest by date) GitHub Python Platform

Croc GUI is a graphical user interface for the croc file transfer tool, designed to make secure file transfers easier and more accessible.

About Croc

Croc is a tool that allows any two computers to simply and securely transfer files and folders. It was developed by Zack Scholl and is available as an open-source project on GitHub.

Features

  • 🚀 Simple and intuitive interface for file transfers
  • 📋 Easy code sharing with clipboard integration
  • 🔒 Secure file transfer using Croc's encryption
  • 💻 Cross-platform compatibility (Windows, macOS, Linux)
  • 🎨 Modern and clean UI design

Screenshots

Requirements

  • Python 3.8 or higher
  • Croc command-line tool installed (Installation Guide)
    • The app installs croc if not installed.

Installation

  • Clone this repository:
  git clone https://github.com/yourusername/croc-gui.git
  cd croc-gui
  • Create venv
    python -m venv venv
  • Activate venv
    Windows: .\croc-pui\Scripts\activate
    Linux/macOS: source venv/bin/activate
  • Install the required Python packages: pip install -r requirements.txt

Usage

Run the app using python main.pyw

  1. Send Files:

    • Click the "Send File" button
    • Wait for the code to be generated
    • Share the generated code with the recipient
    • The transfer will begin automatically when the recipient enters the code
  2. Receive Files:

    • Click the "Receive File" button
    • Enter the code provided by the sender
    • Choose your download location
    • Wait for the transfer to complete

Build Standalone Executable

To build a stand alone executable for your operating system, run the following command: python build.py

Upcoming Plans

1. Integrate receive functionality directly into the GUI. Implemented
2. Implement automatic installation of croc if it's not available on the system. Implemented
3. Progress bar
4. Drag and drop
5. Settings page
6. Custom relay options
7. System notifications
8. Bandwidth Limitation
9. Send folders

Dependencies

  • Flet: Modern Flutter-like UI framework for Python
  • PyInstaller: Creates standalone executables
  • Pyperclip: Handles clipboard operations
  • Humanize: Converts bytes to human-readable formats
  • Croc: Core file transfer functionality

Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

License

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

Acknowledgments

  • Zack Scholl for creating the amazing croc tool.
  • Flet for the Python GUI framework used in this project.
  • Icons8: for providing the application icons and graphics
  • Python Community: For the excellent libraries and tools
  • Contributors: Everyone who has contributed to making CrocGUI better

Disclaimer

This is an unofficial GUI for croc and is not affiliated with or endorsed by the original croc project or its creators.