bldr_saucer

package module
v0.4.4 Latest Latest
Warning

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

Go to latest
Published: Mar 21, 2026 License: MIT Imports: 8 Imported by: 0

README

bldr-saucer

Native webview bridge for Bldr using Saucer.

Building from Source

Prerequisites
  • CMake 3.16+
  • Ninja (recommended)
  • C++23 compatible compiler
  • OpenSSL 3.x
  • Platform-specific webview dependencies (see Saucer docs)
macOS
brew install cmake ninja openssl@3
cmake -G Ninja -B build
cmake --build build
Linux
sudo apt-get install cmake ninja-build libssl-dev libgtk-3-dev libwebkit2gtk-4.1-dev
cmake -G Ninja -B build
cmake --build build
Windows
cmake -G Ninja -B build
cmake --build build

NPM Package

This project is distributed as an npm package with prebuilt binaries:

npm install @aptre/bldr-saucer
# or
bun add @aptre/bldr-saucer

Repository

https://github.com/aperturerobotics/bldr-saucer

License

MIT

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	ExternalLinks_name = map[int32]string{
		0: "EXTERNAL_LINKS_OS_BROWSER",
		1: "EXTERNAL_LINKS_DENY",
	}
	ExternalLinks_value = map[string]int32{
		"EXTERNAL_LINKS_OS_BROWSER": 0,
		"EXTERNAL_LINKS_DENY":       1,
	}
)

Enum value maps for ExternalLinks.

View Source
var Sources embed.FS

Sources contains the C++ source files and CMakeLists.txt needed to build the bldr-saucer binary from source.

Functions

This section is empty.

Types

type ExternalLinks int32

ExternalLinks configures how external links are handled.

const (
	// EXTERNAL_LINKS_OS_BROWSER opens external links in the OS default browser.
	ExternalLinks_EXTERNAL_LINKS_OS_BROWSER ExternalLinks = 0
	// EXTERNAL_LINKS_DENY denies all external link navigation.
	ExternalLinks_EXTERNAL_LINKS_DENY ExternalLinks = 1
)

func (ExternalLinks) Enum

func (x ExternalLinks) Enum() *ExternalLinks

func (ExternalLinks) MarshalJSON

func (x ExternalLinks) MarshalJSON() ([]byte, error)

MarshalJSON marshals the ExternalLinks to JSON.

func (ExternalLinks) MarshalProtoJSON

func (x ExternalLinks) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the ExternalLinks to JSON.

func (ExternalLinks) MarshalProtoText

func (x ExternalLinks) MarshalProtoText() string

func (ExternalLinks) MarshalText

func (x ExternalLinks) MarshalText() ([]byte, error)

MarshalText marshals the ExternalLinks to text.

func (ExternalLinks) String

func (x ExternalLinks) String() string

func (*ExternalLinks) UnmarshalJSON

func (x *ExternalLinks) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the ExternalLinks from JSON.

func (*ExternalLinks) UnmarshalProtoJSON

func (x *ExternalLinks) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the ExternalLinks from JSON.

func (*ExternalLinks) UnmarshalText

func (x *ExternalLinks) UnmarshalText(b []byte) error

UnmarshalText unmarshals the ExternalLinks from text.

type SaucerInit

type SaucerInit struct {

	// DevTools enables the developer tools.
	DevTools bool `protobuf:"varint,1,opt,name=dev_tools,json=devTools,proto3" json:"devTools,omitempty"`
	// ExternalLinks configures how external links are handled.
	ExternalLinks ExternalLinks `protobuf:"varint,2,opt,name=external_links,json=externalLinks,proto3" json:"externalLinks,omitempty"`
	// AppName is the application display name.
	AppName string `protobuf:"bytes,3,opt,name=app_name,json=appName,proto3" json:"appName,omitempty"`
	// WindowTitle overrides the window title (defaults to app_name).
	WindowTitle string `protobuf:"bytes,4,opt,name=window_title,json=windowTitle,proto3" json:"windowTitle,omitempty"`
	// WindowWidth is the default window width in pixels.
	WindowWidth uint32 `protobuf:"varint,5,opt,name=window_width,json=windowWidth,proto3" json:"windowWidth,omitempty"`
	// WindowHeight is the default window height in pixels.
	WindowHeight uint32 `protobuf:"varint,6,opt,name=window_height,json=windowHeight,proto3" json:"windowHeight,omitempty"`
	// contains filtered or unexported fields
}

SaucerInit is passed from Go to the Saucer C++ process on startup. Serialized as protobuf binary, base64-encoded, and passed via BLDR_SAUCER_INIT env var.

func (*SaucerInit) CloneMessageVT

func (m *SaucerInit) CloneMessageVT() protobuf_go_lite.CloneMessage

func (*SaucerInit) CloneVT

func (m *SaucerInit) CloneVT() *SaucerInit

func (*SaucerInit) EqualMessageVT

func (this *SaucerInit) EqualMessageVT(thatMsg any) bool

func (*SaucerInit) EqualVT

func (this *SaucerInit) EqualVT(that *SaucerInit) bool

func (*SaucerInit) GetAppName added in v0.4.4

func (x *SaucerInit) GetAppName() string

func (*SaucerInit) GetDevTools

func (x *SaucerInit) GetDevTools() bool
func (x *SaucerInit) GetExternalLinks() ExternalLinks

func (*SaucerInit) GetWindowHeight added in v0.4.4

func (x *SaucerInit) GetWindowHeight() uint32

func (*SaucerInit) GetWindowTitle added in v0.4.4

func (x *SaucerInit) GetWindowTitle() string

func (*SaucerInit) GetWindowWidth added in v0.4.4

func (x *SaucerInit) GetWindowWidth() uint32

func (*SaucerInit) MarshalJSON

func (x *SaucerInit) MarshalJSON() ([]byte, error)

MarshalJSON marshals the SaucerInit to JSON.

func (*SaucerInit) MarshalProtoJSON

func (x *SaucerInit) MarshalProtoJSON(s *json.MarshalState)

MarshalProtoJSON marshals the SaucerInit message to JSON.

func (*SaucerInit) MarshalProtoText

func (x *SaucerInit) MarshalProtoText() string

func (*SaucerInit) MarshalToSizedBufferVT

func (m *SaucerInit) MarshalToSizedBufferVT(dAtA []byte) (int, error)

func (*SaucerInit) MarshalToVT

func (m *SaucerInit) MarshalToVT(dAtA []byte) (int, error)

func (*SaucerInit) MarshalVT

func (m *SaucerInit) MarshalVT() (dAtA []byte, err error)

func (*SaucerInit) ProtoMessage

func (*SaucerInit) ProtoMessage()

func (*SaucerInit) Reset

func (x *SaucerInit) Reset()

func (*SaucerInit) SizeVT

func (m *SaucerInit) SizeVT() (n int)

func (*SaucerInit) String

func (x *SaucerInit) String() string

func (*SaucerInit) UnmarshalJSON

func (x *SaucerInit) UnmarshalJSON(b []byte) error

UnmarshalJSON unmarshals the SaucerInit from JSON.

func (*SaucerInit) UnmarshalProtoJSON

func (x *SaucerInit) UnmarshalProtoJSON(s *json.UnmarshalState)

UnmarshalProtoJSON unmarshals the SaucerInit message from JSON.

func (*SaucerInit) UnmarshalVT

func (m *SaucerInit) UnmarshalVT(dAtA []byte) error

Jump to

Keyboard shortcuts

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