anitnilay20 / anitnilay20/thoth

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

Offen
#109 0 Kommentare 0 Reaktionen 0 zugewiesene Personen Auf GitHub ansehen
architecture epic feature future plugin:database size:large
Vorherrschende Sprache
Rust
Sterne
70
Forks
5
Ø Merge
10 Std. 33 Min.
Gemergte PRs (30 T.)
2

Beschreibung

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.

Beitragsleitfaden

Für dieses Repository ist kein Beitragsleitfaden indexiert

Bewertung

Dieses Issue wurde noch nicht bewertet.

Neue Issues direkt in Ihr Postfach

Eine kurze Übersicht über anfängerfreundliche GitHub-Issues.