jsarch
v6.1.2
Published
A simple module to extract architecture notes from your code.
Downloads
414
Readme
jsarch
A simple module to extract architecture notes from your code.
Usage
To generate any project's architecture notes:
jsarch src/*.js > ARCHITECTURE.md
Configuration
You can set your own configuration by adding a jsarch
property in your
package.json
file (see
the defaults).
For example, if you which to have TypeScript support and you use Gitlab instead of GitHub, just add this:
{
// (...)
"jsarch": {
"gitProvider": "bitbucket",
"parserOptions": {
"plugins": ["typescript"]
}
}
// (...)
}
Per default, the Babel parser is used, but you can change it with the parser
option. You'll have to install it before using it.
Development
To get involved into this module's development:
npm i -g jsarch
git clone [email protected]:nfroidure/jsarch.git
cd jsarch
npm it
npm run build
node bin/jsarch **/*.js > ARCHITECTURE.md
Architecture Notes
You can see this repository architecture notes for an example of the kind of content generated by this module.
API
initJSArch(services) ⇒ Promise.<function()>
Declare jsArch in the dependency injection system
Kind: global function
| Param | Type | Default | Description | | --- | --- | --- | --- | | services | Object | | Services (provided by the dependency injector) | | services.CONFIG | Object | | The JSArch config | | services.EOL | Object | | The OS EOL chars | | services.glob | Object | | Globbing service | | services.fs | Object | | File system service | | services.parser | Object | | Parser service | | [services.log] | Object | noop | Logging service |
initJSArch~jsArch(options) ⇒ Promise.<String>
Compile an run a template
Kind: inner method of initJSArch
Returns: Promise.<String> - Computed architecture notes as a markdown file
| Param | Type | Description | | --- | --- | --- | | options | Object | Options (destructured) | | options.cwd | Object | Current working directory | | options.patterns | Object | Patterns to look files for (see node-glob) | | options.eol | Object | End of line character (default to the OS one) | | options.titleLevel | Object | The base title level of the output makdown document | | options.base | Object | The base directory for the ARCHITECTURE.md references |