Skip to content

Auth Helper

Demonstrates OAuth login flow and credential management using the nxuskit SDK.

Wire up OAuth flows and API key credentials across every provider your app supports, with a single unified auth interface.

Scenarios: status · set · remove · dashboard

Community — runs on the OSS / Community SDK edition.

Difficulty: Starter 🟢 · Auth · OAuth

  • Summary: OAuth login flow and credential management helper (from conformance/examples_manifest.json: auth-helper).
  • Scenario: List providers, check auth status, set credentials, initiate OAuth flows.
  • tech_tags: Auth, OAuth.
  • Listing all supported providers and their authentication methods
  • Checking authentication status for individual providers
  • Setting and removing API key credentials
  • Initiating an OAuth login flow (for OAuth-capable providers)
  • Viewing a complete authentication status dashboard
  • SDK: Use an installed SDK tree (NXUSKIT_SDK_DIR, NXUSKIT_LIB_PATH as needed); test-examples.sh resolves Go/Rust/Python deps from that tree only — see README.md, scripts/setup-sdk.sh, and scripts/test-examples.sh.
  • Languages in this example: Go, Rust (CLI and egui GUI).

Community (free)

LanguagePathDescription
Gogo/CLI-based auth management
Rust (CLI)cli/Terminal-based OAuth + credential management
Rust (core)core/Shared auth library used by CLI and egui
Rust (egui)egui/GUI-based OAuth flow with egui

Attach an installed SDK (NXUSKIT_SDK_DIR). See the repository README.md and scripts/test-examples.sh.

Terminal window
# Go
cd go && make build
# Rust CLI
cd cli && cargo build
# Rust GUI (requires egui dependencies)
cd egui && cargo build
Terminal window
# Go
cd go && ./bin/auth-helper
# Rust CLI
cd cli && cargo run
# Rust GUI
cd egui && cargo run
  • No current providers support OAuth yet (infrastructure is ready for future providers)
  • API key authentication works with all providers that require credentials
  • The OAuth flow launches a browser and starts a localhost callback server