Skip to content

Commit c6c324a

Browse files
abbccddaclaude
andauthored
docs(diagram): add DynamoDB and InfluxDB 3 to architecture sources (#150)
* docs(diagram): add DynamoDB and InfluxDB 3 to architecture sources Add the two recently landed source providers (#141, #142) to both the interactive HTML diagram and the static SVG embedded in the README. Compress source-cell heights so 12 rows fit the fixed canvases. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * docs(diagram): restore source row spacing, enlarge canvas vertically Revert the compressed source-cell heights (back to 42px/46px rows) and grow the stage/viewBox instead (HTML 640→720, SVG 600→700), shifting the agent and server boxes down to stay vertically centered. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> * docs(readme): sort Supported Data Sources by CRUD then popularity Full-CRUD sources first (PostgreSQL, MySQL, SQLite, MongoDB, Redis, DynamoDB, SeekDB), then hybrid Lance, then read-only sources by popularity. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com> --------- Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
1 parent e7a1095 commit c6c324a

3 files changed

Lines changed: 90 additions & 42 deletions

File tree

README.md

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -313,20 +313,20 @@ For end-to-end walkthroughs — RAG, recommendations, an agent-native wiki, a si
313313

314314
| Type | CRUD | Description | Docs |
315315
|------|------|-------------|------|
316-
| CSV | Read | Local or remote CSV files | [docs/server.md](docs/server.md) |
317-
| Parquet | Read | Local or remote Parquet files | [docs/server.md](docs/server.md) |
318-
| JSON / NDJSON | Read | Local or remote JSON files | [docs/cli.md](docs/cli.md) |
319316
| PostgreSQL | Full | Table or catalog registration, pgvector KNN | [docs/postgres/](docs/postgres/) |
320317
| MySQL | Full | Table or catalog registration | [docs/mysql/](docs/mysql/) |
321318
| SQLite | Full | Table or catalog registration, sqlite-vec KNN, FTS | [docs/sqlite/](docs/sqlite/) |
322319
| MongoDB | Full | Collections with point lookups | [docs/mongo/](docs/mongo/) |
323320
| Redis | Full | Hashes mapped to SQL rows | [docs/redis/](docs/redis/) |
324-
| SeekDB | Full | MySQL-wire CRUD, native FULLTEXT FTS, HNSW VECTOR KNN | [docs/seekdb/](docs/seekdb/) |
325-
| InfluxDB 3 | Read | Time-series measurements over Arrow Flight SQL | [docs/influxdb/](docs/influxdb/) |
326321
| DynamoDB | Full | Items mapped to SQL rows, scan + filter pushdown | [docs/dynamodb/](docs/dynamodb/) |
327-
| Apache Iceberg | Read | Schema evolution, partition pruning | [docs/iceberg/](docs/iceberg/) |
322+
| SeekDB | Full | MySQL-wire CRUD, native FULLTEXT FTS, HNSW VECTOR KNN | [docs/seekdb/](docs/seekdb/) |
328323
| Lance | Read (job-write) | KNN vector search, BM25 FTS; job destination | [docs/lance/](docs/lance/) |
324+
| CSV | Read | Local or remote CSV files | [docs/server.md](docs/server.md) |
325+
| Parquet | Read | Local or remote Parquet files | [docs/server.md](docs/server.md) |
326+
| JSON / NDJSON | Read | Local or remote JSON files | [docs/cli.md](docs/cli.md) |
329327
| S3 / GCS / Azure | Read | CSV, Parquet, Lance from object stores | [docs/S3_USAGE.md](docs/S3_USAGE.md) |
328+
| Apache Iceberg | Read | Schema evolution, partition pruning | [docs/iceberg/](docs/iceberg/) |
329+
| InfluxDB 3 | Read | Time-series measurements over Arrow Flight SQL | [docs/influxdb/](docs/influxdb/) |
330330
| Documents | Read | PDF/Office/ODF/image → per-page markdown, tables, images (local directories; `documents` feature) | [docs/documents.md](docs/documents.md) |
331331

332332
---

asset/architecture-open-source.html

Lines changed: 37 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -50,7 +50,7 @@
5050

5151
.stage-wrap { position: relative; width: 100%; }
5252
.stage {
53-
position: relative; width: 1280px; height: 640px;
53+
position: relative; width: 1280px; height: 720px;
5454
background: var(--bg);
5555
border: 1px solid var(--line);
5656
border-radius: 12px;
@@ -260,7 +260,7 @@ <h1>An <em>agent data plane</em> that gives AI agents data autonomy.</h1>
260260
<div class="stage" id="stage">
261261
<div class="stage-tag"><span class="dot"></span>SKARDI</div>
262262

263-
<svg class="diagram" viewBox="0 0 1280 640" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg">
263+
<svg class="diagram" viewBox="0 0 1280 720" preserveAspectRatio="none" xmlns="http://www.w3.org/2000/svg">
264264
<defs>
265265
<marker id="arrow-accent" viewBox="0 0 10 10" refX="9" refY="5" markerWidth="7" markerHeight="7" orient="auto-start-reverse">
266266
<path d="M0,0 L10,5 L0,10 z" fill="#0b8fd1"/>
@@ -271,20 +271,20 @@ <h1>An <em>agent data plane</em> that gives AI agents data autonomy.</h1>
271271
</defs>
272272

273273
<!-- Agent Box → skardi-server: SQL / REST request flow -->
274-
<path d="M 446 317 C 530 317, 590 317, 660 317"
274+
<path d="M 446 353 C 530 353, 590 353, 660 353"
275275
fill="none" stroke="#0b8fd1" stroke-width="1.6" stroke-dasharray="6 6"
276276
class="flow-req" marker-end="url(#arrow-accent)"/>
277277

278278
<!-- skardi-server → Sources: governed data access -->
279-
<path d="M 922 317 C 990 317, 1020 317, 1080 317"
279+
<path d="M 922 353 C 990 353, 1020 353, 1080 353"
280280
fill="none" stroke="#bf6a02" stroke-width="1.6" stroke-dasharray="6 6"
281281
class="flow-data" marker-end="url(#arrow-warn)"/>
282282
</svg>
283283

284284
<!-- ============ AGENT BOX (consolidated) ============ -->
285-
<div class="anno" style="left: 60px; top: 194px; color: var(--accent);">▍ Any AI Agent</div>
285+
<div class="anno" style="left: 60px; top: 230px; color: var(--accent);">▍ Any AI Agent</div>
286286

287-
<div class="agent-box" style="left: 60px; top: 220px; width: 386px;">
287+
<div class="agent-box" style="left: 60px; top: 256px; width: 386px;">
288288
<div class="ab-head">
289289
<div class="robot" title="agent">
290290
<svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="#0b8fd1" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round">
@@ -356,9 +356,9 @@ <h1>An <em>agent data plane</em> that gives AI agents data autonomy.</h1>
356356
</div>
357357

358358
<!-- ============ SKARDI-SERVER (Agent Data Plane) ============ -->
359-
<div class="anno" style="left: 660px; top: 151px; color: var(--accent);">▍ Agent Data Plane</div>
359+
<div class="anno" style="left: 660px; top: 187px; color: var(--accent);">▍ Agent Data Plane</div>
360360

361-
<div class="server" style="left: 660px; top: 177px; width: 262px;">
361+
<div class="server" style="left: 660px; top: 213px; width: 262px;">
362362
<div class="head">
363363
<span style="display:grid; place-items:center; width:18px; height:18px;">
364364
<svg width="16" height="16" viewBox="0 0 24 24" fill="none" stroke="#0b8fd1" stroke-width="1.6" stroke-linejoin="round" stroke-linecap="round">
@@ -405,7 +405,7 @@ <h1>An <em>agent data plane</em> that gives AI agents data autonomy.</h1>
405405
<div class="ds-grid" style="left: 1080px; top: 88px; width: 184px;">
406406
<div class="ds-head">
407407
<span>Sources</span>
408-
<span class="id">10+</span>
408+
<span class="id">12+</span>
409409
</div>
410410
<div class="grid">
411411
<div class="cell">
@@ -472,6 +472,31 @@ <h1>An <em>agent data plane</em> that gives AI agents data autonomy.</h1>
472472
<div class="kind">KV · cache</div>
473473
</div>
474474
</div>
475+
<div class="cell">
476+
<div class="logo" title="DynamoDB">
477+
<svg viewBox="0 0 24 24" fill="none" stroke="#4053D6" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round">
478+
<ellipse cx="12" cy="5" rx="7" ry="2.5" fill="#4053D6" fill-opacity=".12"/>
479+
<path d="M5 5v14c0 1.4 3.1 2.5 7 2.5s7-1.1 7-2.5V5"/>
480+
<path d="M13 9l-3 4.5h3l-2 3.5"/>
481+
</svg>
482+
</div>
483+
<div>
484+
<div class="name">DynamoDB</div>
485+
<div class="kind">key-value</div>
486+
</div>
487+
</div>
488+
<div class="cell">
489+
<div class="logo" title="InfluxDB">
490+
<svg viewBox="0 0 24 24" fill="none" stroke="#22ADF6" stroke-width="1.4" stroke-linecap="round" stroke-linejoin="round">
491+
<path d="M3 4v16h18"/>
492+
<path d="M6 15l4-6 3 4 4-7 2.5 4"/>
493+
</svg>
494+
</div>
495+
<div>
496+
<div class="name">InfluxDB 3</div>
497+
<div class="kind">time series</div>
498+
</div>
499+
</div>
475500
<div class="cell">
476501
<div class="logo" title="LanceDB">
477502
<svg viewBox="0 0 24 24" fill="none" stroke="#0b8fd1" stroke-width="1.4" stroke-linejoin="round">
@@ -540,8 +565,8 @@ <h1>An <em>agent data plane</em> that gives AI agents data autonomy.</h1>
540565
</div>
541566

542567
<!-- Connector annotations -->
543-
<div class="anno" style="left: 488px; top: 293px; color: var(--accent);">SQL / REST</div>
544-
<div class="anno" style="left: 950px; top: 293px; color: var(--warn);">GOVERNED</div>
568+
<div class="anno" style="left: 488px; top: 329px; color: var(--accent);">SQL / REST</div>
569+
<div class="anno" style="left: 950px; top: 329px; color: var(--warn);">GOVERNED</div>
545570

546571
<div class="stage-legend">
547572
<div><span class="swatch req"></span>SQL / REST</div>
@@ -554,7 +579,7 @@ <h1>An <em>agent data plane</em> that gives AI agents data autonomy.</h1>
554579
(function () {
555580
var wrap = document.getElementById('stage-wrap');
556581
var stage = document.getElementById('stage');
557-
var W = 1280, H = 640;
582+
var W = 1280, H = 720;
558583
function fit() {
559584
var avail = wrap.clientWidth;
560585
var scale = Math.min(1, avail / W);

asset/architecture-open-source.svg

Lines changed: 47 additions & 24 deletions
Loading

0 commit comments

Comments
 (0)