<!--#include virtual="includes/_header.htm" -->
<!--#include virtual="includes/_top.htm" -->
<div class="content">
	<!--#include virtual="includes/_nav.htm" -->
	<div class="right">
		<h1>Getting the code</h1>
		<p>
		Our code is kept in Apache GitHub repo. You can check it out like this:
		</p>
		<pre>
			git clone https://github.com/apache/kafka.git kafka
		</pre>
		<p>
		Information on contributing patches can be found <a href="contributing.html">here</a>.
		</p>
		<p>
		Official releases are available <a href="downloads.html">here</a>.
		</p>
		<p>
		The source code for the web site and documentation can be checked out from Apache GitHub repo:
		<pre>
			git clone -b asf-site https://github.com/apache/kafka-site.git
		</pre>
		We are happy to received patches for the website and documentation. We think documentation is a core part of the project and welcome any improvements, suggestions, or clarifications. The procedure of contributing to the documentation can also be found <a href="contributing.html">here</a>.
		</p>
		<p>
		To setup IDEs for development, following <a href="https://cwiki.apache.org/confluence/display/KAFKA/Developer+Setup">this guide</a> on the wiki.
		</p>

	<script>
	// Show selected style on nav item
	$(function() { $('.b-nav__project').addClass('selected'); });
	</script>

<!--#include virtual="includes/_footer.htm" -->
