documon
Version:
A documentation system for mortals. Use with any language.
145 lines (121 loc) • 6.34 kB
HTML
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<title>About</title>
<meta name="description" content="more.about">
<!-- Normalize -->
<link rel="stylesheet" href="assets/vendor/normalize.css">
<!-- prettify -->
<link rel="stylesheet" href="assets/vendor/prettify/codamike.css">
<script src="assets/vendor/prettify/prettify.js"></script>
<!-- Documon Pages Info. (Used by various classes to identify this page.) -->
<script>
var pageCtx = {
id : "more.about",
name: "About"
}
</script>
<!-- theme
<link rel="stylesheet" href="assets/fonts/Fira_Sans/FiraSans.css">
<link rel="stylesheet" href="assets/fonts/Inconsolata/inconsolata.css">
-->
<link rel="stylesheet" href="assets/css/pages.css">
<script src="assets/js/documon/Storage.js"></script>
<script src="assets/js/documon/Access.js"></script>
<script src="assets/js/documon/Pages.js"></script>
<script>
(function(i,s,o,g,r,a,m){i['GoogleAnalyticsObject']=r;i[r]=i[r]||function(){
(i[r].q=i[r].q||[]).push(arguments)},i[r].l=1*new Date();a=s.createElement(o),
m=s.getElementsByTagName(o)[0];a.async=1;a.src=g;m.parentNode.insertBefore(a,m)
})(window,document,'script','https://www.google-analytics.com/analytics.js','ga');
ga('create', 'UA-106684927-1', 'auto');
ga('send', 'pageview');
</script>
</head>
<body>
<div class="page">
<div class="more"><h1 id="documon">Documon</h1>
<p>A documentation system for mortals. Use with any language.</p>
<p>Generates a static, searchable JSDoc style documentation from source code. Uses a customizable template system, and will process a markdown folder (aka "more" folder) where auxiliary documentation (outside of source code) can reside.</p>
<p>Since documon doesn't infer anything from the source code (all methods and arguments must be tagged manually), you maintain full control over the final output structure.</p>
<p>Run from CLI, or integrate into node project.</p>
<h2 id="full-documentation">Full Documentation</h2>
<p>See full documentation at:<br />
<a href="https://www.documon.net">https://www.documon.net</a> </p>
<p><img src="https://www.documon.net/assets/screenshot1.jpg" alt="" /></p>
<h2 id="get-it">Get It</h2>
<p>NPM: <a href="https://www.npmjs.com/package/documon">https://www.npmjs.com/package/documon</a></p>
<p>Github: <a href="https://github.com/bobtherobot/documon">https://github.com/bobtherobot/documon</a></p>
<p>Directly: <a href="https://www.documon.net">https://www.documon.net</a> (as "stand alone" )</p>
<h3 id="quick-start">Quick Start</h3>
<p><strong>In Node (javascript)</strong></p>
<p>Install via NPM:</p>
<pre><code>npm install documon</code></pre>
<p>Generate Docs:</p>
<pre><code>var docs = require("documon");
doc({
src : "/path/to/src/code",
out : "/path/to/docs/output",
more : "/where/are/more/markdowns",
ignore : [
'/path/to/src/dont/process/me',
'/path/to/src/node_modules'
],
name : "My Project",
version : "1.0.0",
launch : false,
print : true,
dumpData : true,
sourceExt : ["js"],
gati : 'UA-106684927-1'
});</code></pre>
<p><strong>From CLI</strong></p>
<p>Generate docs:</p>
<pre><code>node /path/to/documon/index.js "/path/to/source/code" "/path/to/destination"</code></pre>
<h3 id="benefits">Benefits</h3>
<p>Comment tags are soley responsible for organizing the resulting heirarchy (inheritence and membership).</p>
<ul>
<li>Built for mortals, runs on Node.</li>
<li>Generates static website (no server-side stuff).</li>
<li>Search enabled (low overhead, no database)</li>
<li>Use within any Node build system.</li>
<li>Zero dependancies.</li>
<li>Use with any programming language.</li>
<li>Plain-text + markdown based.</li>
<li>JavaDoc syntax.</li>
<li>Structure is derived soley from the comments.</li>
<li>Direct control over final structure of the resulting website.</li>
<li>Great for small and large projects.</li>
<li>Auto inheritance cross fill and referencing (links to and fills children classes with inherited methods, props and events).</li>
</ul>
<h2 id="documon-does-not">Documon does NOT:</h2>
<ul>
<li>Actual source code not required.</li>
<li>Doesn't interpret / execute source code.</li>
<li>No over-arching code organization required.</li>
<li>Doesn't infer inheritence / membership from the directory structure.</li>
<li>Doesn't infer property / method names, arguments, etc, from the source code.</li>
</ul>
<p>As a result, comment blocks must be robust and include all pertinent details required to generate documentation.</p>
<h2 id="get-involved">Get Involved</h2>
<ul>
<li><a href="https://github.com/bobtherobot/documon">Documon on Github</a></li>
<li><a href="https://www.npmjs.com/package/documon">Documon on NPM</a></li>
</ul>
<h2 id="platforms">Platforms</h2>
<p>Documon is written in Javascript and runs on the <a href="https://www.nodejs.com">Node</a> platform, which runs on Linux, Mac, and Windows systems. Documon can be installed using <a href="https://www.npmjs.com/documon">NPM</a>, or <a href="https://www.documon.net/downloads/documon.zip">ↆ downloaded directly</a>.</p>
<h2 id="templates">Templates</h2>
<p>Templating is handled through vanilla javascript modules, leveraging ES6's <a href="https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals">Template Literals</a>. This provides the highest level of flexability with zero-dependancies, unlimited logic constraints, and nothing new to learn.</p>
<p>Of course, since templates are JS, you can always roll some other templating system, such as Twig, or Handlebars, into your custom template.</p>
<h2 id="dependancies">Dependancies</h2>
<p>Documon's only dependancy is Node, no additional modules are needed.</p>
<h2 id="author--copyright">Author & Copyright</h2>
<p>Copyright © <a href="https://www.gieson.com">Mike Gieson</a>. <br />
Released under the MIT license.</p>
<p>.</p></div>
</div>
<div class="footer">Generated by <a href="http://www.documon.net" target="_blank">Documon</a></div>
</body>
</html>