RustyGPT Documentation
Welcome! This mdBook describes the RustyGPT workspace in depth: how the server and clients are structured, how the PostgreSQL-backed features behave, and how to operate the platform locally or in shared environments.
Start with the guides to get a local environment running, then dive into the reference and architecture chapters for precise APIs and design notes.
Quick navigation
- Quickstart – configure and launch the server, web client, and CLI.
- Local development – watcher workflows, debugging tools, and environment variables.
- REST API – endpoint catalogue for conversations, streaming, authentication, and admin features.
- Service topology – how the Axum server, Yew SPA, PostgreSQL, and SSE stream hub fit together.
What RustyGPT ships today
RustyGPT focuses on a cohesive Rust stack:
rustygpt-serverexposes REST + SSE endpoints with cookie-based auth (handlers/auth.rs), rate limiting (middleware/rate_limit.rs), and OpenAPI documentation (openapi.rs).rustygpt-webis a Yew SPA that consumes the server API viasrc/api.rsand renders threaded conversations, presence, and typing indicators.rustygpt-clishares the same models as the server, providing commands for login, conversation inspection, SSE following, and OpenAPI generation (src/commands).rustygpt-sharedhouses configuration loading, llama.cpp bindings, and the data transfer objects used across all crates.
Each documentation section links back to the relevant modules so you can cross-reference behaviour with the implementation.