This is a starting point for Go solutions to the
"Build Your Own BitTorrent" Challenge.
In this challenge, you’ll build a BitTorrent client that's capable of parsing a
.torrent file and downloading a file from a peer. Along the way, we’ll learn
about how torrent files are structured, HTTP trackers, BitTorrent’s Peer
Protocol, pipelining and more.
Note: If you're viewing this repo on GitHub, head over to
codecrafters.io to try the challenge.
Passing the first stage
The entry point for your BitTorrent implementation is in
cmd/mybittorrent/main.go
. Study and uncomment the relevant code, and push your
changes to pass the first stage:
git add .
git commit -m "pass 1st stage"
git push origin master
Time to move on to the next stage!
Stage 2 & beyond
Note: This section is for stages 2 and beyond.
- Ensure you have
go (1.19)
installed locally - Run
./your_bittorrent.sh
to run your program, which is implemented in
cmd/mybittorrent/main.go
. - Commit your changes and run
git push origin master
to submit your solution
to CodeCrafters. Test output will be streamed to your terminal.