Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mvrilo/torresmo
Experimental torrent client and server
https://github.com/mvrilo/torresmo
bittorrent client go golang http preact server torrent typescript
Last synced: 22 days ago
JSON representation
Experimental torrent client and server
- Host: GitHub
- URL: https://github.com/mvrilo/torresmo
- Owner: mvrilo
- License: mit
- Created: 2021-03-10T09:43:54.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2022-05-21T02:54:48.000Z (over 2 years ago)
- Last Synced: 2024-10-01T09:21:27.214Z (about 1 month ago)
- Topics: bittorrent, client, go, golang, http, preact, server, torrent, typescript
- Language: Go
- Homepage:
- Size: 1.48 MB
- Stars: 10
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Torresmo
[![GoDoc](https://godoc.org/github.com/mvrilo/torresmo?status.svg)](https://godoc.org/github.com/mvrilo/torresmo)
[![Go Report Card](https://goreportcard.com/badge/github.com/mvrilo/torresmo)](https://goreportcard.com/report/github.com/mvrilo/torresmo)Torresmo is an experimental Torrent client and server built with Go.
## Features
- Single binary deploy
- Bultin HTTP server
- Websocket support
- Embedded web interface (using esbuild, TypeScript and Preact)
- Initial GUI support (mac only for now, using [macdriver](https://github.com/progrium/macdriver))
- Server discovery via mDNS![demo](assets/demo.png)
## Build
Requirements:
- Go 1.16
```
make torresmo
```## Usage
```
Torresmo torrent client and serverUsage:
torresmo [command]Available Commands:
discover Discover Torresmo servers in the network
help Help about any command
server Torresmo torrent client and server
version Torresmo versionFlags:
-h, --help help for torresmo
-v, --version version for torresmo
```Server usage:
```
Torresmo torrent client and serverUsage:
torresmo server [flags]Flags:
-a, --addr string HTTP Server address (default ":8000")
-b, --biggest Prioritize the biggest file in the torrent (default true)
-d, --debug Enable seeding (default true)
-c, --discovery Enable mDNS discovery (default true)
-D, --download-limit int Download limit
-g, --gui Runs graphical interface (default true)
-h, --help help for server
-p, --open Open service address in the browser
-o, --out string Output directory (default "downloads")
-s, --seed Enable seeding (default true)
-e, --serve Serve downloaded files (default true)
-t, --torrent-files string Directory to dump torrent files (default "downloads/.torrents")
-U, --upload-limit int Upload limit
-w, --watch-torrents string Directory for new torrents, once added it will start download (default "downloads/.torrents")```
## License
MIT