API Reference

openme provides generated API documentation for every official library. Each reference is built automatically from source by the documentation workflow and published alongside this site.

Language References

Library Language Reference
openme CLI & server Go pkg.go.dev →
OpenMeKit Swift DocC Reference →
OpenMeKit Kotlin / Android KDoc Reference →
OpenMeKit C# / .NET DocFX Reference →
openmelib C99 Doxygen Reference →

Go

The Go packages are documented with godoc conventions and published at pkg.go.dev/github.com/merlos/openme/cli.

Package Description
pkg/protocol Wire format constants, packet sizes, error types
internal/crypto Key generation, ECDH, encryption, signing
internal/config Config structs, YAML loading/saving, port mode logic
internal/server UDP listener, packet verification, replay cache
internal/client Packet builder, knock sender, health check
internal/firewall iptables and nftables backends, rule expiry manager
internal/qr QR code generation for client provisioning

Swift

The Swift package uses DocC with triple-slash /// doc comments.

OpenMeKit Swift API Reference

Kotlin / Android

The Android library uses Dokka with KDoc /** */ block comments.

OpenMeKit Android KDoc Reference

C# / .NET

The .NET library uses DocFX with XML <summary> doc comments.

OpenMeKit .NET API Reference

C (openmelib)

The C library uses Doxygen /** */ block comments on all public symbols in include/openmelib.h.

openmelib Doxygen Reference

Documentation Standards

All exported symbols in every library follow the documentation conventions defined in the copilot instructions — intent, parameters, return values, example, and a link to the relevant protocol specification page.