Letshare is a terminal-based file sharing application that creates a local web server and uses mDNS for automatic network discovery. Easily share files and folders across your local network using a simple, intuitive TUI — no complex setup needed.
Letshare is built for anyone who wants to share files fast, hassle-free, and locally.
80)80, so users don't have to write :port when they write the URLgo install github.com/MuhamedUsman/letshare
# Download the .deb file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_amd64.deb
# Install the package with automatic dependency resolution
sudo apt install ./letshare_1.0.1_linux_amd64.deb
# Download the .deb file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_arm64.deb
# Install the package with automatic dependency resolution
sudo apt install ./letshare_1.0.1_linux_arm64.deb
# Download the .rpm file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_amd64.rpm
# Install the package with automatic dependency resolution
sudo dnf install letshare_1.0.1_linux_amd64.rpm # Fedora/RHEL 8+
# or
sudo yum install letshare_1.0.1_linux_amd64.rpm # CentOS/RHEL 7
# Download the .rpm file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_arm64.rpm
# Install the package with automatic dependency resolution
sudo dnf install letshare_1.0.1_linux_arm64.rpm # Fedora/RHEL 8+
# or
sudo yum install letshare_1.0.1_linux_arm64.rpm # CentOS/RHEL 7
# Download the .apk file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_amd64.apk
# Install dependencies first, then the package
sudo apk add avahi avahi-tools
sudo apk add --allow-untrusted letshare_1.0.1_linux_amd64.apk
# Download the .apk file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_arm64.apk
# Install dependencies first, then the package
sudo apk add avahi avahi-tools
sudo apk add --allow-untrusted letshare_1.0.1_linux_arm64.apk
# Download the package from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_amd64.pkg.tar.zst
# Install the package with automatic dependency resolution
sudo pacman -U letshare_1.0.1_linux_amd64.pkg.tar.zst
# Download the package from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_arm64.pkg.tar.zst
# Install the package with automatic dependency resolution
sudo pacman -U letshare_1.0.1_linux_arm64.pkg.tar.zst
If you prefer not to use package managers or encounter dependency issues:
# Install mDNS dependencies manually based on your distribution:
# Debian/Ubuntu:
sudo apt update && sudo apt install avahi-daemon avahi-utils
# Red Hat/Fedora/CentOS:
sudo dnf install avahi avahi-tools # or use yum on older systems
# Alpine:
sudo apk add avahi avahi-tools
# Arch:
sudo pacman -S avahi
# Then download and install the binary:
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_Linux_x86_64.tar.gz
tar -xzf letshare_Linux_x86_64.tar.gz
sudo mv Letshare /usr/local/bin/
sudo chmod +x /usr/local/bin/letshare
winget install MuhamedUsman.Letshare
# Add the tap (only needed once)
brew tap MuhamedUsman/homebrew-letshare
# Install Letshare
brew install --cask letshare
For macOS users you may need to allow letshare access to port 80, I can't help you with that much because I don't own a mac, I can give you some un-tested solution, but I really don't want to do that.
So, if you do find a solution where user don't have to write sudo each time they run this app, feel free to open an issue and document your solution. It may help non-technical users.
letshare in your terminalhttp://[instance-name].local or the IP address172.x.x.x),
which is not accessible to devices on your local network,
make sure you're disconnected from the VPN before starting the server.echo 'export COLORTERM=truecolor' >> ~/.profile
Then restart your terminal.
14535RecMonoCasual Nerd Font Propo and font size to 10settings.json file, in the schemes array{
"background": "#272822",
"black": "#3E3D32",
"blue": "#03395C",
"brightBlack": "#272822",
"brightBlue": "#66D9EF",
"brightCyan": "#66D9EF",
"brightGreen": "#A6E22E",
"brightPurple": "#AE81FF",
"brightRed": "#F92672",
"brightWhite": "#F8F8F2",
"brightYellow": "#FD971F",
"cursorColor": "#FFFFFF",
"cyan": "#66D9EF",
"foreground": "#F8F8F2",
"green": "#A6E22E",
"name": "Monokai",
"purple": "#AE81FF",
"red": "#F92672",
"selectionBackground": "#FFFFFF",
"white": "#F8F8F2",
"yellow": "#FFE792"
}
If you're wondering about tab-less terminal window, its because I've toggled focus mode in windows terminal.
for more info see go.mod
I've done my best to build this project thoughtfully, but there's always room for improvement. Your contributions play a vital role in helping it grow and get better.
Feel free to contribute by submitting an issue, suggesting ideas, or opening a pull request. Feedback and contributions are always welcomed and appreciated!
This product is distributed under MIT license.
Free for Commercial and Non-Commercial Use.
135 commits
Go
84.3%
CSS
12.7%
HTML
1.3%
Shell
1.1%
Letshare is a terminal-based file sharing application that creates a local web server and uses mDNS for automatic network discovery. Easily share files and folders across your local network using a simple, intuitive TUI — no complex setup needed.
Letshare is built for anyone who wants to share files fast, hassle-free, and locally.
80)80, so users don't have to write :port when they write the URLgo install github.com/MuhamedUsman/letshare
# Download the .deb file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_amd64.deb
# Install the package with automatic dependency resolution
sudo apt install ./letshare_1.0.1_linux_amd64.deb
# Download the .deb file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_arm64.deb
# Install the package with automatic dependency resolution
sudo apt install ./letshare_1.0.1_linux_arm64.deb
# Download the .rpm file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_amd64.rpm
# Install the package with automatic dependency resolution
sudo dnf install letshare_1.0.1_linux_amd64.rpm # Fedora/RHEL 8+
# or
sudo yum install letshare_1.0.1_linux_amd64.rpm # CentOS/RHEL 7
# Download the .rpm file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_arm64.rpm
# Install the package with automatic dependency resolution
sudo dnf install letshare_1.0.1_linux_arm64.rpm # Fedora/RHEL 8+
# or
sudo yum install letshare_1.0.1_linux_arm64.rpm # CentOS/RHEL 7
# Download the .apk file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_amd64.apk
# Install dependencies first, then the package
sudo apk add avahi avahi-tools
sudo apk add --allow-untrusted letshare_1.0.1_linux_amd64.apk
# Download the .apk file from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_arm64.apk
# Install dependencies first, then the package
sudo apk add avahi avahi-tools
sudo apk add --allow-untrusted letshare_1.0.1_linux_arm64.apk
# Download the package from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_amd64.pkg.tar.zst
# Install the package with automatic dependency resolution
sudo pacman -U letshare_1.0.1_linux_amd64.pkg.tar.zst
# Download the package from releases
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_1.0.1_linux_arm64.pkg.tar.zst
# Install the package with automatic dependency resolution
sudo pacman -U letshare_1.0.1_linux_arm64.pkg.tar.zst
If you prefer not to use package managers or encounter dependency issues:
# Install mDNS dependencies manually based on your distribution:
# Debian/Ubuntu:
sudo apt update && sudo apt install avahi-daemon avahi-utils
# Red Hat/Fedora/CentOS:
sudo dnf install avahi avahi-tools # or use yum on older systems
# Alpine:
sudo apk add avahi avahi-tools
# Arch:
sudo pacman -S avahi
# Then download and install the binary:
wget https://github.com/MuhamedUsman/letshare/releases/latest/download/letshare_Linux_x86_64.tar.gz
tar -xzf letshare_Linux_x86_64.tar.gz
sudo mv Letshare /usr/local/bin/
sudo chmod +x /usr/local/bin/letshare
winget install MuhamedUsman.Letshare
# Add the tap (only needed once)
brew tap MuhamedUsman/homebrew-letshare
# Install Letshare
brew install --cask letshare
For macOS users you may need to allow letshare access to port 80, I can't help you with that much because I don't own a mac, I can give you some un-tested solution, but I really don't want to do that.
So, if you do find a solution where user don't have to write sudo each time they run this app, feel free to open an issue and document your solution. It may help non-technical users.
letshare in your terminalhttp://[instance-name].local or the IP address172.x.x.x),
which is not accessible to devices on your local network,
make sure you're disconnected from the VPN before starting the server.echo 'export COLORTERM=truecolor' >> ~/.profile
Then restart your terminal.
14535RecMonoCasual Nerd Font Propo and font size to 10settings.json file, in the schemes array{
"background": "#272822",
"black": "#3E3D32",
"blue": "#03395C",
"brightBlack": "#272822",
"brightBlue": "#66D9EF",
"brightCyan": "#66D9EF",
"brightGreen": "#A6E22E",
"brightPurple": "#AE81FF",
"brightRed": "#F92672",
"brightWhite": "#F8F8F2",
"brightYellow": "#FD971F",
"cursorColor": "#FFFFFF",
"cyan": "#66D9EF",
"foreground": "#F8F8F2",
"green": "#A6E22E",
"name": "Monokai",
"purple": "#AE81FF",
"red": "#F92672",
"selectionBackground": "#FFFFFF",
"white": "#F8F8F2",
"yellow": "#FFE792"
}
If you're wondering about tab-less terminal window, its because I've toggled focus mode in windows terminal.
for more info see go.mod
I've done my best to build this project thoughtfully, but there's always room for improvement. Your contributions play a vital role in helping it grow and get better.
Feel free to contribute by submitting an issue, suggesting ideas, or opening a pull request. Feedback and contributions are always welcomed and appreciated!
This product is distributed under MIT license.
Free for Commercial and Non-Commercial Use.
135 commits
Go
84.3%
CSS
12.7%
HTML
1.3%
Shell
1.1%