Merge branch 'maint-0.4.7'
[tor.git] / doc / HACKING / README.1st.md
blob1c0decf9ceb965a7939c491d3ca2882cc3cf97cc
1 # README.1st
3 ## In this directory
5 This directory has helpful information about what you need to know to
6 hack on Tor!
8 First, read `GettingStarted.md` to learn how to get a start in Tor
9 development.
11 If you've decided to write a patch, `CodingStandards.md` will give you a bunch
12 of information about how we structure our code.
14 It's important to get the code right!  Reading `WritingTests.md` will
15 tell you how to write and run tests in the Tor codebase.
17 There are a bunch of other programs we use to help maintain and
18 develop the codebase: `HelpfulTools.md` can tell you how to use them
19 with Tor.
21 If it's your job to put out Tor releases, see `ReleasingTor.md` so
22 that you don't miss any steps!
24 ## Additional Information
26 For full information on how Tor is supposed to work, look at the files in
27 [Tor specification](https://gitweb.torproject.org/torspec.git/tree).
29 For an explanation of how to change Tor's design to work differently, look at
30 [the Tor proposal process](https://gitweb.torproject.org/torspec.git/plain/proposals/001-process.txt).
32 For the latest version of the code, get a copy of git, and
34 ```console
35 $ git clone https://git.torproject.org/git/tor
36 ```
38 For a copy of Tor's original design paper, see
39 [here](https://spec.torproject.org/tor-design). Note that Tor has changed in
40 many ways since 2004.
42 For a large collection of security papers, many of which are related to Tor,
43 see [Anonbib's Selected Papers in Anonymity](https://www.freehaven.net/anonbib/).
45 ## Stay in touch
47 We talk about Tor on the `tor-talk` mailing list.  Design proposals and
48 discussion belong on the `tor-dev` mailing list.  We hang around on
49 irc.oftc.net, with general discussion happening on `#tor` and development
50 happening on `#tor-dev`.
52 The other files in this `HACKING` directory may also be useful as you
53 get started working with Tor.
55 Happy hacking!