<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
  <meta http-equiv="Content-Language" content="en-us">
  <meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
  <link rel="stylesheet" type="text/css" href="../../boost.css">

  <title>Writing Documentation for Boost - Introduction</title>
</head>

<body link="#0000FF" vlink="#800080">
  <table border="0" cellpadding="7" cellspacing="0" width="100%" summary=
  "header">
    <tr>
      <td valign="top" width="300">
        <h3><a href="index.html"><img height="86" width="277" alt="C++ Boost"
        src="../../boost.png" border="0"></a></h3>
      </td>

      <td valign="top">
        <h1 align="center">Writing Documentation for Boost</h1>

        <h2 align="center">Introduction</h2>
      </td>
    </tr>
  </table>
  <hr>

  <p>Boost does not have any requirements on how you write your
  documentation. If you are submitting a library that already has written
  documentation in HTML format, there is no reason to change it to follow any
  of the guidelines presented here. However, if you have documentation that's
  not in HTML format and can't be easily converted to HTML, or if you're
  starting on a library from scratch or have a library with no documentation
  then these guidelines can make writing the documentation much easier.</p>

  <p>The section on <a href="structure.html">Documentation Structure</a>
  describes how to go about structuring the documentation's content. This
  section may be helpful even for libraries that already have documentation.
  If there's a desire to present the library for possible inclusion by the
  C++ Standards Committee then there may be a need to restructure the
  documentation's content in order to insure the content meets explicit
  requirements for library components (Section 17.3).</p>

  <p>The section on <a href="design.html">HTML Design</a> gives general rules
  to follow when writing HTML documentation in order to give a professional
  and consistent look. This section also contains some template files that
  can be used to rapidly create documentation pages.</p>
  <hr>

  <p><a href="http://validator.w3.org/check?uri=referer"><img border="0" src=
  "../../doc/images/valid-html401.png" alt="Valid HTML 4.01 Transitional"
  height="31" width="88"></a></p>

  <p>Revised 
  <!--webbot bot="Timestamp" s-type="EDITED" s-format="%d %B, %Y" startspan -->04
  December, 2006<!--webbot bot="Timestamp" endspan i-checksum="38514" --></p>

  <p><i>Copyright &copy; 2001 <a href=
  "mailto:williamkempf@hotmail.com">William E. Kempf</a></i></p>

  <p><i>Distributed under the Boost Software License, Version 1.0. (See
  accompanying file <a href="../../LICENSE_1_0.txt">LICENSE_1_0.txt</a> or
  copy at <a href=
  "http://www.boost.org/LICENSE_1_0.txt">http://www.boost.org/LICENSE_1_0.txt</a>)</i></p>
</body>
</html>
