config

package
v0.3.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 9, 2026 License: MIT Imports: 9 Imported by: 0

Documentation

Index

Constants

View Source
const (
	DefaultOutput = ".dox"
)

Variables

This section is empty.

Functions

func DefaultExcludes

func DefaultExcludes() []string

DefaultExcludes returns common patterns to exclude from syncing. These are populated in the config template by `dox init`.

func DefaultPatterns

func DefaultPatterns() []string

func FindConfigFile

func FindConfigFile() (string, error)

Types

type Config

type Config struct {
	Output      string            `koanf:"output"       validate:"omitempty,dirpath"`
	GitHubToken string            `koanf:"github_token"`
	MaxParallel int               `koanf:"max_parallel" validate:"omitempty,min=1,max=100"`
	Excludes    []string          `koanf:"excludes"`
	Display     Display           `koanf:"display"`
	Sources     map[string]Source `koanf:"sources"      validate:"required,dive"`
	ConfigDir   string            `koanf:"-"`
}

func Load

func Load(configPath string) (*Config, error)

func (*Config) ApplyDefaults

func (c *Config) ApplyDefaults()

func (*Config) OutputDir

func (c *Config) OutputDir(sourceName string, sourceCfg Source) string

func (*Config) Validate

func (c *Config) Validate() error

type Display added in v0.2.0

type Display struct {
	DefaultLimit      int      `koanf:"default_limit"`
	DescriptionLength int      `koanf:"description_length"`
	LineNumbers       bool     `koanf:"line_numbers"`
	Format            string   `koanf:"format"             validate:"omitempty,oneof=table json csv"`
	ListFields        []string `koanf:"list_fields"`
}

type Source

type Source struct {
	Type     string   `koanf:"type"     validate:"omitempty,oneof=github url git gitlab codeberg"`
	Repo     string   `koanf:"repo"     validate:"omitempty,github_repo"`
	Host     string   `koanf:"host"`
	Path     string   `koanf:"path"`
	Ref      string   `koanf:"ref"`
	Patterns []string `koanf:"patterns"`
	Exclude  []string `koanf:"exclude"`
	URL      string   `koanf:"url"      validate:"omitempty,url"`
	Filename string   `koanf:"filename"`
	Out      string   `koanf:"out"`
}

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL