How bryanheby/mant works
ManT is a local-first documentation catalog, reader, and query engine. Users and automation discover or select Markdown and native manual documents; loading and parsing produce a shared structured document model, which supports outlines, excerpts, explanations, search, and cross-document queries. The CLI and MCP expose structured results, while the TUI supports interactive reading and navigation. The README documents these product capabilities; sampled source confirms request execution, CLI adaptation, and MCP service calls, but does not show every subsystem’s internal wiring.
Main entry points: loading.rs Document loading · query.rs Request engine · document.rs Normalized document · service.rs MCP service
Components 22
Sources and parsing
- Document catalog
crates/mant-loader/src/catalog.rs - Registered sources
crates/mant-sources/src/lib.rs - Document loading
crates/mant-loader/src/loading.rs - Manual paths
crates/mant-loader/src/manual_paths.rs - Markdown parser
crates/mant-codec/src/markdown/mod.rs - Roff parser
crates/libmandoc-rs/src/parser.rs
Document model
- Document codec
crates/mant-codec/src/lib.rs - Normalized document
crates/mant-ir/src/document.rs
Query engine
- Request engine
crates/mant-engine/src/query.rs - Document queries
crates/mant-query/src/lib.rs - Scope queries
crates/mant-query/src/scope_query.rs
User interfaces
- Executable entry
crates/mant/src/main.rs - CLI query
crates/mant/src/cli/query.rs - Application requests
crates/mant/src/application.rs - Host services
crates/mant/src/host.rs - Interactive reader
crates/mant-ui/src/app/mod.rs - MCP service
crates/mant/src/mcp/service.rs - TUI presentation
crates/mant-ui/src/document/mod.rs
Protocol and rendering
- Typed API contracts
crates/mant-protocol/src/lib.rs - Output rendering
crates/mant-render/src/lib.rs
Other components
- Reader
- Scripts and agents
Connections 29
- Reader → Executable entry: runs
- Scripts and agents → CLI query: requests
- Scripts and agents → MCP service: requests
- Executable entry → CLI query: dispatches
- CLI query → Application requests: submits
- Application requests → Host services: queries
- Host services → Request engine: executes
- CLI query → Output rendering: formats
- Reader → Interactive reader: navigates
- Interactive reader → Application requests: opens documents
- Interactive reader → TUI presentation: presents
- MCP service → Request engine: executes
- MCP service → Document catalog: discovers
- MCP service → Typed API contracts: accepts requests
- Document catalog → Registered sources: scans
- Document loading → Document catalog: resolves
- Document loading → Manual paths: locates
- Document loading → Markdown parser: parses
- Document loading → Roff parser: parses
- Markdown parser → Document codec: encodes
- Roff parser → Document codec: renders
- Document codec → Normalized document: normalizes
- Request engine → Document loading: loads
- Request engine → Document queries: projects
- Request engine → Scope queries: queries scope
- Document queries → Normalized document: reads
- Scope queries → Normalized document: queries snapshots
- Output rendering → Normalized document: renders
- Typed API contracts → Normalized document: defines contracts