Wayseer.dev

wayseer.dev · for developers

Build on Wayseer products with modules of your own.

A Wayseer product reads the systems you already run through modules. This site is where developers come for the SDK those modules are written against, the guide to writing one, and the Go import paths served from wayseer.dev.

the module contract, in shortGo
// A module is a data source: it reads something and tells the app what is there.
type Module interface {
	Info() Info                                      // the kind, a version, one line
	Configure(ctx context.Context, cfg Config) error // decode and check the options
	Run(ctx context.Context, sink Sink) error        // a snapshot, then deltas, until ctx ends
	Health() Health                                  // cheap, from any goroutine
}

What is here

Three things, one per product surface.

The site belongs to the company, not to one product. Each product that can be extended gets a section of its own; Wayseer Desktop is the first.

  • Desktop modules

    pre-release

    How a module for Wayseer Desktop works: the contract, running out of process, signing under a developer certificate, the manifest, and the marketplace. An overview, with the full guide to follow.

    Building modules →
  • Import paths

    published

    Go import paths under wayseer.dev: wayseer.dev/sdk for the SDK and wayseer.dev/modules/… for the free first-party modules: self, localhost, file and prometheus. Permanent: never removed or repointed.

    The path scheme →
  • The SDK and the guide

    coming

    The SDK is the one package a module imports, with a conformance suite beside it. It is public now, an MIT-licensed Go module at wayseer.dev/sdk; the guide will be published here with it.

    What is coming →

The shape of it

A small contract, enforced at the edges.

A Wayseer product knows only entities, edges, time series and events. A module translates one source, such as a metrics server or an inventory, into those four things, and nothing else. The product's core never learns what Prometheus or Kubernetes is; the module does.

That keeps the contract small enough to write a module against in an afternoon, and lets the product hold the line on what matters to the people who run it: a module says in a signed manifest what it may do, the product enforces it, and a module that turns out to be harmful can be withdrawn. The Desktop section has the particulars.

Where things stand

What is built, what is being built, what is not.

Wayseer Desktop is pre-release. What its guide describes runs in pre-release builds; what developers outside Wayseer need to build against it is still being put in place.

  • Built

    The SDK and the free first-party modules, public at their import paths; the module contract, the conformance suite, running a module as its own signed program, developer keys and signing, the manifest, and the revocation list.

  • Being put in place

    A public template for external modules, this site's copy of the guide, and the way to ask for a developer certificate.

  • Not yet

    The marketplace of public-source modules that Wayseer builds and signs, and marketplace builds for anything but Linux. Nothing on this site should be read as a date.

Writing a module? Say so.

Wayseer is one person. If you want to build on a Wayseer product, write and say what you want to read: it decides what goes on this site next.

Contact, on wayseer.net