Coder Social home page Coder Social logo

hyperblow's Introduction

Hyperblow - A torrent client that throws real left blow

Currently this project is in a complete rewrite

Tired of seeing boring TUI based Bittorent Clients? Here comes hyperblow, a modern Bittorent Client that uses Bittorent Protocol V1. A rich TUI, with modern features in TUI.

dependency status

Screenshots of TUI

image

Dummy Details Tab Screenshot

It's gonna take time, good things do take time

✅ Denotes work is fully done ☑️ Means work is partially done ☐ Means the work is far from done

Features checklist :

  • ✅ Accepts torrent file as input
  • ✅ Accepts magnet uri as input
  • ☑️ Support for partial download, that is checking the items we want to download
  • ✅ Support for UDP Trackers
  • ☐ Support for HTTP Trackers
  • ☐ Has rare piece first algorithm
  • ☐ Implements Choking and Unchoking Algorithm

Supported BEP's:

  • BEP15 : UDP Tracker Protocol (Implements partially, except scrape req and res)
  • BEP12 : MultiTracker Metadat Extension
  • BEP20 : Peer ID Convention

TODO :

  • ✅ Implement the ".torrent" file parser
  • ✅ Implement the MagnetURI verifier and parser
  • ✅ Handle redundancy of both the tracker URL's in "announce" and "announce-list" field, used BEP12
  • ☐ Upload Architecture and working methods of both Tracker and Peer
  • ☐ Make use of Crossbeam crate's Concurrency Primitives
  • ☐ Add both Unit and Integration testing for the parsing library
  • ☐ Re architect the entire CLI application's system design

hyperblow's People

Contributors

mindoodoo avatar rishadbaniya avatar sppaudel avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar

hyperblow's Issues

Add Unit Tests

Tons of Unit Test are there to be added. Shall prepare a plan from where to start soon

Fix memory leak

image
A huge heap consumption was seen, around 3.8 gigs at the end of the program, need to figure out what caused this leak

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.