typeboard aims to send and receive API signals in Rust, then visualize them on a dashboard.
The repo currently ships a minimal scaffold (Axum API + React UI). Over time it will grow into a practical playground for real-world Rust backend patterns—async I/O, HTTP stacks, CPU-bound parallelism, observability, and more.
- Own signal ingress/egress in Rust (HTTP, events, and related I/O) with Axum / Tokio
- Monitor and visualize those signals on a frontend dashboard
- Move beyond toy demos: adopt production-minded patterns for persistence, caching, observability, auth, and deploy—step by step
cd api
cargo runcd backend
cargo runcd frontend
npm install
npm run devOpen http://localhost:5173 and use the button to fetch a message from the backend.
Priorities may shift, but the direction is to layer in mature crates from the Rust async and web ecosystem.
| Area | Crate / project | Role |
|---|---|---|
| Async runtime | Tokio | Tasks, timers, networking, concurrency |
| Futures primitives | futures-rs | Combinators, streams, and Future utilities beyond Tokio’s surface |
| Async traits | async-trait | async fn in traits for service boundaries and handlers |
| Low-level HTTP | hyper | HTTP/1–2 client/server foundation under Axum / reqwest |
| HTTP routing | Axum + Tower | API surface, middleware, backpressure |
| HTTP client | reqwest | Outbound calls to internal/external services |
| Serialization | serde | Request/response JSON and config |
| Area | Crate / project | Role |
|---|---|---|
| Data-parallel CPU work | rayon | Parallel iterators / thread-pool work off the async runtime |
| Full-stack reactive UI (explore) | Topcoat | Server-rendered reactive web apps in Rust (complementary to the React dashboard) |
| Area | Candidates | Role |
|---|---|---|
| Database | sqlx (+ PostgreSQL) | Durable storage |
| Cache / locks | Redis | Sessions, rate limits, short-lived queues |
| Realtime | WebSocket / SSE | Live dashboard updates |
| Observability | tracing, metrics | Logs, traces, metrics |
| Config | config / dotenv | Environment-specific settings |
| Auth | JWT (and related) | Protect APIs and the dashboard |
| Deploy | Docker Compose | Local and staging bring-up |
Study notes live under docs/: