Packages
reckon_db
2.3.2
5.11.0
5.10.4
5.10.3
5.10.1
5.10.0
5.9.1
5.9.0
5.8.3
5.8.2
5.8.1
5.8.0
5.7.0
5.6.1
5.6.0
5.5.5
5.5.4
5.5.3
5.5.2
5.5.1
5.5.0
5.4.0
5.2.2
5.2.1
5.2.0
5.1.0
5.0.0
4.0.0
3.1.2
3.1.1
3.0.0
2.3.7
2.3.6
2.3.5
2.3.4
2.3.3
2.3.2
2.3.1
2.3.0
2.2.2
2.2.0
2.1.4
2.1.3
2.1.2
2.1.1
2.1.0
2.0.0
1.7.7
1.7.6
1.7.5
1.7.4
1.7.3
1.7.2
1.7.1
1.7.0
1.6.3
1.6.2
1.6.1
1.6.0
1.5.1
1.5.0
1.4.5
1.4.4
1.4.3
1.4.2
1.4.1
1.4.0
1.3.3
1.3.2
1.3.1
1.3.0
1.2.7
1.2.6
1.2.5
1.2.4
1.2.3
1.2.2
1.2.1
1.2.0
1.1.1
1.1.0
1.0.3
1.0.2
1.0.1
1.0.0
BEAM-native Event Store built on Khepri/Ra with Raft consensus. Event sourcing, persistent subscriptions, snapshots, and automatic cluster formation via UDP multicast discovery. Ships embedded Rust NIFs for 3-15x acceleration of crypto, hashing, compression, aggregation, filter matching, and grap...
Current section
Files
Jump to
Current section
Files
assets/store_inspector.svg
<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 800 500">
<defs>
<linearGradient id="bgGrad" x1="0%" y1="0%" x2="100%" y2="100%">
<stop offset="0%" style="stop-color:#1a1a2e;stop-opacity:1" />
<stop offset="100%" style="stop-color:#16213e;stop-opacity:1" />
</linearGradient>
<linearGradient id="inspectorGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" style="stop-color:#e94560;stop-opacity:1" />
<stop offset="100%" style="stop-color:#c73e54;stop-opacity:1" />
</linearGradient>
<linearGradient id="facadeGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" style="stop-color:#0f3460;stop-opacity:1" />
<stop offset="100%" style="stop-color:#0a2540;stop-opacity:1" />
</linearGradient>
<linearGradient id="khepriGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" style="stop-color:#533483;stop-opacity:1" />
<stop offset="100%" style="stop-color:#3d2666;stop-opacity:1" />
</linearGradient>
<linearGradient id="clientGrad" x1="0%" y1="0%" x2="0%" y2="100%">
<stop offset="0%" style="stop-color:#2d6a4f;stop-opacity:1" />
<stop offset="100%" style="stop-color:#1b4332;stop-opacity:1" />
</linearGradient>
<filter id="shadow" x="-10%" y="-10%" width="120%" height="120%">
<feDropShadow dx="2" dy="3" stdDeviation="3" flood-opacity="0.3"/>
</filter>
</defs>
<!-- Background -->
<rect width="800" height="500" fill="url(#bgGrad)" rx="8"/>
<!-- Title -->
<text x="400" y="35" text-anchor="middle" fill="#e0e0e0" font-family="monospace" font-size="16" font-weight="bold">Store Inspector Architecture</text>
<!-- Client Layer -->
<g filter="url(#shadow)">
<rect x="50" y="60" width="700" height="50" rx="8" fill="url(#clientGrad)" opacity="0.9"/>
<text x="400" y="82" text-anchor="middle" fill="#a0d0b0" font-family="monospace" font-size="11" font-weight="bold">Clients</text>
<text x="150" y="98" text-anchor="middle" fill="#d0e8d0" font-family="monospace" font-size="10">Observer UI</text>
<text x="400" y="98" text-anchor="middle" fill="#d0e8d0" font-family="monospace" font-size="10">esdb_gater_api</text>
<text x="650" y="98" text-anchor="middle" fill="#d0e8d0" font-family="monospace" font-size="10">CLI / REPL</text>
</g>
<!-- Arrow down -->
<line x1="400" y1="110" x2="400" y2="135" stroke="#666" stroke-width="2" marker-end="url(#arrowhead)"/>
<!-- Gateway Worker -->
<g filter="url(#shadow)">
<rect x="200" y="135" width="400" height="40" rx="8" fill="url(#facadeGrad)" opacity="0.9"/>
<text x="400" y="160" text-anchor="middle" fill="#8ab4f8" font-family="monospace" font-size="12" font-weight="bold">reckon_db_gateway_worker</text>
</g>
<!-- Arrow down -->
<line x1="400" y1="175" x2="400" y2="200" stroke="#666" stroke-width="2"/>
<!-- Store Inspector (center) -->
<g filter="url(#shadow)">
<rect x="200" y="200" width="400" height="60" rx="10" fill="url(#inspectorGrad)" opacity="0.95"/>
<text x="400" y="225" text-anchor="middle" fill="#fff" font-family="monospace" font-size="13" font-weight="bold">reckon_db_store_inspector</text>
<text x="400" y="248" text-anchor="middle" fill="#ffb3b3" font-family="monospace" font-size="10">store_stats | list_all_snapshots | list_subscriptions</text>
</g>
<!-- Arrows to facades -->
<line x1="280" y1="260" x2="130" y2="310" stroke="#e94560" stroke-width="1.5" stroke-dasharray="4"/>
<line x1="400" y1="260" x2="400" y2="310" stroke="#e94560" stroke-width="1.5" stroke-dasharray="4"/>
<line x1="520" y1="260" x2="670" y2="310" stroke="#e94560" stroke-width="1.5" stroke-dasharray="4"/>
<!-- Facade modules -->
<g filter="url(#shadow)">
<rect x="30" y="310" width="200" height="45" rx="6" fill="url(#facadeGrad)" opacity="0.85"/>
<text x="130" y="330" text-anchor="middle" fill="#8ab4f8" font-family="monospace" font-size="10" font-weight="bold">reckon_db_streams</text>
<text x="130" y="346" text-anchor="middle" fill="#6090c0" font-family="monospace" font-size="9">list_streams | get_version</text>
</g>
<g filter="url(#shadow)">
<rect x="260" y="310" width="280" height="45" rx="6" fill="url(#facadeGrad)" opacity="0.85"/>
<text x="400" y="330" text-anchor="middle" fill="#8ab4f8" font-family="monospace" font-size="10" font-weight="bold">reckon_db_snapshots_store</text>
<text x="400" y="346" text-anchor="middle" fill="#6090c0" font-family="monospace" font-size="9">list | get_latest</text>
</g>
<g filter="url(#shadow)">
<rect x="570" y="310" width="200" height="45" rx="6" fill="url(#facadeGrad)" opacity="0.85"/>
<text x="670" y="330" text-anchor="middle" fill="#8ab4f8" font-family="monospace" font-size="10" font-weight="bold">reckon_db_subscriptions</text>
<text x="670" y="346" text-anchor="middle" fill="#6090c0" font-family="monospace" font-size="9">list | find_by_name</text>
</g>
<!-- Arrows to Khepri -->
<line x1="130" y1="355" x2="250" y2="400" stroke="#666" stroke-width="1" stroke-dasharray="3"/>
<line x1="400" y1="355" x2="400" y2="400" stroke="#666" stroke-width="1" stroke-dasharray="3"/>
<line x1="670" y1="355" x2="550" y2="400" stroke="#666" stroke-width="1" stroke-dasharray="3"/>
<!-- Khepri -->
<g filter="url(#shadow)">
<rect x="200" y="400" width="400" height="55" rx="10" fill="url(#khepriGrad)" opacity="0.9"/>
<text x="400" y="425" text-anchor="middle" fill="#d0a0f0" font-family="monospace" font-size="12" font-weight="bold">Khepri / Ra (Raft)</text>
<text x="400" y="445" text-anchor="middle" fill="#a080c0" font-family="monospace" font-size="9">[streams] [snapshots] [subscriptions] [metadata]</text>
</g>
<!-- Legend -->
<text x="50" y="485" fill="#666" font-family="monospace" font-size="9">Read-only introspection — no data modification</text>
</svg>