Home

Awesome

litpro

This is the thin command-line client for literate-programming-lib. It contains the minimal functionality for literate programming, but it does not have any other modules such as jshint included in it. For a fat client, check out literate-programming

Install using npm install litpro

Usage is ./node_modules/bin/litpro file and it has some command flags.

If you want a global install so that you just need to write litpro then use npm install -g litpro.

Example usage

Save the following code to file project.md and run litpro project.md.

# Welcome

So you want to make a literate program? Let's have a program that outputs
all numbers between 1 to 10.

Let's save it in file count.js

[count.js](#Structure "save:")

## Structure 

We have some intial setup. Then we will generate the array of numbers. We
end with outputting the numbers. 

    var numarr = [], start=1, end = 11, step = 1;

    _"Loop"

    _"Output"

## Output 

At this point, we have the array of numbers. Now we can join them with a
comma and output that to the console.

    console.log("The numbers are: ", numarr.join(", ") );

## Loop

Set the loop up and push the numbers onto it. 

    var i;
    for (i = start; i < end; i += step) {
        numarr.push(i);
    }

For more on the document format, see literate-programming-lib.

Documentation

For more information, see the documentation book which is free to read online or available for purchase as a PDF.

Some particularly useful syntax sections are:

Use and Security

This thin client is envisioned to be a developer dependency for projects using it. Thus one would install it via npm's json package system along with any litpro plugins.

The only caveat to this is that it is inherently unsecure to compile literate program documents. No effort has been made to make it secure. Compiling a literate program using this program is equivalent to running arbitrary code on your computer. Only compile from trusted sources, i.e., use the same precautions as running a node module.

LICENSE

MIT-LICENSE