WaveNav LabsEarly mobile web workshop

Experimental build

WAP/WML browser · desktop edition

The early mobile web,
back on
the air.

Waves is a practical desktop browser for exploring, testing, and improving the WAP/WML stack—without vague emulation or throwaway demos.

Real runtime
Navigation, forms, timers, and scripts come from the engine—not a mock UI.
One workspace
Run local examples, follow live pages, and inspect state in one desktop app.

Capture01

WaveNav field noteForms, focus & session trace

Local example

Waves rendering a WML form example with editable fields and an event timeline
WML interaction studyOne shell for local decks, live links, interaction, and inspection.

01 / Why it exists

Old protocol.
Serious tooling.

Most WAP tooling is either inaccurate, unfinished, or painful to work with.

Waves is the practical middle ground: close enough to the original platform to be worth trusting, but modern enough to support debugging, iteration, and real development work.

  • Load local examples and live decks in one tool.
  • Inspect runtime state and transport behavior while you browse.

02 / The system

Layered on purpose.

Each part of the stack does one job, with the browser sitting at the top—not swallowing the layers below.

  1. 01

    Gateway

    Kannel + environment

    Compatibility testing at the edge of the stack.

  2. 02

    Transport

    Lowband

    WBXML, WSP/WTP behavior, and the fetch rules beneath the browser.

  3. 03

    Engine

    WaveNav

    A Rust/WASM runtime for parsing WML, navigation, and card rendering.

  4. 04

    Browser

    Waves

    The desktop host that turns the layers into a usable browser.

03 / In practice

A browser,
not just a harness.

  1. 01

    Browse

    Open local examples and follow linked WML pages in the same session.

  2. 02

    Interact

    Edit fields, move focus, and submit forms through the real runtime.

  3. 03

    Inspect

    Check state, snapshots, and timelines to understand every transition.

  4. 04

    Recover

    Keep loading and failure states visible instead of hitting a dead end.

04 / Shipping now

Core flows, turned into day-to-day tools.

Open a deck, interact, inspect, and continue in one stable loop—even when the network slows down or fails.

  1. 01Open deck
  2. 02Interact
  3. 03Inspect
  4. 04Continue
  1. 01

    Session

    Faster navigation loops

    Back, history, and follow-link behavior stay stable while you iterate.

    Follow a link and continue without restarting the browsing loop.

  2. 02

    Diagnostics

    Actionable runtime detail

    Transport state, runtime snapshots, and timelines stay visible in the browser.

    Understand why a transition happened without attaching extra tooling.

  3. 03

    Sources

    Local and live parity

    Move between local examples and live WML pages with the same browser shell.

    Keep one input model and inspection workflow across both sources.

  4. 04

    Recovery

    Explicit degraded states

    Loading and network failures keep the current browser context visible.

    Inspect what happened and continue instead of landing on a frozen shell.

Your next transmission

Try the browser.
Then open the stack.

Start in the simulator, then inspect the browser internals and source from the same workflow.