Skip to content

TheDom/scala-torrent

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

24 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

scala-torrent

As a personal challenge I decided to create a BitTorrent client in Scala. I chose this subject for two primary reasons:

  • To explore new topics and problems aside from the iOS and web development projects I'm usually doing
  • To gain more experience with Akka, as the subject is a good fit for the actor model

To make things more interesting, I do intend to only use the specification of the protocol and shall not study any existing implementation in any language.

Progress

  • [✔] CLI
  • [✔] Bencode parsing and encoding
  • [✔] Communication with tracker
  • [✔] Modelling and (un)marshalling of the Peer Wire Protocol messages
  • [✔] Connection and handshake with peers
  • [TODO] File exchange
  • [TODO] Actor supervision
  • [TODO] Actor testing

At this point I am not planning on implementing extensions to the protocol such as DHT.

About

A BitTorrent Client Written in Scala

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages