Skip to main content
Glama

In Memoria

test-documentation-generator.js•3.23 kB
#!/usr/bin/env node import { SemanticEngine } from '../dist/engines/semantic-engine.js'; import { PatternEngine } from '../dist/engines/pattern-engine.js'; import { SQLiteDatabase } from '../dist/storage/sqlite-db.js'; import { SemanticVectorDB } from '../dist/storage/vector-db.js'; import { CoreAnalysisTools } from '../dist/mcp-server/tools/core-analysis.js'; import { writeFileSync } from 'fs'; async function testDocumentationGenerator() { console.log('šŸ“š Testing Intelligent Documentation Generator...\n'); try { // Initialize components const database = new SQLiteDatabase('./test-docs.db'); const vectorDB = new SemanticVectorDB(); const semanticEngine = new SemanticEngine(database, vectorDB); const patternEngine = new PatternEngine(database); const coreTools = new CoreAnalysisTools(semanticEngine, patternEngine, database); console.log('āœ… Initialized all components'); // Test documentation generation console.log('\nšŸ“– Generating documentation for ./src...'); const result = await coreTools.generateDocumentation({ path: './src', format: 'markdown', includeExamples: true, includeArchitecture: true }); console.log('\nšŸ“Š Documentation Generation Results:'); console.log(` Success: Generated documentation`); console.log(` Format: ${result.metadata.format}`); console.log(` Generated at: ${result.metadata.generatedAt.toLocaleString()}`); console.log(` Sections: ${result.metadata.sections.join(', ')}`); console.log(` Length: ${result.documentation.length} characters`); // Save documentation to file const filename = `docs/GENERATED_DOCS_${Date.now()}.md`; writeFileSync(filename, result.documentation); console.log(`\nšŸ’¾ Documentation saved to: ${filename}`); // Show preview of generated content console.log('\nšŸ“‹ Documentation Preview (first 500 characters):'); console.log('─'.repeat(60)); console.log(result.documentation.substring(0, 500) + '...'); console.log('─'.repeat(60)); // Test different formats console.log('\nšŸ”„ Testing different formats...'); // HTML format const htmlResult = await coreTools.generateDocumentation({ path: './src', format: 'html', includeExamples: false }); console.log(` HTML format: ${htmlResult.documentation.length} characters`); // JSON format const jsonResult = await coreTools.generateDocumentation({ path: './src', format: 'json', includeArchitecture: false }); console.log(` JSON format: ${jsonResult.documentation.length} characters`); console.log('\nšŸŽ‰ Documentation generator working successfully!'); console.log('\n✨ Key Features Demonstrated:'); console.log(' āœ… Intelligent codebase analysis'); console.log(' āœ… Pattern-based documentation'); console.log(' āœ… Multiple output formats'); console.log(' āœ… Configurable sections'); console.log(' āœ… Automated insights generation'); } catch (error) { console.error('āŒ Test failed:', error); console.error('Stack:', error.stack); } } testDocumentationGenerator();

MCP directory API

We provide all the information about MCP servers via our MCP API.

curl -X GET 'https://glama.ai/api/mcp/v1/servers/pi22by7/In-Memoria'

If you have feedback or need assistance with the MCP directory API, please join our Discord server