Documentation
¶
Index ¶
- func AnalyticsFuncMap() template.FuncMap
- func BaseFuncMap() template.FuncMap
- func BuildFooter(site *core.Site, version string) core.FooterConfig
- func ChangelogFuncMap() template.FuncMap
- func ExtendFuncMap(additional template.FuncMap) template.FuncMap
- func KBFuncMap() template.FuncMap
- func MCPFuncMap() template.FuncMap
- func OpenAPIFuncMap() template.FuncMap
- func PortfolioFuncMap() template.FuncMap
- func StatusFuncMap() template.FuncMap
- type CategoryJSON
- type ChangelogGenerator
- type ChangelogJSON
- type ComponentJSON
- type ContactGenerator
- type FaqGenerator
- type HTMLGenerator
- type I18nGenerator
- type IncidentJSON
- type KBGenerator
- type LLMSGenerator
- type LandingGenerator
- type LegalGenerator
- type LocaleInfoJSON
- type LocalesJSON
- type MCPGenerator
- type MaintenanceJSON
- type OpenAPIGenerator
- type PortfolioGenerator
- type PostingList
- type ReleaseJSON
- type RoadmapGenerator
- type RoadmapVersionGroup
- type SearchGenerator
- type SearchIndex
- type SearchManifest
- type SearchPage
- type SearchSection
- type SearchShard
- type SitemapGenerator
- type StatusGenerator
- type StatusJSON
- type ThemeGenerator
- type URL
- type URLSet
- type UptimeConfigJSON
- type VersionGenerator
- type VersionInfoJSON
- type VersionsJSON
- type WaitlistGenerator
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func AnalyticsFuncMap ¶
AnalyticsFuncMap returns template functions for analytics rendering.
func BaseFuncMap ¶
BaseFuncMap returns the common template functions used across all generators.
func BuildFooter ¶
func BuildFooter(site *core.Site, version string) core.FooterConfig
BuildFooter creates a footer config with all auto-generated content. It starts with the user's config and adds: - Legal links group (if legal pages exist) - Version badge (unless HideVersion is true)
func ChangelogFuncMap ¶
ChangelogFuncMap returns template functions specific to changelog pages.
func ExtendFuncMap ¶
ExtendFuncMap returns a new FuncMap that combines base functions with additional ones.
func MCPFuncMap ¶ added in v1.5.0
MCPFuncMap returns template functions specific to MCP documentation
func OpenAPIFuncMap ¶
OpenAPIFuncMap returns template functions specific to OpenAPI pages.
func PortfolioFuncMap ¶
PortfolioFuncMap returns template functions specific to portfolio pages.
func StatusFuncMap ¶
StatusFuncMap returns template functions specific to status pages.
Types ¶
type CategoryJSON ¶
CategoryJSON represents a change category in the JSON API
type ChangelogGenerator ¶
type ChangelogGenerator struct {
// contains filtered or unexported fields
}
ChangelogGenerator generates changelog HTML and related files
func NewChangelogGenerator ¶
func NewChangelogGenerator(site *core.Site, themeFS embed.FS, version string) (*ChangelogGenerator, error)
NewChangelogGenerator creates a new changelog generator
func (*ChangelogGenerator) Generate ¶
func (g *ChangelogGenerator) Generate() error
Generate generates all changelog files
type ChangelogJSON ¶
type ChangelogJSON struct {
Title string `json:"title"`
Description string `json:"description"`
Releases []ReleaseJSON `json:"releases"`
LastUpdated time.Time `json:"last_updated"`
}
ChangelogJSON represents the JSON API response for changelog
type ComponentJSON ¶
type ComponentJSON struct {
ID string `json:"id"`
Name string `json:"name"`
Description string `json:"description,omitempty"`
Status string `json:"status"`
Group string `json:"group,omitempty"`
URL string `json:"url,omitempty"`
HealthEndpoint string `json:"health_endpoint,omitempty"`
HealthInterval int `json:"health_interval,omitempty"`
Uptime *UptimeConfigJSON `json:"uptime,omitempty"`
UptimeData *core.UptimeData `json:"uptime_data,omitempty"`
}
ComponentJSON represents a component in the JSON API
type ContactGenerator ¶
type ContactGenerator struct {
// contains filtered or unexported fields
}
ContactGenerator generates contact page HTML
func NewContactGenerator ¶
func NewContactGenerator(site *core.Site, themeFS embed.FS, version string) (*ContactGenerator, error)
NewContactGenerator creates a new contact generator
func (*ContactGenerator) Generate ¶
func (g *ContactGenerator) Generate() error
Generate generates the contact page
type FaqGenerator ¶
type FaqGenerator struct {
// contains filtered or unexported fields
}
FaqGenerator generates the FAQ page HTML
func NewFaqGenerator ¶
NewFaqGenerator creates a new FAQ generator
func (*FaqGenerator) Generate ¶
func (g *FaqGenerator) Generate() error
Generate generates the FAQ page
type HTMLGenerator ¶
type HTMLGenerator struct {
// contains filtered or unexported fields
}
HTMLGenerator generates HTML files from pages
func NewHTMLGenerator ¶
NewHTMLGenerator creates a new HTML generator
func (*HTMLGenerator) Generate ¶
func (g *HTMLGenerator) Generate() error
Generate generates HTML files for all pages
type I18nGenerator ¶
type I18nGenerator struct {
// contains filtered or unexported fields
}
I18nGenerator generates localized documentation output
func NewI18nGenerator ¶
NewI18nGenerator creates a new i18n generator
func (*I18nGenerator) Generate ¶
func (g *I18nGenerator) Generate() error
Generate generates localized documentation
type IncidentJSON ¶
type IncidentJSON struct {
ID string `json:"id"`
Title string `json:"title"`
Status string `json:"status"`
Severity string `json:"severity"`
AffectedComponents []string `json:"affected_components"`
CreatedAt time.Time `json:"created_at"`
UpdatedAt time.Time `json:"updated_at"`
URL string `json:"url"`
}
IncidentJSON represents an incident in the JSON API
type KBGenerator ¶
type KBGenerator struct {
// contains filtered or unexported fields
}
KBGenerator generates the Knowledge Base pages
func NewKBGenerator ¶
NewKBGenerator creates a new Knowledge Base generator
func (*KBGenerator) Generate ¶
func (g *KBGenerator) Generate() error
Generate generates all Knowledge Base pages
type LLMSGenerator ¶
type LLMSGenerator struct {
// contains filtered or unexported fields
}
LLMSGenerator generates llms.txt and LLM-friendly markdown files
func NewLLMSGenerator ¶
func NewLLMSGenerator(site *core.Site) *LLMSGenerator
NewLLMSGenerator creates a new LLMS generator
func (*LLMSGenerator) Generate ¶
func (g *LLMSGenerator) Generate() error
Generate creates llms.txt (index), llms-full.txt (content), and companion .md files
type LandingGenerator ¶
type LandingGenerator struct {
// contains filtered or unexported fields
}
LandingGenerator generates landing page HTML
func NewLandingGenerator ¶
func NewLandingGenerator(site *core.Site, themeFS embed.FS, version string) (*LandingGenerator, error)
NewLandingGenerator creates a new landing generator
func (*LandingGenerator) Generate ¶
func (g *LandingGenerator) Generate() error
Generate generates the landing page
type LegalGenerator ¶
type LegalGenerator struct {
// contains filtered or unexported fields
}
LegalGenerator generates legal page HTML
func NewLegalGenerator ¶
NewLegalGenerator creates a new legal generator
func (*LegalGenerator) Generate ¶
func (g *LegalGenerator) Generate() error
Generate generates all legal pages
type LocaleInfoJSON ¶
type LocaleInfoJSON struct {
Code string `json:"code"`
Name string `json:"name"`
Direction string `json:"direction"`
Flag string `json:"flag,omitempty"`
Active bool `json:"active"`
}
LocaleInfoJSON represents locale info in JSON output
type LocalesJSON ¶
type LocalesJSON struct {
Current string `json:"current"`
Default string `json:"default"`
HideDefaultLocale bool `json:"hideDefaultLocale"`
Locales []LocaleInfoJSON `json:"locales"`
}
LocalesJSON is the structure for locales.json metadata file
type MCPGenerator ¶ added in v1.5.0
type MCPGenerator struct {
// contains filtered or unexported fields
}
MCPGenerator generates static HTML from parsed MCP server manifests
func NewMCPGenerator ¶ added in v1.5.0
NewMCPGenerator creates a new MCP generator. Returns nil if MCP is disabled or no specs exist.
func (*MCPGenerator) Generate ¶ added in v1.5.0
func (g *MCPGenerator) Generate() error
Generate generates HTML files for all MCP specs
type MaintenanceJSON ¶
type MaintenanceJSON struct {
ID string `json:"id"`
Title string `json:"title"`
Description string `json:"description,omitempty"`
AffectedComponents []string `json:"affected_components"`
ScheduledStart time.Time `json:"scheduled_start"`
ScheduledEnd time.Time `json:"scheduled_end"`
Status string `json:"status"`
}
MaintenanceJSON represents maintenance in the JSON API
type OpenAPIGenerator ¶
type OpenAPIGenerator struct {
// contains filtered or unexported fields
}
OpenAPIGenerator generates static HTML and JSON for OpenAPI specifications
func NewOpenAPIGenerator ¶
func NewOpenAPIGenerator(site *core.Site, themeFS embed.FS, version string) (*OpenAPIGenerator, error)
NewOpenAPIGenerator creates a new OpenAPI generator
func (*OpenAPIGenerator) Generate ¶
func (g *OpenAPIGenerator) Generate() error
Generate generates HTML and JSON files for all OpenAPI specifications
type PortfolioGenerator ¶
type PortfolioGenerator struct {
// contains filtered or unexported fields
}
PortfolioGenerator generates portfolio page HTML
func NewPortfolioGenerator ¶
func NewPortfolioGenerator(site *core.Site, themeFS embed.FS, version string) (*PortfolioGenerator, error)
NewPortfolioGenerator creates a new portfolio generator
func (*PortfolioGenerator) Generate ¶
func (g *PortfolioGenerator) Generate() error
Generate generates the portfolio pages
type PostingList ¶
type PostingList []int
PostingList is a compact array: [pageID, score, pageID, score, ...] Section info removed to save space - we use page-level results
type ReleaseJSON ¶
type ReleaseJSON struct {
Version string `json:"version"`
Date string `json:"date"`
Title string `json:"title,omitempty"`
Prerelease bool `json:"prerelease,omitempty"`
URL string `json:"url"`
CompareURL string `json:"compare_url,omitempty"`
Categories []CategoryJSON `json:"categories,omitempty"`
}
ReleaseJSON represents a release in the JSON API
type RoadmapGenerator ¶
type RoadmapGenerator struct {
// contains filtered or unexported fields
}
RoadmapGenerator generates the roadmap page HTML
func NewRoadmapGenerator ¶
func NewRoadmapGenerator(site *core.Site, themeFS embed.FS, version string) (*RoadmapGenerator, error)
NewRoadmapGenerator creates a new roadmap generator
func (*RoadmapGenerator) Generate ¶
func (g *RoadmapGenerator) Generate() error
Generate generates the roadmap page
type RoadmapVersionGroup ¶
type RoadmapVersionGroup struct {
Version string
Status string // aggregate: "in_progress", "planned", or "shipped"
Label string // human-readable status label
Items []core.RoadmapItem
}
RoadmapVersionGroup holds items grouped by version for template rendering
type SearchGenerator ¶
type SearchGenerator struct {
// contains filtered or unexported fields
}
SearchGenerator generates search index JSON
func NewSearchGenerator ¶
func NewSearchGenerator(site *core.Site) *SearchGenerator
NewSearchGenerator creates a new search generator
func (*SearchGenerator) Generate ¶
func (g *SearchGenerator) Generate() error
Generate creates inverted index
type SearchIndex ¶
type SearchIndex struct {
Pages []SearchPage `json:"pages"`
Sections []SearchSection `json:"sections"`
Index map[string]PostingList `json:"idx"`
}
SearchIndex is the inverted index structure
type SearchManifest ¶
type SearchManifest struct {
Pages []SearchPage `json:"pages"`
Sections []SearchSection `json:"sections"`
Shards []string `json:"shards"` // List of shard prefixes (e.g., ["ab", "cd", ...])
}
SearchManifest is the lightweight manifest for sharded search
type SearchPage ¶
type SearchPage struct {
Title string `json:"t"`
Desc string `json:"d,omitempty"`
URL string `json:"u"`
}
SearchPage represents a page in the search index
type SearchSection ¶
type SearchSection struct {
PageID int `json:"p"`
Title string `json:"t"`
Anchor string `json:"a,omitempty"`
}
SearchSection represents a section within a page
type SearchShard ¶
type SearchShard struct {
Prefix string `json:"prefix"`
Index map[string]PostingList `json:"idx"`
}
SearchShard contains posting lists for terms with a specific prefix
type SitemapGenerator ¶
type SitemapGenerator struct {
// contains filtered or unexported fields
}
SitemapGenerator generates sitemap.xml
func NewSitemapGenerator ¶
func NewSitemapGenerator(site *core.Site) *SitemapGenerator
NewSitemapGenerator creates a new sitemap generator
func (*SitemapGenerator) Generate ¶
func (g *SitemapGenerator) Generate() error
Generate creates sitemap.xml
type StatusGenerator ¶
type StatusGenerator struct {
// contains filtered or unexported fields
}
StatusGenerator generates status page HTML and related files
func NewStatusGenerator ¶
func NewStatusGenerator(site *core.Site, themeFS embed.FS, version string) (*StatusGenerator, error)
NewStatusGenerator creates a new status generator
func (*StatusGenerator) Generate ¶
func (g *StatusGenerator) Generate() error
Generate generates all status page files
type StatusJSON ¶
type StatusJSON struct {
OverallStatus string `json:"overall_status"`
Components []ComponentJSON `json:"components"`
ActiveIncidents []IncidentJSON `json:"active_incidents"`
ScheduledMaintenance []MaintenanceJSON `json:"scheduled_maintenance"`
LastUpdated time.Time `json:"last_updated"`
}
StatusJSON represents the JSON API response for status
type ThemeGenerator ¶
type ThemeGenerator struct {
// contains filtered or unexported fields
}
ThemeGenerator generates custom theme CSS
func NewThemeGenerator ¶
func NewThemeGenerator(site *core.Site) *ThemeGenerator
NewThemeGenerator creates a new theme generator
func (*ThemeGenerator) Generate ¶
func (g *ThemeGenerator) Generate() error
Generate creates custom-theme.css if custom theme settings are configured
func (*ThemeGenerator) HasCustomTheme ¶
func (g *ThemeGenerator) HasCustomTheme() bool
HasCustomTheme returns true if custom theme is configured
type URL ¶
type URL struct {
Loc string `xml:"loc"`
LastMod string `xml:"lastmod,omitempty"`
ChangeFreq string `xml:"changefreq,omitempty"`
Priority float32 `xml:"priority,omitempty"`
}
URL represents a single URL in the sitemap
type URLSet ¶
type URLSet struct {
XMLName xml.Name `xml:"urlset"`
XMLNS string `xml:"xmlns,attr"`
URLs []URL `xml:"url"`
}
URLSet represents the root element of a sitemap
type UptimeConfigJSON ¶
type UptimeConfigJSON struct {
Mode string `json:"mode,omitempty"`
Endpoint string `json:"endpoint,omitempty"`
SLATarget float64 `json:"sla_target,omitempty"`
PeriodDays int `json:"period_days,omitempty"`
}
UptimeConfigJSON represents uptime configuration in the JSON API
type VersionGenerator ¶
type VersionGenerator struct {
// contains filtered or unexported fields
}
VersionGenerator generates versioned documentation output
func NewVersionGenerator ¶
func NewVersionGenerator(site *core.Site, themeFS embed.FS, version string) (*VersionGenerator, error)
NewVersionGenerator creates a new version generator
func (*VersionGenerator) Generate ¶
func (g *VersionGenerator) Generate() error
Generate generates versioned documentation
type VersionInfoJSON ¶
type VersionInfoJSON struct {
Name string `json:"name"`
Label string `json:"label"`
Path string `json:"path"`
EOL string `json:"eol,omitempty"`
Active bool `json:"active"`
}
VersionInfoJSON represents version info in JSON output
type VersionsJSON ¶
type VersionsJSON struct {
Current string `json:"current"`
Default string `json:"default"`
Versions []VersionInfoJSON `json:"versions"`
}
VersionsJSON is the structure for versions.json metadata file
type WaitlistGenerator ¶
type WaitlistGenerator struct {
// contains filtered or unexported fields
}
WaitlistGenerator generates the waitlist landing page HTML
func NewWaitlistGenerator ¶
func NewWaitlistGenerator(site *core.Site, themeFS embed.FS, version string) (*WaitlistGenerator, error)
NewWaitlistGenerator creates a new waitlist generator
func (*WaitlistGenerator) Generate ¶
func (g *WaitlistGenerator) Generate() error
Generate generates the waitlist page as index.html