metadata

package
v0.1.4 Latest Latest
Warning

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

Go to latest
Published: May 8, 2026 License: MIT Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ManifestDir      = ".fiberx"
	ManifestFilename = "manifest.json"
	SchemaVersionV1  = "v1"

	StatusClean            = "clean"
	StatusLocalModified    = "local_modified"
	StatusGeneratorDrift   = "generator_drift"
	StatusLocalAndGenDrift = "local_and_generator_drift"
)

Variables

This section is empty.

Functions

func JoinCapabilities

func JoinCapabilities(items []string) string

func ManifestPath

func ManifestPath(projectDir string) string

func WriteManifest

func WriteManifest(targetDir string, projectManifest ProjectManifest) error

Types

type AssetSet

type AssetSet struct {
	Base            string   `json:"base"`
	PresetPacks     []string `json:"preset_packs"`
	CapabilityPacks []string `json:"capability_packs"`
	RuntimeOverlays []string `json:"runtime_overlays"`
	ReplaceRules    []string `json:"replace_rules"`
	InjectionRules  []string `json:"injection_rules"`
}

type DiffGeneratorInfo

type DiffGeneratorInfo struct {
	Current   GeneratorInfo `json:"current"`
	Generated GeneratorInfo `json:"generated"`
}

type DiffReport

type DiffReport struct {
	Status              string            `json:"status"`
	Generator           DiffGeneratorInfo `json:"generator"`
	Recipe              Recipe            `json:"recipe"`
	MissingFiles        []string          `json:"missing_files"`
	ChangedFiles        []string          `json:"changed_files"`
	NewManagedFiles     []string          `json:"new_managed_files,omitempty"`
	GeneratorDriftFiles []string          `json:"generator_drift_files"`
}

func BuildDiff

func BuildDiff(projectDir string, catalogRoot string) (DiffReport, error)

type Fingerprints

type Fingerprints struct {
	TemplateSet    string `json:"template_set"`
	RenderedOutput string `json:"rendered_output"`
}

type GeneratorInfo

type GeneratorInfo struct {
	Version string `json:"version"`
	Commit  string `json:"commit"`
}

type ManagedFile

type ManagedFile struct {
	Path   string `json:"path"`
	SHA256 string `json:"sha256"`
}

type ProjectManifest

type ProjectManifest struct {
	SchemaVersion string        `json:"schema_version"`
	GeneratedAt   string        `json:"generated_at"`
	Generator     GeneratorInfo `json:"generator"`
	Recipe        Recipe        `json:"recipe"`
	Assets        AssetSet      `json:"assets"`
	Fingerprints  Fingerprints  `json:"fingerprints"`
	ManagedFiles  []ManagedFile `json:"managed_files"`
}

func BuildManifest

func BuildManifest(plan planner.Plan, rendered renderer.Result, targetDir string, generatedAt time.Time) (ProjectManifest, error)

func LoadManifest

func LoadManifest(projectDir string) (ProjectManifest, error)

type Recipe

type Recipe struct {
	ProjectName  string   `json:"project_name"`
	ModulePath   string   `json:"module_path"`
	Preset       string   `json:"preset"`
	Capabilities []string `json:"capabilities"`
	FiberVersion string   `json:"fiber_version"`
	CLIStyle     string   `json:"cli_style"`
	Logger       string   `json:"logger,omitempty"`
	DB           string   `json:"db,omitempty"`
	DataAccess   string   `json:"data_access,omitempty"`
	JSONLib      string   `json:"json_lib,omitempty"`
}

Jump to

Keyboard shortcuts

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