Abdohoo.App Developer tools ScyllaDesk

For ScyllaDB and Apache Cassandra

Everything a keyspace will tell you.

Browse and edit schemas, write CQL with schema-aware completion, edit rows through typed forms, watch live cluster metrics, take logical backups, and diagram a keyspace — all from one window. Built with Electron, React and TypeScript.

ScyllaDBand Apache Cassandra
3desktop platforms
14 daysfull trial
0telemetry sent

No newsletter, no sharing — one email when it ships.

ScyllaDeskCQL workbench Coming soon
query.cql prod-eu · dc1 CL QUORUMtrial 14d
SELECT id, status, total FROM shop.orders WHERE tenant = 'aslam' AND placed_at > '2026-09-01' LIMIT 200;
▲ partition key restricted, clustering column out of order — costs a full scan
idstatusplaced_attotal
7f21…a0shipped14 Sep1,180
7f21…b4packing14 Sep2,300
7f22…0cshipped13 Sep1,450
7f22…91pending12 Sep960
7f23…1eshipped11 Sep4,120
connected · prod-eu 5 rows · 18 ms · QUORUM

What it does

A client that knows what a query will cost.

Every item here is in the product today. Server capabilities are probed on connect, so the interface only ever offers what your cluster can actually do.

Connections

Profiles, TLS and bastions

  • Saved profiles with folders, environment tags and colour coding
  • Plain, TLS and mutual-TLS, with an opt-in for unencrypted local clusters
  • SSH bastion tunnelling that forwards CQL, the REST API and metrics together
  • ScyllaDB Cloud and DataStax Astra connection bundles
  • Local-data-centre discovery and token-aware routing
Schema

Every object, and its DDL

  • Virtualised tree over keyspaces, tables, indexes, materialized views, types, functions and aggregates
  • Full table options: compaction, compression, caching, gc_grace, TTL, CDC
  • Visual designers for every object, each with live DDL preview
  • Schema diff between two clusters, with a generated migration script
Workbench

CQL that lints before the server refuses

  • Monaco with a CQL grammar, schema-aware completion and hover
  • Per-tab connection, keyspace, consistency level, page size and server-side tracing
  • Inline linting for ALLOW FILTERING, full scans, partial partition keys and large IN lists
  • Ready-made queries built from a table's real columns, each noting what it costs
  • A refused query explains itself and offers the corrected statement
Data

Typed editing, guarded writes

  • Key-aware filter builder, with operators restricted by column role and type
  • Typed row forms covering collections, UDTs, tuples, blobs, counters and vectors
  • WRITETIME and TTL projection, guarded deletes, statement preview before every write
  • ALLOW FILTERING as a switch that reports what the server actually ran
Cluster

The ring, as it really is

  • Node inventory with exact ring ownership computed from vnode tokens
  • Token-ring visualisation, connected clients, large-partition diagnostics
  • Live Prometheus charts: throughput, p99 latency, shard utilisation, compaction backlog
  • Curated REST admin actions — flush, compact, cleanup, repair, snapshots
  • Roles, grants and revokes narrowed to what each resource accepts
Movement

Backups, CDC and the ERD

  • Logical backups: schema dump plus token-range-parallel gzipped NDJSON with a manifest
  • Restore with keyspace remapping, truncate, dry run and continue-on-error
  • Streaming export to CSV, JSON, NDJSON or CQL; CSV and NDJSON import with column mapping
  • The change log decoded per entry, including which columns were set to null
  • Keyspace ERD of tables, views and types, with the relationships a wide-column model really has

Trial and licence

Fourteen days, then reading still works.

ScyllaDesk runs fully featured for fourteen days from first launch. After that it keeps reading — browsing, queries, metrics, analysis and export — and only writing needs a licence key.

Someone diagnosing a production incident is never locked out of looking at their own data by a lapsed key. That is a deliberate choice, not an oversight.

A key is an Ed25519-signed statement verified locally against a public key compiled into the binary. Nothing contacts a server, which matters because database tooling is routinely run on machines with no route to the internet. Perpetual keys carry a maintenance window, so a key keeps working forever on the versions it covers.

StateReadWrite
Trial — 14 days from first launchyesyes
Licensedyesyes
Trial endedyesno
Licence expiredyesno
Key does not cover this versionyesno

Pricing is not set yet — ask and we will tell you the moment it is.

Local

Credentials never leave the machine

Connection secrets go to the OS keychain — Keychain on macOS, Credential Manager on Windows, Secret Service on Linux — not to a config file in your home directory. Passwords go straight to the server: never logged, never echoed back, and masked in every statement preview.

Quiet

No telemetry, no account, no check-in

There is no analytics call, no crash reporter phoning home and no sign-in. The app works the same on an air-gapped jump box as it does on your laptop, and the licence check is part of why — it is arithmetic, not a request.

Careful

It shows you the statement first

Destructive actions take typed confirmation, and every write shows the exact command before it runs. A connection can be marked read-only, and that switch is enforced in the main process at the same place the licence gate lives — so a caller that respects one cannot slip past the other.

Honest

It hides what your server cannot do

ScyllaDB and Cassandra are both supported, and the two do not have the same feature set. Capabilities are probed on connect and the interface hides what a server cannot do, rather than offering a button that fails.

Coming soonv0.1.0

Want it when it lands?

Needs a reachable ScyllaDB or Apache Cassandra cluster on the CQL port — 9042 by default. Port 9180 gives live metrics and 10000 the ScyllaDB REST API; that one binds to 127.0.0.1, so tunnel it or set api_address.

No newsletter, no sharing — one email when it ships.

Windows · macOS · Linux

The other two

Coming soon

RedisDesk

Redis, Valkey, KeyDB and friends