Class MarkdownHelpProvider

Namespace
Kuestenlogik.Bowire.Help.Provider
Assembly
Kuestenlogik.Bowire.Help.dll

IBowireHelpProvider backed by the markdown files embedded in this assembly. Scans the manifest at construction for resources whose name starts with bowire-help-docs/, parses the front-matter + first H1 to extract the title, and builds an in-memory inverted-index for search.

public sealed class MarkdownHelpProvider : IBowireHelpProvider
Inheritance
MarkdownHelpProvider
Implements
Inherited Members

Remarks

Cost paid once at startup (singleton). For the docs set Bowire ships today (~60 markdown files, ~5 KB avg, ~300 KB total) the index is well under 1 MB resident — cheap enough that we never re-parse from the manifest stream after registration.

Constructors

MarkdownHelpProvider()

public MarkdownHelpProvider()

Methods

GetTopic(string)

Look up a single topic by its stable id. Returns null when no topic matches — the endpoint surfaces that as 404.

public HelpTopic? GetTopic(string id)

Parameters

id string

Returns

HelpTopic

ListTopics()

Enumerate every topic the provider can serve. The workbench's Help drawer renders this as a topic tree (grouped by CategoryId).

public IReadOnlyList<HelpTopicSummary> ListTopics()

Returns

IReadOnlyList<HelpTopicSummary>

Search(string, int)

Free-text search across topic titles + bodies. Implementations own the ranking; the workbench just renders the order returned.

public IReadOnlyList<HelpSearchHit> Search(string query, int limit = 20)

Parameters

query string

User input. Empty / whitespace returns an empty list.

limit int

Maximum number of hits to return (default 20).

Returns

IReadOnlyList<HelpSearchHit>