anitnilay20 / anitnilay20/thoth

Epic: additional data-source plugins (ClickHouse, Redis, Kafka, MongoDB, …)

未關閉
#109 0 則留言 0 個 reaction 已指派 0 人 在 GitHub 檢視
architecture epic feature future plugin:database size:large
主要語言
Rust
星號
70
分支
5
平均合併
10 小時 33 分鐘
30 天內合併 PR
2

描述

Expand Thoth's data-source plugins beyond Postgres/MySQL (**Seshat**, #93 → #99) to cover more engines. Each source is its own sub-issue below; this epic tracks them and the shared prerequisites.

## Foundation to build on (from Seshat #93 / #99)
- Host `tcp-client` import (+ host-side TLS) and network policy / SSRF guard
- Owner-thread query execution (blocking reads never freeze the UI)
- `secure-storage` for credentials (OS keychain)
- The `UiNode` DSL: connection dialog, dock tabs, results grid (type-aware cells, row cap + Load more), `json-tree`, structure view
- `DbAdapter` trait for SQL engines

## Sub-issues

**SQL family** (reuse `DbAdapter` + results/schema UI)
- [ ] ClickHouse — #100
- [ ] Snowflake — #107
- [ ] BigQuery — #108
- [ ] DuckDB — #105
- [ ] SQLite — #106

**Non-SQL** (new adapter shapes / browsing paradigms)
- [ ] MongoDB — #101
- [ ] Redis — #102
- [ ] Kafka — #103
- [x] Elasticsearch — #104

## Shared prerequisites (do first)
- [ ] **Host HTTP client import** — Snowflake, BigQuery, Elasticsearch, and ClickHouse's HTTP interface all need HTTPS request/response. Either expose a reusable `http-client` host import (the `url-source` plugin already does HTTP host-side) or standardise doing HTTP over `tcp-client` + TLS. Blocks #100 (HTTP mode), #104, #107, #108.
- [ ] **Embedded-engine execution path** — DuckDB (#105) and SQLite (#106) are libraries, not servers; decide between compiling the engine to `wasm32-wasip1` vs the subprocess plugin path (`docs/DATABASE_PLUGINS.md` Option C).

## Notes
- Kafka (#103) is the largest/most divergent (broker protocol, consumer groups) — consider deprioritising.
- Non-SQL sources need new adapter traits and UI (key browser, document browser, topic viewer) rather than the tabular grid.

貢獻指南

這個儲存庫沒有索引到貢獻指南

評估

這個 Issue 還沒有評估資料。

把新 issue 寄到你的電子郵件信箱

精選適合新手參與的 GitHub issue 摘要。