ui

package
v1.13.1 Latest Latest
Warning

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

Go to latest
Published: Apr 14, 2026 License: MIT Imports: 41 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Start

func Start(currentVersion string) error

Start starts the HTTP server on listenAddr.

Types

type ConflictingDomain added in v1.8.0

type ConflictingDomain struct {
	Domain  string `json:"domain"`
	OwnedBy string `json:"owned_by"`
}

ConflictingDomain describes a domain declared in .lerd.yaml that wasn't registered for the site because another site on this machine already owns it. Surfaced to the UI so the domain modal can render a warning icon next to the entry with the owning site name.

type DNSStatus

type DNSStatus struct {
	OK  bool   `json:"ok"`
	TLD string `json:"tld"`
}

type PHPStatus

type PHPStatus struct {
	Version       string `json:"version"`
	Running       bool   `json:"running"`
	XdebugEnabled bool   `json:"xdebug_enabled"`
}

type PresetResponse added in v1.9.0

type PresetResponse struct {
	Name           string                 `json:"name"`
	Description    string                 `json:"description"`
	Image          string                 `json:"image,omitempty"`
	Dashboard      string                 `json:"dashboard,omitempty"`
	DependsOn      []string               `json:"depends_on,omitempty"`
	MissingDeps    []string               `json:"missing_deps,omitempty"`
	Installed      bool                   `json:"installed"`
	Versions       []config.PresetVersion `json:"versions,omitempty"`
	DefaultVersion string                 `json:"default_version,omitempty"`
	InstalledTags  []string               `json:"installed_tags,omitempty"`
}

PresetResponse describes a bundled service preset for the web UI.

type ServiceActionResponse added in v0.1.23

type ServiceActionResponse struct {
	ServiceResponse
	OK    bool   `json:"ok"`
	Error string `json:"error,omitempty"`
	Logs  string `json:"logs,omitempty"`
}

ServiceActionResponse wraps the service state plus any error details.

type ServiceCheck

type ServiceCheck struct {
	Running bool `json:"running"`
}

type ServiceResponse

type ServiceResponse struct {
	Name               string            `json:"name"`
	Status             string            `json:"status"`
	EnvVars            map[string]string `json:"env_vars"`
	Dashboard          string            `json:"dashboard,omitempty"`
	ConnectionURL      string            `json:"connection_url,omitempty"`
	Custom             bool              `json:"custom,omitempty"`
	SiteCount          int               `json:"site_count"`
	SiteDomains        []string          `json:"site_domains,omitempty"`
	Pinned             bool              `json:"pinned"`
	Paused             bool              `json:"paused,omitempty"`
	DependsOn          []string          `json:"depends_on,omitempty"`
	QueueSite          string            `json:"queue_site,omitempty"`
	StripeListenerSite string            `json:"stripe_listener_site,omitempty"`
	ScheduleWorkerSite string            `json:"schedule_worker_site,omitempty"`
	ReverbSite         string            `json:"reverb_site,omitempty"`
	HorizonSite        string            `json:"horizon_site,omitempty"`
	WorkerSite         string            `json:"worker_site,omitempty"`
	WorkerName         string            `json:"worker_name,omitempty"`
}

ServiceResponse is the response for GET /api/services.

type SettingsResponse added in v0.3.0

type SettingsResponse struct {
	AutostartOnLogin bool `json:"autostart_on_login"`
}

SettingsResponse is the response for GET /api/settings.

type SiteActionResponse added in v0.1.29

type SiteActionResponse struct {
	OK    bool   `json:"ok"`
	Error string `json:"error,omitempty"`
}

SiteActionResponse is returned by POST /api/sites/{domain}/secure|unsecure.

type SiteResponse

type SiteResponse struct {
	Name               string              `json:"name"`
	Domain             string              `json:"domain"`
	Domains            []string            `json:"domains"`
	ConflictingDomains []ConflictingDomain `json:"conflicting_domains,omitempty"`
	Path               string              `json:"path"`
	PHPVersion         string              `json:"php_version"`
	NodeVersion        string              `json:"node_version"`
	TLS                bool                `json:"tls"`
	Framework          string              `json:"framework"`
	FPMRunning         bool                `json:"fpm_running"`
	IsLaravel          bool                `json:"is_laravel"`
	FrameworkLabel     string              `json:"framework_label"`
	QueueRunning       bool                `json:"queue_running"`
	QueueFailing       bool                `json:"queue_failing,omitempty"`
	StripeRunning      bool                `json:"stripe_running"`
	StripeSecretSet    bool                `json:"stripe_secret_set"`
	ScheduleRunning    bool                `json:"schedule_running"`
	ScheduleFailing    bool                `json:"schedule_failing,omitempty"`
	ReverbRunning      bool                `json:"reverb_running"`
	ReverbFailing      bool                `json:"reverb_failing,omitempty"`
	HasReverb          bool                `json:"has_reverb"`
	HasHorizon         bool                `json:"has_horizon"`
	HorizonRunning     bool                `json:"horizon_running"`
	HorizonFailing     bool                `json:"horizon_failing,omitempty"`
	HasQueueWorker     bool                `json:"has_queue_worker"`
	HasScheduleWorker  bool                `json:"has_schedule_worker"`
	FrameworkWorkers   []WorkerStatus      `json:"framework_workers,omitempty"`
	HasAppLogs         bool                `json:"has_app_logs"`
	LatestLogTime      string              `json:"latest_log_time,omitempty"`
	HasFavicon         bool                `json:"has_favicon"`
	Paused             bool                `json:"paused"`
	Branch             string              `json:"branch"`
	Worktrees          []WorktreeResponse  `json:"worktrees"`
	// Services lists the service names this site uses, sourced from the
	// project's .lerd.yaml. Used by the dashboard to render service badges
	// on the site detail panel.
	Services    []string `json:"services,omitempty"`
	LANPort     int      `json:"lan_port,omitempty"`
	LANShareURL string   `json:"lan_share_url,omitempty"`
}

SiteResponse is the response for GET /api/sites.

type StatusResponse

type StatusResponse struct {
	DNS            DNSStatus    `json:"dns"`
	Nginx          ServiceCheck `json:"nginx"`
	PHPFPMs        []PHPStatus  `json:"php_fpms"`
	PHPDefault     string       `json:"php_default"`
	NodeDefault    string       `json:"node_default"`
	WatcherRunning bool         `json:"watcher_running"`
}

StatusResponse is the response for GET /api/status.

type VersionResponse

type VersionResponse struct {
	Current   string `json:"current"`
	Latest    string `json:"latest"`
	HasUpdate bool   `json:"has_update"`
	Changelog string `json:"changelog,omitempty"`
}

VersionResponse is the response for GET /api/version.

type WorkerStatus added in v1.0.0

type WorkerStatus struct {
	Name    string `json:"name"`
	Label   string `json:"label"`
	Running bool   `json:"running"`
	Failing bool   `json:"failing,omitempty"`
}

WorkerStatus represents a single framework worker and its running state.

type WorktreeResponse added in v0.6.0

type WorktreeResponse struct {
	Branch string `json:"branch"`
	Domain string `json:"domain"`
	Path   string `json:"path"`
}

WorktreeResponse is embedded in SiteResponse for each git worktree.

Jump to

Keyboard shortcuts

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