concept_analyzer/
lib.rs

1//! Concept Analyzer Library
2//!
3//! This crate provides tools for analyzing code repositories to extract high-level concepts,
4//! identify relationships between them, and build a conceptual map of the entire ecosystem.
5
6pub mod analyze_relationships;
7pub mod concept_registry;
8pub mod file_collector;
9pub mod identify_abstractions;
10pub mod llm_client;
11// pub mod github_integration; // Commented out due to missing dependencies
12pub mod api;
13pub mod genetic_engine;
14pub mod genetic_github;
15pub mod genetic_integration;
16pub mod knowledge_integration;
17pub mod unified_pipeline;
18
19// Re-export key types for easier usage
20pub use analyze_relationships::{Relationship, RelationshipAnalyzer};
21pub use concept_registry::{ConceptRegistry, Gap};
22pub use file_collector::{BatchFileCollector, FileCollection, FileData};
23pub use identify_abstractions::{Abstraction, AbstractionIdentifier};
24pub use llm_client::LLMClient;
25// pub use github_integration::{GithubClient, RepoSearchResult, RepositoryCompatibility};
26pub use knowledge_integration::{KnowledgeEntity, KnowledgeIntegration, KnowledgeStore};
27
28// Re-export old genetic integration types for backward compatibility
29pub use genetic_integration::{
30    GeneticAlgorithm, GeneticParameters as OldGeneticParameters, SolutionCandidate,
31};
32
33// Re-export new genetic engine types
34pub use genetic_engine::{
35    AsyncFitnessFunction, AsyncGeneticEngine, FitnessFunction, GeneticConstraint,
36    GeneticParameters, GeneticSolution, Genome, SelectionMethod, TextGenome,
37};
38
39// Re-export GitHub genetic integration
40pub use genetic_github::{
41    RepositoryFitnessFunction, RepositoryGenome, RepositorySelectionEngine,
42    RepositorySolutionProcessor,
43};
44
45// Re-export unified pipeline for single-call analysis
46pub use unified_pipeline::{
47    analyze_repository, ConceptRelation, CriticalGap, EssentialConcept, FirstPrinciplesOutput,
48    RebuildStep, UnifiedAnalysisPipeline,
49};
50
51// Re-export API functionality
52#[cfg(feature = "api")]
53pub use api::create_api_router;
54pub use api::{run_cli_analysis, AnalyzeRequest, AnalyzeResponse};