X-Git-Url: https://git.rkrishnan.org/?p=functorrent.git;a=blobdiff_plain;f=README.md;h=457a754818fb90e688900103a476fb2a219931f1;hp=eb8f4318b4a62fcc33d46bcfe5e518861f4341d5;hb=27fccae52521d6b0d0502708d737c3b6eb908941;hpb=f46f0151ebac1cd0a521c1dc6ba5e0ec0beec9f6 diff --git a/README.md b/README.md index eb8f431..457a754 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,9 @@ # A command line BitTorrent client. -I started writing a BitTorrent client because it seemed like fun and I am learning Haskell and wanted to see if I can write something real with Haskell than just heat the room. It is turning out to be a lot of fun. +I started writing a BitTorrent client because it seemed like fun +and I am learning Haskell and wanted to see if I can write something +real with Haskell than just heat the room. It is turning out to be a +lot of fun. ### Building @@ -36,21 +39,29 @@ Or one can explicitly specify the torrent file as input. - doctest and quickcheck tests. - Follow Haskell Style Guide - https://github.com/tibbe/haskell-style-guide/blob/master/haskell-style.md +### WARNING + +This client is not usable as your daily BitTorrent client yet. You may get +corrupted files and end up wasting a lot of bandwidth. So, until we achieve +some robustness, consider this as a programmer-friendly project to learn +about a bunch of stuff. + ### Current Status - most of the peer wire protocol works. -- talks only to one peer at the moment. Single threaded. +- talks only to one peer at the moment. - can download files. But needs every piece to be served by the peer it connected to. +- can talk to http/udp trackers. -### WARNING +### TODO -This client is not usable as your daily BitTorrent client yet. You may get corrupted files and end up wasting a lot of bandwidth. So, until we achieve some robustness, consider this as a programmer-friendly project to learn about a bunch of stuff. +- Test suite. +- Talk to multiple peers concurrently. +- Piece download algorithms. +- Multifile torrent support. +- Magnet link support. +- other advanced features of BitTorrent (like DHT). -## TODO +### Misc -* Test suite. -* Talk to multiple peers. -* Piece download algorithms. -* Concurrency (threads per peer) -* Multifile torrent support. -* other advanced features of BitTorrent (like DHT). +The Bangalore Haskell group forked an early version of this code and started to develop it as a group. My code has diverged a lot from it. Both are calling it functorrent. Perhaps that needs to be fixed.