|
| 1 | +--- |
| 2 | +title: Atomic Server |
| 3 | +homepage: https://atomicserver.eu/ |
| 4 | +opensource: "Yes" |
| 5 | +repo: atomicdata-dev/atomic-server |
| 6 | +typeofcms: "API Driven" |
| 7 | +supportedgenerators: |
| 8 | + - All |
| 9 | +description: Extremely fast open source headless CMS with built-in live synchronization, file management, and full-text search |
| 10 | +--- |
| 11 | +## Atomic-Server |
| 12 | + |
| 13 | +Atomic-Server is a graph database server for storing and sharing typed linked data. |
| 14 | +It's free, open source (MIT license), and has a ton of features: |
| 15 | + |
| 16 | +- ⚛️ **Dynamic schema validation** / type checking using [Atomic Schema](https://docs.atomicdata.dev/schema/intro.html). Combines safety of structured data with the |
| 17 | +- 🚀 **Fast** (1ms responses on my laptop) |
| 18 | +- 🪶 **Lightweight** (15MB binary, no runtime dependencies) |
| 19 | +- 💻 **Runs everywhere** (linux, windows, mac, arm) |
| 20 | +- 🌐 **Embedded server** with support for HTTP / HTTPS / HTTP2.0 and Built-in LetsEncrypt handshake. |
| 21 | +- 🎛️ **Browser GUI included** powered by [atomic-data-browser](https://github.com/atomicdata-dev/atomic-data-browser). Features dynamic forms, tables, authentication, theming and more. |
| 22 | +- 💾 **Event-sourced versioning** / history powered by [Atomic Commits](https://docs.atomicdata.dev/commits/intro.html) |
| 23 | +- 🔄 **Synchronization using websockets**: communicates state changes with a client. Send a `wss` request to `/ws` to open a webscocket. |
| 24 | +- 🧰 **Many serialization options**: to JSON, [JSON-AD](https://docs.atomicdata.dev/core/json-ad.html), and various Linked Data / RDF formats (RDF/XML, N-Triples / Turtle / JSON-LD). |
| 25 | +- 🔎 **Full-text search** with fuzzy search and various operators, often <3ms responses. |
| 26 | +- 📖 **Pagination, sorting and filtering** using [Atomic Collections](https://docs.atomicdata.dev/schema/collections.html) |
| 27 | +- 🔐 **Authorization** (read / write permissions) and Hierarchical structures powered by [Atomic Hierarchy](https://docs.atomicdata.dev/hierarchy.html) |
| 28 | +- 📲 **Invite and sharing system** with [Atomic Invites](https://docs.atomicdata.dev/invitations.html) |
| 29 | +- 📂 **File management**: Upload, download and preview attachments. |
| 30 | +- 🖥️ **Desktop app**: Easy desktop installation, with status bar icon, powered by [tauri](https://github.com/tauri-apps/tauri/). |
| 31 | + |
| 32 | +## Running Atomic-Server locally (optional) |
| 33 | + |
| 34 | +In this guide, we'll can simply use `atomicdata.dev` in our browser without installing anything. |
| 35 | +So you can skip this step and go to _Creating your first Atomic Data_. |
| 36 | +But if you want to, you can run Atomic-Server on your machine in a couple of ways: |
| 37 | + |
| 38 | +- **Using a desktop installer**: download a desktop release from the [`releases`](https://github.com/atomicdata-dev/atomic-data-rust/releases) page and install it using your desktop GUI. |
| 39 | +- **Using a binary**: download a binary release from the [`releases`](https://github.com/atomicdata-dev/atomic-data-rust/releases) page and open it using a terminal. |
| 40 | +- **Using Docker** is probably the quickest: `docker run -p 80:80 -p 443:443 -v atomic-storage:/atomic-storage joepmeneer/atomic-server`. |
| 41 | +- **Using Cargo**: `cargo install atomic-server` and then run `atomic-server` to start. |
| 42 | + |
| 43 | +_[Atomic-Server's README](https://github.com/atomicdata-dev/atomic-data-rust/blob/master/server/README.md) contains more (and up-to-date) information about how to use it!_ |
0 commit comments