@git.zone/tsdoc 1.1.16 → 1.1.18
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist_ts/00_commitinfo_data.js +3 -3
- package/dist_ts/aidocs_classes/projectcontext.d.ts +1 -0
- package/dist_ts/aidocs_classes/projectcontext.js +4 -1
- package/dist_ts/aidocs_classes/readme.js +4 -2
- package/dist_ts/cli.js +7 -1
- package/npmextra.json +12 -8
- package/package.json +15 -10
- package/readme.hints.md +5 -0
- package/readme.md +61 -54
- package/ts/00_commitinfo_data.ts +2 -2
- package/ts/aidocs_classes/projectcontext.ts +7 -0
- package/ts/aidocs_classes/readme.ts +3 -1
- package/ts/cli.ts +6 -0
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@git.zone/tsdoc',
|
|
6
|
-
version: '1.1.
|
|
7
|
-
description: 'An advanced TypeScript documentation tool leveraging AI for enhanced insights and automated documentation generation.'
|
|
6
|
+
version: '1.1.18',
|
|
7
|
+
description: 'An advanced TypeScript documentation tool leveraging AI for enhanced insights and automated documentation generation, with capabilities for automated and enhanced documentation creation tailor-made for TypeScript projects.'
|
|
8
8
|
};
|
|
9
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
9
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiMDBfY29tbWl0aW5mb19kYXRhLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvMDBfY29tbWl0aW5mb19kYXRhLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOztHQUVHO0FBQ0gsTUFBTSxDQUFDLE1BQU0sVUFBVSxHQUFHO0lBQ3hCLElBQUksRUFBRSxpQkFBaUI7SUFDdkIsT0FBTyxFQUFFLFFBQVE7SUFDakIsV0FBVyxFQUFFLGdPQUFnTztDQUM5TyxDQUFBIn0=
|
|
@@ -6,6 +6,7 @@ export declare class ProjectContext {
|
|
|
6
6
|
gatherFiles(): Promise<{
|
|
7
7
|
smartfilePackageJSON: plugins.smartfile.SmartFile;
|
|
8
8
|
smartfilesReadme: plugins.smartfile.SmartFile;
|
|
9
|
+
smartfilesReadmeHints: plugins.smartfile.SmartFile;
|
|
9
10
|
smartfilesNpmextraJSON: plugins.smartfile.SmartFile;
|
|
10
11
|
smartfilesMod: plugins.smartfile.SmartFile[];
|
|
11
12
|
smartfilesTest: plugins.smartfile.SmartFile[];
|
|
@@ -7,12 +7,14 @@ export class ProjectContext {
|
|
|
7
7
|
async gatherFiles() {
|
|
8
8
|
const smartfilePackageJSON = await plugins.smartfile.SmartFile.fromFilePath(plugins.path.join(this.projectDir, 'package.json'), this.projectDir);
|
|
9
9
|
const smartfilesReadme = await plugins.smartfile.SmartFile.fromFilePath(plugins.path.join(this.projectDir, 'readme.md'), this.projectDir);
|
|
10
|
+
const smartfilesReadmeHints = await plugins.smartfile.SmartFile.fromFilePath(plugins.path.join(this.projectDir, 'readme.hints.md'), this.projectDir);
|
|
10
11
|
const smartfilesNpmextraJSON = await plugins.smartfile.SmartFile.fromFilePath(plugins.path.join(this.projectDir, 'npmextra.json'), this.projectDir);
|
|
11
12
|
const smartfilesMod = await plugins.smartfile.fs.fileTreeToObject(this.projectDir, 'ts/**/*.ts');
|
|
12
13
|
const smartfilesTest = await plugins.smartfile.fs.fileTreeToObject(this.projectDir, 'test/**/*.ts');
|
|
13
14
|
return {
|
|
14
15
|
smartfilePackageJSON,
|
|
15
16
|
smartfilesReadme,
|
|
17
|
+
smartfilesReadmeHints,
|
|
16
18
|
smartfilesNpmextraJSON,
|
|
17
19
|
smartfilesMod,
|
|
18
20
|
smartfilesTest,
|
|
@@ -36,6 +38,7 @@ ${smartfile.contents.toString()}
|
|
|
36
38
|
let context = await this.convertFilesToContext([
|
|
37
39
|
files.smartfilePackageJSON,
|
|
38
40
|
files.smartfilesReadme,
|
|
41
|
+
files.smartfilesReadmeHints,
|
|
39
42
|
files.smartfilesNpmextraJSON,
|
|
40
43
|
...files.smartfilesMod,
|
|
41
44
|
...files.smartfilesTest,
|
|
@@ -47,4 +50,4 @@ ${smartfile.contents.toString()}
|
|
|
47
50
|
return result;
|
|
48
51
|
}
|
|
49
52
|
}
|
|
50
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHJvamVjdGNvbnRleHQuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi90cy9haWRvY3NfY2xhc3Nlcy9wcm9qZWN0Y29udGV4dC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEtBQUssT0FBTyxNQUFNLGVBQWUsQ0FBQztBQUV6QyxNQUFNLE9BQU8sY0FBYztJQUNsQixNQUFNLENBQUMsS0FBSyxDQUFDLE9BQU8sQ0FBQyxNQUFjLElBQUcsQ0FBQztJQUs5QyxZQUFZLGFBQXFCO1FBQy9CLElBQUksQ0FBQyxVQUFVLEdBQUcsYUFBYSxDQUFDO0lBQ2xDLENBQUM7SUFFTSxLQUFLLENBQUMsV0FBVztRQUN0QixNQUFNLG9CQUFvQixHQUFHLE1BQU0sT0FBTyxDQUFDLFNBQVMsQ0FBQyxTQUFTLENBQUMsWUFBWSxDQUN6RSxPQUFPLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsVUFBVSxFQUFFLGNBQWMsQ0FBQyxFQUNsRCxJQUFJLENBQUMsVUFBVSxDQUNoQixDQUFDO1FBQ0YsTUFBTSxnQkFBZ0IsR0FBRyxNQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsU0FBUyxDQUFDLFlBQVksQ0FDckUsT0FBTyxDQUFDLElBQUksQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLFVBQVUsRUFBRSxXQUFXLENBQUMsRUFDL0MsSUFBSSxDQUFDLFVBQVUsQ0FDaEIsQ0FBQztRQUVGLE1BQU0scUJBQXFCLEdBQUcsTUFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQzFFLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsaUJBQWlCLENBQUMsRUFDckQsSUFBSSxDQUFDLFVBQVUsQ0FDaEIsQ0FBQztRQUNGLE1BQU0sc0JBQXNCLEdBQUcsTUFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLFNBQVMsQ0FBQyxZQUFZLENBQzNFLE9BQU8sQ0FBQyxJQUFJLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxVQUFVLEVBQUUsZUFBZSxDQUFDLEVBQ25ELElBQUksQ0FBQyxVQUFVLENBQ2hCLENBQUM7UUFDRixNQUFNLGFBQWEsR0FBRyxNQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLGdCQUFnQixDQUMvRCxJQUFJLENBQUMsVUFBVSxFQUNmLFlBQVksQ0FDYixDQUFDO1FBQ0YsTUFBTSxjQUFjLEdBQUcsTUFBTSxPQUFPLENBQUMsU0FBUyxDQUFDLEVBQUUsQ0FBQyxnQkFBZ0IsQ0FDaEUsSUFBSSxDQUFDLFVBQVUsRUFDZixjQUFjLENBQ2YsQ0FBQztRQUNGLE9BQU87WUFDTCxvQkFBb0I7WUFDcEIsZ0JBQWdCO1lBQ2hCLHFCQUFxQjtZQUNyQixzQkFBc0I7WUFDdEIsYUFBYTtZQUNiLGNBQWM7U0FDZixDQUFDO0lBQ0osQ0FBQztJQUVNLEtBQUssQ0FBQyxxQkFBcUIsQ0FBQyxRQUF1QztRQUN4RSxPQUFPLFFBQVE7YUFDWixHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUUsRUFBRTtZQUNqQixPQUFPO3VCQUNRLFNBQVMsQ0FBQyxRQUFROztFQUV2QyxTQUFTLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRTs7cUJBRVYsU0FBUyxDQUFDLFFBQVE7U0FDOUIsQ0FBQztRQUNKLENBQUMsQ0FBQzthQUNELElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztJQUNoQixDQUFDO0lBRU8sS0FBSyxDQUFDLFlBQVksQ0FBQyxNQUFjO1FBQ3ZDLE1BQU0sS0FBSyxHQUFHLE1BQU0sSUFBSSxDQUFDLFdBQVcsRUFBRSxDQUFDO1FBQ3ZDLElBQUksT0FBTyxHQUFHLE1BQU0sSUFBSSxDQUFDLHFCQUFxQixDQUFDO1lBQzdDLEtBQUssQ0FBQyxvQkFBb0I7WUFDMUIsS0FBSyxDQUFDLGdCQUFnQjtZQUN0QixLQUFLLENBQUMscUJBQXFCO1lBQzNCLEtBQUssQ0FBQyxzQkFBc0I7WUFDNUIsR0FBRyxLQUFLLENBQUMsYUFBYTtZQUN0QixHQUFHLEtBQUssQ0FBQyxjQUFjO1NBQ3hCLENBQUMsQ0FBQztRQUNILE9BQU8sT0FBTyxDQUFDO0lBQ2pCLENBQUM7SUFFTSxLQUFLLENBQUMsTUFBTTtRQUNqQixNQUFNLE1BQU0sR0FBRyxNQUFNLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDO1FBQ3hELE9BQU8sTUFBTSxDQUFDO0lBQ2hCLENBQUM7Q0FDRiJ9
|
|
@@ -47,7 +47,9 @@ The Readme should follow the following template:
|
|
|
47
47
|
Don't include any licensing information. This will be added in a later step.
|
|
48
48
|
Avoid "in conclusions".
|
|
49
49
|
|
|
50
|
-
|
|
50
|
+
Good to know:
|
|
51
|
+
* npmextra.json contains overall module information.
|
|
52
|
+
* readme.hints.md provides valuable hints about module ideas.
|
|
51
53
|
]
|
|
52
54
|
`, contextString, []);
|
|
53
55
|
finalReadmeString += result.message.content + '\n' + legalInfo;
|
|
@@ -60,4 +62,4 @@ The Readme should follow the following template:
|
|
|
60
62
|
return result.message.content;
|
|
61
63
|
}
|
|
62
64
|
}
|
|
63
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
65
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVhZG1lLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vdHMvYWlkb2NzX2NsYXNzZXMvcmVhZG1lLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sS0FBSyxPQUFPLE1BQU0sZUFBZSxDQUFDO0FBQ3pDLE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQkFBcUIsQ0FBQztBQUVyRCxNQUFNLE9BQU8sTUFBTTtJQU1qQixZQUFZLFNBQWdCLEVBQUUsYUFBcUI7UUFDakQsSUFBSSxDQUFDLFNBQVMsR0FBRyxTQUFTLENBQUM7UUFDM0IsSUFBSSxDQUFDLFVBQVUsR0FBRyxhQUFhLENBQUM7SUFDbEMsQ0FBQztJQUVNLEtBQUssQ0FBQyxLQUFLO1FBQ2hCLElBQUksaUJBQWlCLEdBQUcsRUFBRSxDQUFDO1FBRTNCLCtDQUErQztRQUMvQyxNQUFNLGNBQWMsR0FBRyxJQUFJLGNBQWMsQ0FBQyxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUM7UUFDM0QsTUFBTSxhQUFhLEdBQUcsTUFBTSxjQUFjLENBQUMsTUFBTSxFQUFFLENBQUM7UUFFcEQscURBQXFEO1FBQ3JELE1BQU0sWUFBWSxHQUFHLElBQUksQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLE1BQU0sY0FBYyxDQUFDLFdBQVcsRUFBRSxDQUFDLENBQUMsc0JBQXNCLENBQUMsQ0FBQyxRQUFRLENBQUMsUUFBUSxFQUFFLENBQUMsQ0FBQztRQUNuSCxNQUFNLFNBQVMsR0FBRyxZQUFZLEVBQUUsS0FBSyxFQUFFLEtBQUssQ0FBQTtRQUM1QyxJQUFJLENBQUMsU0FBUyxFQUFFLENBQUM7WUFDZixNQUFNLEtBQUssR0FBRyxJQUFJLEtBQUssQ0FBQyw2Q0FBNkMsQ0FBQyxDQUFDO1lBQ3ZFLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUM7UUFDckIsQ0FBQztRQUVELElBQUksTUFBTSxHQUFHLE1BQU0sSUFBSSxDQUFDLFNBQVMsQ0FBQyxjQUFjLENBQUMsSUFBSSxDQUNuRDs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztPQWtDQyxFQUNELGFBQWEsRUFDYixFQUFFLENBQ0gsQ0FBQztRQUdGLGlCQUFpQixJQUFJLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBTyxHQUFHLElBQUksR0FBRyxTQUFTLENBQUM7UUFJL0QsT0FBTyxDQUFDLEdBQUcsQ0FBQyw0QkFBNEIsQ0FBQyxDQUFDO1FBQzFDLE9BQU8sQ0FBQyxHQUFHLENBQUMsTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUMsQ0FBQztRQUNwQyxPQUFPLENBQUMsR0FBRyxDQUFDLDRCQUE0QixDQUFDLENBQUM7UUFFMUMsTUFBTSxNQUFNLEdBQUcsQ0FBQyxNQUFNLGNBQWMsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDLGdCQUFnQixDQUFDO1FBQ3JFLE1BQU0sQ0FBQyxRQUFRLEdBQUcsTUFBTSxDQUFDLElBQUksQ0FBQyxpQkFBaUIsQ0FBQyxDQUFDO1FBQ2pELE1BQU0sTUFBTSxDQUFDLEtBQUssRUFBRSxDQUFDO1FBRXJCLE9BQU8sTUFBTSxDQUFDLE9BQU8sQ0FBQyxPQUFPLENBQUM7SUFDaEMsQ0FBQztDQUNGIn0=
|
package/dist_ts/cli.js
CHANGED
|
@@ -23,7 +23,13 @@ export const run = async () => {
|
|
|
23
23
|
});
|
|
24
24
|
});
|
|
25
25
|
tsdocCli.addCommand('aidocs').subscribe(async (argvArg) => {
|
|
26
|
+
logger.log('info', `Generating new readme...`);
|
|
27
|
+
logger.log('info', `This may take some time...`);
|
|
26
28
|
const aidocs = new AiDoc();
|
|
29
|
+
aidocs.buildReadme(paths.cwd);
|
|
30
|
+
logger.log('info', `Generating new keywords...`);
|
|
31
|
+
logger.log('info', `This may take some time...`);
|
|
32
|
+
aidocs.buildDescription(paths.cwd);
|
|
27
33
|
});
|
|
28
34
|
tsdocCli.addCommand('test').subscribe((argvArg) => {
|
|
29
35
|
tsdocCli.triggerCommand('typedoc', argvArg);
|
|
@@ -33,4 +39,4 @@ export const run = async () => {
|
|
|
33
39
|
});
|
|
34
40
|
tsdocCli.startParse();
|
|
35
41
|
};
|
|
36
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
42
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2xpLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vdHMvY2xpLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sS0FBSyxPQUFPLE1BQU0sY0FBYyxDQUFDO0FBQ3hDLE9BQU8sS0FBSyxLQUFLLE1BQU0sWUFBWSxDQUFDO0FBQ3BDLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFFdEMsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLHNCQUFzQixDQUFDO0FBQy9DLE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUUzQyxNQUFNLENBQUMsTUFBTSxHQUFHLEdBQUcsS0FBSyxJQUFJLEVBQUU7SUFDNUIsTUFBTSxRQUFRLEdBQUcsSUFBSSxPQUFPLENBQUMsUUFBUSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBRWpELFFBQVEsQ0FBQyxlQUFlLEVBQUUsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO1FBQ3JELE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLDZCQUE2QixDQUFDLENBQUM7UUFDbEQsUUFBUSxJQUFJLEVBQUUsQ0FBQztZQUNiLEtBQUssTUFBTSxPQUFPLENBQUMsWUFBWSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUM7Z0JBQ3hDLE1BQU0sQ0FBQyxHQUFHLENBQUMsSUFBSSxFQUFFLDJDQUEyQyxLQUFLLENBQUMsR0FBRyxFQUFFLENBQUMsQ0FBQztnQkFDekUsUUFBUSxDQUFDLGNBQWMsQ0FBQyxTQUFTLEVBQUUsT0FBTyxDQUFDLENBQUM7Z0JBQzVDLE1BQU07WUFDUjtnQkFDRSxNQUFNLENBQUMsR0FBRyxDQUFDLE9BQU8sRUFBRSxtQ0FBbUMsS0FBSyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUM7UUFDeEUsQ0FBQztJQUNILENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLFVBQVUsQ0FBQyxTQUFTLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO1FBQ3pELE1BQU0sZUFBZSxHQUFHLElBQUksT0FBTyxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsQ0FBQztRQUMvQyxNQUFNLGVBQWUsQ0FBQyxPQUFPLENBQUM7WUFDNUIsWUFBWSxFQUFFLE9BQU8sQ0FBQyxZQUFZO1NBQ25DLENBQUMsQ0FBQztJQUNMLENBQUMsQ0FBQyxDQUFDO0lBRUgsUUFBUSxDQUFDLFVBQVUsQ0FBQyxRQUFRLENBQUMsQ0FBQyxTQUFTLENBQUMsS0FBSyxFQUFFLE9BQU8sRUFBRSxFQUFFO1FBQ3hELE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLDBCQUEwQixDQUFDLENBQUM7UUFDL0MsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsNEJBQTRCLENBQUMsQ0FBQztRQUNqRCxNQUFNLE1BQU0sR0FBRyxJQUFJLEtBQUssRUFBRSxDQUFDO1FBQzNCLE1BQU0sQ0FBQyxXQUFXLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO1FBQzlCLE1BQU0sQ0FBQyxHQUFHLENBQUMsTUFBTSxFQUFFLDRCQUE0QixDQUFDLENBQUM7UUFDakQsTUFBTSxDQUFDLEdBQUcsQ0FBQyxNQUFNLEVBQUUsNEJBQTRCLENBQUMsQ0FBQztRQUNqRCxNQUFNLENBQUMsZ0JBQWdCLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDO0lBQ3JDLENBQUMsQ0FBQyxDQUFBO0lBRUYsUUFBUSxDQUFDLFVBQVUsQ0FBQyxNQUFNLENBQUMsQ0FBQyxTQUFTLENBQUMsQ0FBQyxPQUFPLEVBQUUsRUFBRTtRQUNoRCxRQUFRLENBQUMsY0FBYyxDQUFDLFNBQVMsRUFBRSxPQUFPLENBQUMsQ0FBQztRQUM1QyxPQUFPLENBQUMsRUFBRSxDQUFDLE1BQU0sRUFBRSxLQUFLLElBQUksRUFBRTtZQUM1QixNQUFNLE9BQU8sQ0FBQyxTQUFTLENBQUMsRUFBRSxDQUFDLE1BQU0sQ0FBQyxLQUFLLENBQUMsU0FBUyxDQUFDLENBQUM7UUFDckQsQ0FBQyxDQUFDLENBQUM7SUFDTCxDQUFDLENBQUMsQ0FBQztJQUVILFFBQVEsQ0FBQyxVQUFVLEVBQUUsQ0FBQztBQUN4QixDQUFDLENBQUMifQ==
|
package/npmextra.json
CHANGED
|
@@ -9,18 +9,22 @@
|
|
|
9
9
|
"npmPackagename": "@git.zone/tsdoc",
|
|
10
10
|
"license": "MIT",
|
|
11
11
|
"projectDomain": "git.zone",
|
|
12
|
-
"description": "An advanced TypeScript documentation tool leveraging AI for enhanced insights and automated documentation generation.",
|
|
12
|
+
"description": "An advanced TypeScript documentation tool leveraging AI for enhanced insights and automated documentation generation, with capabilities for automated and enhanced documentation creation tailor-made for TypeScript projects.",
|
|
13
13
|
"keywords": [
|
|
14
14
|
"TypeScript",
|
|
15
|
-
"documentation
|
|
15
|
+
"documentation",
|
|
16
16
|
"AI-enhanced documentation",
|
|
17
|
-
"automated documentation",
|
|
17
|
+
"automated documentation generation",
|
|
18
18
|
"code analysis",
|
|
19
|
-
"
|
|
20
|
-
"
|
|
21
|
-
"
|
|
22
|
-
"
|
|
23
|
-
"
|
|
19
|
+
"development tool",
|
|
20
|
+
"CLI utility",
|
|
21
|
+
"API documentation",
|
|
22
|
+
"developer productivity",
|
|
23
|
+
"code insights",
|
|
24
|
+
"integrated development environment tooling",
|
|
25
|
+
"code quality enhancement",
|
|
26
|
+
"project documentation",
|
|
27
|
+
"documentation automation"
|
|
24
28
|
]
|
|
25
29
|
}
|
|
26
30
|
},
|
package/package.json
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@git.zone/tsdoc",
|
|
3
|
-
"version": "1.1.
|
|
3
|
+
"version": "1.1.18",
|
|
4
4
|
"private": false,
|
|
5
|
-
"description": "An advanced TypeScript documentation tool leveraging AI for enhanced insights and automated documentation generation.",
|
|
5
|
+
"description": "An advanced TypeScript documentation tool leveraging AI for enhanced insights and automated documentation generation, with capabilities for automated and enhanced documentation creation tailor-made for TypeScript projects.",
|
|
6
6
|
"main": "dist_ts/index.js",
|
|
7
7
|
"typings": "dist_ts/index.d.ts",
|
|
8
8
|
"type": "module",
|
|
@@ -51,18 +51,23 @@
|
|
|
51
51
|
],
|
|
52
52
|
"keywords": [
|
|
53
53
|
"TypeScript",
|
|
54
|
-
"documentation
|
|
54
|
+
"documentation",
|
|
55
55
|
"AI-enhanced documentation",
|
|
56
|
-
"automated documentation",
|
|
56
|
+
"automated documentation generation",
|
|
57
57
|
"code analysis",
|
|
58
|
-
"
|
|
59
|
-
"
|
|
60
|
-
"
|
|
61
|
-
"
|
|
62
|
-
"
|
|
58
|
+
"development tool",
|
|
59
|
+
"CLI utility",
|
|
60
|
+
"API documentation",
|
|
61
|
+
"developer productivity",
|
|
62
|
+
"code insights",
|
|
63
|
+
"integrated development environment tooling",
|
|
64
|
+
"code quality enhancement",
|
|
65
|
+
"project documentation",
|
|
66
|
+
"documentation automation"
|
|
63
67
|
],
|
|
64
68
|
"scripts": {
|
|
65
|
-
"test": "(tstest test/) &&
|
|
69
|
+
"test": "(tstest test/) && npm run testCli",
|
|
70
|
+
"testCli": "(node ./cli.ts.js) && (node ./cli.ts.js aidocs)",
|
|
66
71
|
"build": "(tsbuild --web --allowimplicitany)"
|
|
67
72
|
}
|
|
68
73
|
}
|
package/readme.hints.md
ADDED
package/readme.md
CHANGED
|
@@ -1,85 +1,92 @@
|
|
|
1
1
|
# @git.zone/tsdoc
|
|
2
|
-
|
|
2
|
+
An advanced TypeScript documentation tool that leverages AI for enhanced insights and automated documentation generation.
|
|
3
3
|
|
|
4
4
|
## Install
|
|
5
|
-
To install `@git.zone/tsdoc`,
|
|
5
|
+
To install `@git.zone/tsdoc`, you have two options depending on your usage preference: globally for CLI use or locally within your project for use through NPX. To install globally, run:
|
|
6
6
|
|
|
7
|
-
```
|
|
8
|
-
npm install @git.zone/tsdoc
|
|
7
|
+
```sh
|
|
8
|
+
npm install -g @git.zone/tsdoc
|
|
9
9
|
```
|
|
10
10
|
|
|
11
|
-
|
|
11
|
+
For local installation within your project, use:
|
|
12
|
+
|
|
13
|
+
```sh
|
|
14
|
+
npm install --save @git.zone/tsdoc
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
You can then use the tool through NPX if installed locally:
|
|
18
|
+
|
|
19
|
+
```sh
|
|
20
|
+
npx tsdoc
|
|
21
|
+
```
|
|
12
22
|
|
|
13
23
|
## Usage
|
|
14
|
-
|
|
24
|
+
`@git.zone/tsdoc` is a tool designed to improve the process of generating documentation for TypeScript projects. It combines the capabilities of Typedoc with AI-powered features to automatically generate insights and enhance the quality of your API documentation without manual intervention.
|
|
15
25
|
|
|
16
|
-
|
|
17
|
-
First, ensure you import `@git.zone/tsdoc` functionalities into your project. Start by importing necessary functions or classes provided by the module in your TypeScript file:
|
|
26
|
+
To get started, after installation, navigate to the root directory of your TypeScript project where your `tsconfig.json` is located and run:
|
|
18
27
|
|
|
19
28
|
```typescript
|
|
20
29
|
import { runCli } from '@git.zone/tsdoc';
|
|
30
|
+
|
|
31
|
+
// Initialize and run the CLI
|
|
32
|
+
runCli().then(() => {
|
|
33
|
+
console.log('Documentation generation complete!');
|
|
34
|
+
}).catch((error) => {
|
|
35
|
+
console.error('Failed to generate documentation:', error);
|
|
36
|
+
});
|
|
21
37
|
```
|
|
22
38
|
|
|
23
|
-
###
|
|
24
|
-
`@git.zone/tsdoc`
|
|
39
|
+
### Generating Documentation
|
|
40
|
+
`@git.zone/tsdoc` provides a command-line interface to generate documentation directly from your TypeScript source files. The CLI uses information from your TypeScript configuration and the source files to create comprehensive documentation.
|
|
25
41
|
|
|
26
|
-
|
|
27
|
-
// Programmatically
|
|
28
|
-
await runCli();
|
|
42
|
+
Once `tsdoc` is installed globally, you can run the following command in the root of your TypeScript project:
|
|
29
43
|
|
|
30
|
-
|
|
31
|
-
tsdoc
|
|
44
|
+
```sh
|
|
45
|
+
tsdoc
|
|
32
46
|
```
|
|
33
47
|
|
|
34
|
-
This
|
|
48
|
+
This command analyzes your TypeScript project, extracts type information, and generates documentation pages as HTML or Markdown. You can customize the output format and specify additional options via command line parameters or by editing `tsdoc` configuration files.
|
|
35
49
|
|
|
36
|
-
###
|
|
37
|
-
|
|
50
|
+
### Command Line Parameters
|
|
51
|
+
The CLI tool reads options from `./ts/cli.ts`. Command line parameters allow you to customize the behavior of `tsdoc`. For more detailed usage, run:
|
|
38
52
|
|
|
39
|
-
|
|
40
|
-
|
|
53
|
+
```sh
|
|
54
|
+
tsdoc --help
|
|
55
|
+
```
|
|
41
56
|
|
|
42
|
-
|
|
43
|
-
Integrate documentation generation into your continuous integration pipeline to automate the creation and updating of documentation with each code change. This approach ensures your documentation remains up-to-date and relevant.
|
|
57
|
+
This will display a list of available commands and options, such as specifying the output directory for the generated documentation or enabling/disabling certain features of the documentation generator.
|
|
44
58
|
|
|
45
|
-
###
|
|
46
|
-
|
|
59
|
+
### Examples
|
|
60
|
+
Below is an example of how to use `tsdoc` to generate documentation with custom options:
|
|
47
61
|
|
|
48
|
-
```
|
|
49
|
-
|
|
50
|
-
* A simple arithmetic calculator class.
|
|
51
|
-
*/
|
|
52
|
-
export class Calculator {
|
|
53
|
-
/**
|
|
54
|
-
* Adds two numbers.
|
|
55
|
-
* @param a The first number.
|
|
56
|
-
* @param b The second number.
|
|
57
|
-
* @returns The sum of `a` and `b`.
|
|
58
|
-
*/
|
|
59
|
-
add(a: number, b: number): number {
|
|
60
|
-
return a + b;
|
|
61
|
-
}
|
|
62
|
-
|
|
63
|
-
/**
|
|
64
|
-
* Subtracts the second number from the first.
|
|
65
|
-
* @param a The first number.
|
|
66
|
-
* @param b The second number.
|
|
67
|
-
* @returns The difference of `a` and `b`.
|
|
68
|
-
*/
|
|
69
|
-
subtract(a: number, b: number): number {
|
|
70
|
-
return a - b;
|
|
71
|
-
}
|
|
72
|
-
}
|
|
62
|
+
```sh
|
|
63
|
+
tsdoc --output docs/api --format html
|
|
73
64
|
```
|
|
65
|
+
This command generates HTML documentation for your project and places it in the `docs/api` directory.
|
|
74
66
|
|
|
75
|
-
|
|
67
|
+
### Additional Features
|
|
68
|
+
Beyond basic documentation generation, `tsdoc` integrates AI-powered analysis to enrich the documentation automatically. This feature helps by providing insights into complex types, documenting patterns used within your codebase, and suggesting improvements for better maintainability and readability of your documentation.
|
|
76
69
|
|
|
77
|
-
|
|
78
|
-
Incorporating `@git.zone/tsdoc` into your TypeScript project not only streamlines the documentation process but leverages AI to enhance the quality and effectiveness of your project's documentation. Follow the suggested practices and explore the advanced features to fully utilize this powerful tool.
|
|
70
|
+
**Note:** `tsdoc` is designed for use with projects adhering to modern TypeScript conventions. Ensure your project structure and TypeScript configuration are compatible for optimal results.
|
|
79
71
|
|
|
80
|
-
|
|
72
|
+
### Integration with CI/CD
|
|
73
|
+
`@git.zone/tsdoc` can be integrated into your CI/CD pipelines to automatically generate and update documentation as part of your build process. This ensures that your API documentation is always up-to-date with your codebase.
|
|
81
74
|
|
|
82
|
-
|
|
75
|
+
Here's an example configuration snippet for a CI workflow:
|
|
76
|
+
|
|
77
|
+
```yml
|
|
78
|
+
steps:
|
|
79
|
+
- name: Install tsdoc
|
|
80
|
+
run: npm install -g @git.zone/tsdoc
|
|
81
|
+
|
|
82
|
+
- name: Generate Documentation
|
|
83
|
+
run: tsdoc
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
Remember to replace placeholders and adjust paths as necessary depending on your CI provider and project configuration.
|
|
87
|
+
|
|
88
|
+
### Conclusion
|
|
89
|
+
`@git.zone/tsdoc` is a powerful tool that leverages the best of Typedoc and AI to streamline the documentation process for TypeScript projects. By automating the generation of insightful and comprehensive documentation, it enhances developer productivity and improves the quality of project documentation.
|
|
83
90
|
|
|
84
91
|
## License and Legal Information
|
|
85
92
|
|
package/ts/00_commitinfo_data.ts
CHANGED
|
@@ -3,6 +3,6 @@
|
|
|
3
3
|
*/
|
|
4
4
|
export const commitinfo = {
|
|
5
5
|
name: '@git.zone/tsdoc',
|
|
6
|
-
version: '1.1.
|
|
7
|
-
description: 'An advanced TypeScript documentation tool leveraging AI for enhanced insights and automated documentation generation.'
|
|
6
|
+
version: '1.1.18',
|
|
7
|
+
description: 'An advanced TypeScript documentation tool leveraging AI for enhanced insights and automated documentation generation, with capabilities for automated and enhanced documentation creation tailor-made for TypeScript projects.'
|
|
8
8
|
}
|
|
@@ -19,6 +19,11 @@ export class ProjectContext {
|
|
|
19
19
|
plugins.path.join(this.projectDir, 'readme.md'),
|
|
20
20
|
this.projectDir
|
|
21
21
|
);
|
|
22
|
+
|
|
23
|
+
const smartfilesReadmeHints = await plugins.smartfile.SmartFile.fromFilePath(
|
|
24
|
+
plugins.path.join(this.projectDir, 'readme.hints.md'),
|
|
25
|
+
this.projectDir
|
|
26
|
+
);
|
|
22
27
|
const smartfilesNpmextraJSON = await plugins.smartfile.SmartFile.fromFilePath(
|
|
23
28
|
plugins.path.join(this.projectDir, 'npmextra.json'),
|
|
24
29
|
this.projectDir
|
|
@@ -34,6 +39,7 @@ export class ProjectContext {
|
|
|
34
39
|
return {
|
|
35
40
|
smartfilePackageJSON,
|
|
36
41
|
smartfilesReadme,
|
|
42
|
+
smartfilesReadmeHints,
|
|
37
43
|
smartfilesNpmextraJSON,
|
|
38
44
|
smartfilesMod,
|
|
39
45
|
smartfilesTest,
|
|
@@ -59,6 +65,7 @@ ${smartfile.contents.toString()}
|
|
|
59
65
|
let context = await this.convertFilesToContext([
|
|
60
66
|
files.smartfilePackageJSON,
|
|
61
67
|
files.smartfilesReadme,
|
|
68
|
+
files.smartfilesReadmeHints,
|
|
62
69
|
files.smartfilesNpmextraJSON,
|
|
63
70
|
...files.smartfilesMod,
|
|
64
71
|
...files.smartfilesTest,
|
|
@@ -59,7 +59,9 @@ The Readme should follow the following template:
|
|
|
59
59
|
Don't include any licensing information. This will be added in a later step.
|
|
60
60
|
Avoid "in conclusions".
|
|
61
61
|
|
|
62
|
-
|
|
62
|
+
Good to know:
|
|
63
|
+
* npmextra.json contains overall module information.
|
|
64
|
+
* readme.hints.md provides valuable hints about module ideas.
|
|
63
65
|
]
|
|
64
66
|
`,
|
|
65
67
|
contextString,
|
package/ts/cli.ts
CHANGED
|
@@ -28,7 +28,13 @@ export const run = async () => {
|
|
|
28
28
|
});
|
|
29
29
|
|
|
30
30
|
tsdocCli.addCommand('aidocs').subscribe(async (argvArg) => {
|
|
31
|
+
logger.log('info', `Generating new readme...`);
|
|
32
|
+
logger.log('info', `This may take some time...`);
|
|
31
33
|
const aidocs = new AiDoc();
|
|
34
|
+
aidocs.buildReadme(paths.cwd);
|
|
35
|
+
logger.log('info', `Generating new keywords...`);
|
|
36
|
+
logger.log('info', `This may take some time...`);
|
|
37
|
+
aidocs.buildDescription(paths.cwd);
|
|
32
38
|
})
|
|
33
39
|
|
|
34
40
|
tsdocCli.addCommand('test').subscribe((argvArg) => {
|