ewan's projects — docs
← all docs

wolfram

July 21, 2026 2 min read
atprotocsdkwiicross-platform

wolfram is a C SDK for the AT Protocol — a client-side, wire-level implementation of the protocol, not a port of the upstream atproto service backends.

Version: 0.1.1

Scope

Wolfram is a faithful C port of the AT Protocol's protocol/SDK layer — the client and wire-format packages of the upstream TypeScript repository (@atproto/api, xrpc, identity, repo, crypto, syntax, oauth, lex, lexicon, did, ws-client). It does not port the upstream server-side service backends (pds, bsky AppView, ozone, bsync).

The optional WOLFRAM_BUILD_SERVER component is a generic XRPC server framework (routing, auth, SSE, WebSocket, relay, blob store) you can build a service on top of.

Protocol Parity

The bundled Lexicon snapshot matches the 394 files in the upstream atproto repository. Generated C23 and OAuth-authenticated clients cover all 312 query/procedure endpoints, and dedicated streaming clients cover all three subscription endpoints.

Quick Start

cmake -S . -B build && cmake --build build && ctest --test-dir build
./build/create_post https://bsky.social you@example.com yourpassword "Hello from wolfram!"

Documentation

Per-module usage guides (runnable C snippets):

Cross-compilation Support

Wii

cmake -S . -B build-wii \
  -DCMAKE_TOOLCHAIN_FILE=.devdeps/wii.cmake \
  -DWOLFRAM_BUILD_WII=ON \
  -DCMAKE_BUILD_TYPE=Debug
cmake --build build-wii

Wii U

cmake -S . -B build-wiiu \
  -DCMAKE_TOOLCHAIN_FILE=.devdeps/wiiu.cmake \
  -DWOLFRAM_BUILD_WIIU=ON \
  -DCMAKE_BUILD_TYPE=Debug
cmake --build build-wiiu

3DS

cmake -S . -B build-3ds \
  -DCMAKE_TOOLCHAIN_FILE=.devdeps/3ds.cmake \
  -DWOLFRAM_BUILD_3DS=ON \
  -DCMAKE_BUILD_TYPE=Debug
cmake --build build-3ds

Windows

cmake -S . -B build-windows \
  -DCMAKE_TOOLCHAIN_FILE=.devdeps/windows.cmake \
  -DWOLFRAM_BUILD_WINDOWS=ON \
  -DCMAKE_BUILD_TYPE=Debug
cmake --build build-windows

Linux (ARM64)

cmake -S . -B build-aarch64 \
  -DCMAKE_TOOLCHAIN_FILE=.devdeps/linux-aarch64.cmake \
  -DCMAKE_BUILD_TYPE=Release
cmake --build build-aarch64

Licence

MIT


← all docs