-
-
Notifications
You must be signed in to change notification settings - Fork 0
/
mark-down-my-docs.js
executable file
·38 lines (33 loc) · 1.21 KB
/
mark-down-my-docs.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
#!/usr/bin/env node
const path = require('path');
// app requirements
const SourceDirectory = require('./core/SourceDirectory');
const MarkDown = require('./core/write/MarkDown');
const Documentation = require('./core/Documentation');
// arguments
const myArgs = process.argv.slice(2);
const srcDir = myArgs[0] ?? 'src';
const docDir = myArgs[1] ?? 'docs';
// directories
const srcDirectory = path.join(process.cwd(), srcDir);
const docsDirectory = path.join(process.cwd(), docDir);
process.env.srcDirectory = srcDirectory;
// help
if (myArgs.includes('--help')) {
console.info('mark-down-my-docs.js');
console.info('');
console.info('usage : mark-down-my-docs.js [srcDirectory] [docsDirectory]');
console.info('\nglobal options : ');
console.table([{'command': '--help', 'description': 'Show help'}], ['command', 'description']);
return;
}
// app and run information
const source = new SourceDirectory(`${srcDirectory}`);
const writer = new MarkDown(docsDirectory);
const docs = new Documentation(source, writer);
console.time('done in');
docs.write();
console.group();
console.timeEnd('done in');
console.log(`memory usage: ${(process.memoryUsage().heapUsed / 1024 / 1024).toFixed(2)}MB`);
console.groupEnd();