<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!--
Design by Free CSS Templates
http://www.freecsstemplates.org
Released for free under a Creative Commons Attribution 2.5 License

Name       : Moonlight 
Description: A two-column, fixed-width design with dark color scheme.
Version    : 1.0
Released   : 20110815

-->
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
    <meta name="keywords" content="Apache Tcl Webprogramming" />
    <meta name="description" content="Website for the Tcl related projects within the Apache Software Foundation" />
    <meta http-equiv="content-type" content="text/html; charset=utf-8" />
    <title>Contributing to Apache Tcl</title>
    <link href="../templates/moonlight/style.css" rel="stylesheet" type="text/css" media="screen" />
</head>
<body>
<div id="wrapper">
	<div id="header" class="container">
		<div id="logo">
			<h1><a href="/">Apache Tcl</a></h1>
			<p>Tcl and Apache HTTP webserver Integration</p>
		</div>
		<div id="menu">
			<ul>
                <li>
                    <a href="../index.html">Home</a>
                </li>
				<li><a href="http://tcl.apache.org/rivet/">Rivet</a></li>
				<li><a href="http://tcl.apache.org/websh/">Websh</a></li>
				<!-- li><a href="http://tcl.apache.org/mod_tcl/">mod_tcl</a></li -->
				<li>
                    <a href="about.html">About Us</a></li>
			</ul>
		</div>
	</div>
	<!-- end #header -->
	<div id="page">
		<div id="content">
			<div class="post">
				<h2 class="title">Contributing to Apache Tcl</h2>
				<div style="clear: both;">&nbsp;</div>
				<div class="entry">
					<p>
              The Apache Tcl project can always use dedicated
              volunteers to help out with the individual projects.  If
              you would like to contribute your Tcl/Web/Apache project
              to the Apache Tcl group, please see the contacts page.
            </p>

<p>
              If you are interested in working on or improving this
              website, the code is available from Apache's anonymous
              SVN repository.  You basically will need Apache Rivet, and Websh.
            </p>


				</div>
			</div>
			<div style="clear: both;">&nbsp;</div>
		</div>
		<!-- end #content -->
		<div id="sidebar">
			<ul>
				<li id="base">
    <h2>Apache Tcl</h2>
    <ul>
        <li class="navitem">
            <a href="why.html">Why Tcl?</a>
        </li>
        <li class="navitem">
            <a href="contributing.html">Contributing</a>
        </li>
        <li class="navitem">
            <a href="tcl.html">Tcl Information</a>
        </li>
        <li class="navitem">
            <a href="about.html">About Us - Contact</a>
        </li>
    </ul>
</li>
<li id="projects">
    <h2>Projects</h2>
    <ul>
        <li class="navitem">
            <a href="http://tcl.apache.org/rivet/">Rivet</a>
        </li>
        <li class="navitem">
            <a href="http://tcl.apache.org/websh/">Websh</a>
        </li>
    </ul>
</li>
<li id="acknowledgments">
    <h2>Acknowledgments</h2>
    <ul>
        <li class="navitem">
            <a href="http://http://www.apache.org/foundation/thanks.html">ASF Sponsorship</a>
        </li>
    </ul>
</li>

			</ul>
		</div>
		<!-- end #sidebar -->
		<div style="clear: both;">&nbsp;</div>
	</div>
	<!-- end #page -->
</div>
<div id="footer">
	<p>Copyright &copy; 2013 Apache Software Foundation. All rights reserved. Design by <a href="http://www.freecsstemplates.org/">Free CSS Templates</a>.</p>
</div>
<!-- end #footer -->
</body>
</html>

