MCPSERV.CLUB
Atomic Server

Atomic Server

Self-Hosted

A lightweight, graph‑database CMS for Atomic Data

Active(100)
1.4kstars
1views
Updated 25 days ago

Overview

Discover what makes Atomic Server powerful

Atomic Server is a self‑hosted, low‑overhead knowledge‑management platform that blends the speed of an in‑memory graph database with the flexibility of a modern CMS. Built entirely in Rust, it exposes a fully RESTful API that returns **JSON‑AD** payloads—an atom‑centric JSON format designed for easy interoperability with RDF and other Linked Data standards. The server runs on any platform that supports Rust (Linux, macOS, Windows, ARM), requiring only a single static binary of ~8 MB.

Runtime

Storage

Search

Serialization

Overview

Atomic Server is a self‑hosted, low‑overhead knowledge‑management platform that blends the speed of an in‑memory graph database with the flexibility of a modern CMS. Built entirely in Rust, it exposes a fully RESTful API that returns JSON‑AD payloads—an atom‑centric JSON format designed for easy interoperability with RDF and other Linked Data standards. The server runs on any platform that supports Rust (Linux, macOS, Windows, ARM), requiring only a single static binary of ~8 MB.

Technical Stack & Architecture

  • Runtime: Actix‑web, the high‑performance async web framework that drives request handling in under 1 ms on typical hardware.
  • Storage: Sled, a pure‑Rust embedded key‑value store that delivers ACID guarantees with minimal I/O overhead.
  • Search: Tantivy, a Lucene‑style full‑text engine that powers fuzzy queries and multi‑operator filters in < 3 ms.
  • Serialization: Custom atomic-lib Rust crate for converting between internal graph nodes and external formats (JSON‑AD, JSON-LD, Turtle, RDF/XML).
  • Real‑time: WebSocket support via Actix allows clients to subscribe to state changes, enabling collaborative editing of tables, documents, and chat.

The architecture is deliberately flat: a single binary exposes all CRUD endpoints, WebSocket hubs, and optional AI inference routes. There is no external database or message broker; everything resides in Sled, making deployment a matter of dropping the binary and configuring a small set of environment variables.

Core Capabilities & APIs

  • Ontology Editor: A built‑in UI (React front‑end) that lets developers define classes, properties, and schemas at runtime. These definitions are persisted in Sled and exported as Atomic Schema, allowing cross‑instance sharing.
  • CRUD & Query: REST endpoints for creating, reading, updating, and deleting atomic objects. Query language supports pagination, sorting, filtering, and full‑text search via query parameters.
  • Event‑Sourced History: Every mutation is recorded as an Atomic Commit, enabling optimistic concurrency control and audit trails.
  • Real‑time Sync: GET /ws/{resource} opens a WebSocket that streams delta events. Client libraries (@tomic/react, @tomic/svelte) provide a one‑liner hook to subscribe to any resource.
  • AI Integration: Via MCP (Model Context Protocol) the server can forward prompts to any LLM provider (OpenRouter, Ollama). The API returns structured JSON‑AD responses that can be merged back into the graph.
  • Serialization: Endpoints support Accept headers to return data in JSON‑AD, plain JSON, or Linked Data formats.

Deployment & Infrastructure

Atomic Server is container‑friendly: a Dockerfile is provided that builds the static binary and serves it on port 8080. Because all state lives in a single Sled database file, scaling horizontally requires a shared storage layer or federation via the API. For small to medium teams, a single instance suffices; for larger deployments, consider using PostgreSQL as an external event store or sharding the Sled files behind a reverse proxy.

  • Hardware: 1 GB RAM and an SSD are more than enough for thousands of atomic objects.
  • Networking: HTTPS termination is recommended; the server itself does not enforce TLS.
  • Backup: Sled files can be snapshotted; the event log can be replayed to rebuild state.

Integration & Extensibility

  • Plugin System: While no explicit plugin API exists yet, the open‑source codebase allows developers to fork and extend core modules (e.g., custom authentication backends, additional search indexes).
  • Webhooks: The API can be wrapped with a webhook layer that triggers on commit events, enabling CI/CD pipelines or external analytics.
  • SDKs: @tomic/lib provides a typed JavaScript client that abstracts HTTP and WebSocket communication, making it trivial to embed Atomic Server into existing web or mobile apps.
  • Customization: The front‑end is a standard React (or Svelte) application that can be forked; styling, routing, and feature flags are all configurable.

Developer Experience

  • Configuration: A handful of environment variables (ATOMIC_PORT, ATOMIC_DB_PATH, ATOMIC_LOG_LEVEL) control the server; no complex config files.
  • Documentation: The official docs (docs.atomicdata.dev) cover the schema language, API reference, and integration guides.
  • Community: An active Discord channel hosts quick support and feature discussions; the GitHub issue tracker is used for bug reports and pull requests.
  • Licensing: MIT license ensures no commercial restrictions, making it safe to ship in closed‑source products.

Use Cases

  1. Internal Knowledge Base – Teams can model concepts (e.g., Product, Feature) and share them across services via the REST API.
  2. Collaborative Document Editing – The built‑in rich‑text editor with real‑time sync is ideal for lightweight Notion/Google Docs clones.
  3. Chat & File Management – Use the group chat API for real‑time support channels; attach files that are stored and served directly by Atomic Server.
  4. AI‑Powered Workflows

Open SourceReady to get started?

Join the community and start self-hosting Atomic Server today