SQLite WASI Web Server inside a Meta-Tracing Wasm JIT on TinyCore Linux
A self-contained WebAssembly stack: sqlite_httpd.wasm (SQLite 3.49.1 + C HTTP/1.1 reactor over
wasi_snapshot_preview1) runs inside meta_tracer.wasm (a meta-tracing Wasm-in-Wasm trace JIT)
both right here in your browser and inside a bootable TinyCore 16.x kernel image (6.12.11-tinycore64)
for QEMU (localhost SLIRP or bridged LAN), AWS EC2 Nitro/ENA, and Google Cloud GCE.
/api/v1/*, MCP JSON-RPC 2.0 at /mcp,
and onboarding at /agents (/.well-known/agent-interface.json). Ordinary callers share
30 operations per 60 seconds; API keys expire within ≤ 7 days (604,800s).
1. Burbank Cadastral & Corporate Control Datalog Ontology (Server API & CoW Wasm Unikernel)
All 43,438 ground facts & 12 deductive queries from
burbank-ledger.pages.dev.
Initial page load evaluates queries server-side via /api/v1/cadastre/* (Cloudflare D1), while the browser & TinyCore unikernel run the exact same dataset inside 4 KiB Copy-on-Write forked Wasm instances.
Loading preset...
Published Governance, Prop 13, Executive & Financial Audits
2. Live Browser Demo: Meta-Tracing JIT + Copy-on-Write Forked WASI SQLite Server
Send HTTP Requests to Guest Wasm
Waiting for VM...
Rendered Guest HTML Output (GET /)
WASI Preview 1 Virtual Filesystem (/data)
No syscalls yet.
Recent Compiled Native Wasm Trace Modules
| Trace | Kind | Anchor | IR Ops (raw → opt) | Emitted Wasm | Side Exits |
|---|
3. Download TinyCore Kernel, Disk Images, Boot Launchers, Native Host & Wasm Binaries
Verify every artifact against SHA256SUMS or GET /api/v1/assets.
Large disk/kernel images stream from Cloudflare R2 behind the global caller limiter.
| Filename | Description | SHA-256 Digest |
|---|---|---|
vmlinuz64 | TinyCore Linux 16.x kernel (6.12.11-tinycore64) | see SHA256SUMS |
tinycore-sqlite-wasm.gz | Initramfs with mtwasm-host + meta_tracer.wasm + sqlite_httpd.wasm + QEMU/AWS/GCP drivers | see SHA256SUMS |
tinycore-sqlite-wasm.iso | Hybrid BIOS MBR + El Torito ISO (QEMU -drive format=raw / AWS EC2 raw) | see SHA256SUMS |
tinycore-sqlite-wasm-gce.tar.gz | Google Cloud GCE custom image archive (disk.raw, 1 GiB aligned) | see SHA256SUMS |
mtwasm-host-linux-x86_64 | Linux x86_64 native Wasmtime host CLI (serve, run, bench) | see SHA256SUMS |
boot-qemu-user.sh | QEMU localhost SLIRP launcher script | see manifest |
boot-qemu-bridge.sh | QEMU bridged LAN (br0) launcher script | see manifest |
boot-qemu.ps1 | Windows PowerShell QEMU launcher | see manifest |
4. Boot Instructions: QEMU (Localhost / Bridged), Native Host, Google Cloud, & AWS EC2
mkdir -p tc-wasm && cd tc-wasm
curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/vmlinuz64
curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/tinycore-sqlite-wasm.gz
curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/SHA256SUMS
curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/boot-qemu-user.sh
sha256sum -c --ignore-missing SHA256SUMS
# Boot Linux kernel + WASI SQLite HTTP server (forwards 127.0.0.1:18080 -> guest:8080)
chmod +x boot-qemu-user.sh && PORT=18080 ./boot-qemu-user.sh .
# Or boot directly from the hybrid BIOS ISO disk image:
curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/tinycore-sqlite-wasm.iso
qemu-system-x86_64 -m 512M -smp 2 -nographic \
-drive file=tinycore-sqlite-wasm.iso,format=raw,if=virtio \
-netdev user,id=net0,hostfwd=tcp:127.0.0.1:18080-:8080 \
-device virtio-net-pci,netdev=net0
# Verify HTTP + SQLite + JIT stats once TINYCORE-WASM-SQLITE-READY prints on serial:
curl http://127.0.0.1:18080/healthz
curl -X POST http://127.0.0.1:18080/api/notes -H 'content-type: application/json' \
-d '{"title":"QEMU Boot","body":"Persisted in WASI /data/site.db","source":"qemu"}'
curl http://127.0.0.1:18080/_jit/stats
# 1. Configure bridge br0 on Linux host and allow it in qemu-bridge-helper sudo ip link add name br0 type bridge sudo ip addr add 192.168.77.1/24 dev br0 sudo ip link set br0 up sudo mkdir -p /etc/qemu echo "allow br0" | sudo tee /etc/qemu/bridge.conf sudo chmod 0640 /etc/qemu/bridge.conf # 2. Download & verify launch script + image assets, then boot attached to br0 curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/boot-qemu-bridge.sh chmod +x boot-qemu-bridge.sh BRIDGE=br0 ./boot-qemu-bridge.sh . # Or boot directly from ISO onto br0: BOOT_MODE=iso BRIDGE=br0 ./boot-qemu-bridge.sh . # Windows PowerShell option: # .\boot-qemu.ps1 -OutDir . -Mode bridge -Bridge br0
# Run the exact same Wasm-in-Wasm JIT + WASI SQLite HTTP stack natively on Linux x86_64: curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/mtwasm-host-linux-x86_64 curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/meta_tracer.wasm curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/sqlite_httpd.wasm curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/SHA256SUMS sha256sum -c --ignore-missing SHA256SUMS chmod +x mtwasm-host-linux-x86_64 mkdir -p sqlite-data MTW_TRACER_WASM=./meta_tracer.wasm ./mtwasm-host-linux-x86_64 serve \ --listen 127.0.0.1:8080 --dir ./sqlite-data --db /data/site.db ./sqlite_httpd.wasm
curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/tinycore-sqlite-wasm-gce.tar.gz curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/SHA256SUMS sha256sum -c --ignore-missing SHA256SUMS gcloud storage cp tinycore-sqlite-wasm-gce.tar.gz gs://YOUR_GCE_BUCKET/ gcloud compute images create tinycore-wasm-sqlite-v1 \ --source-uri=gs://YOUR_GCE_BUCKET/tinycore-sqlite-wasm-gce.tar.gz gcloud compute firewall-rules create allow-wasm-sqlite-8080 --allow=tcp:8080 --target-tags=wasm-sqlite gcloud compute instances create tinycore-wasm-sqlite \ --zone=us-central1-a --machine-type=e2-micro \ --image=tinycore-wasm-sqlite-v1 --tags=wasm-sqlite --metadata=serial-port-enable=TRUE
curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/tinycore-sqlite-wasm.iso
curl -fLO https://meta-tracing-tinycore.pages.dev/downloads/SHA256SUMS
sha256sum -c --ignore-missing SHA256SUMS
aws s3 cp tinycore-sqlite-wasm.iso s3://YOUR_IMPORT_BUCKET/tinycore-sqlite-wasm.raw
cat > containers.json <<'EOF'
{
"Description": "TinyCore Linux WASI SQLite Meta-Tracing JIT",
"Format": "raw",
"UserBucket": { "S3Bucket": "YOUR_IMPORT_BUCKET", "S3Key": "tinycore-sqlite-wasm.raw" }
}
EOF
aws ec2 import-image --disk-containers file://containers.json
# Once completed with ami-..., launch t3.micro/c6i (uses bundled amazon/ena + nvme drivers) with port 8080 open.