Skip to content

tabletop-labs/tabletop

Repository files navigation

Tabletop

A curated selection of tools, libraries and services that help tame your dataflow to productively build ambitious, data driven & reactive applications on a streaming lakehouse.

Imagine Rails, Elixir/Erlang OTP & Spring had a baby.

Getting Started | Commands | Architecture

The Default Stack

  • golang for glue and custom producers/processors/consumers
  • S3/R2/MinIO as an API for object storage
  • Kafka as an API with Redpanda for low latency message storage and processing
  • Clickhouse OLAP DBMS
  • Grafana for operational visualization that can also be used for BI tasks
  • Loki for logs
  • Prometheus for metrics

What Can I Do? TLDR;

Realize the kappa architecture through convention based tooling:

  • ingest
  • process
  • deliver
  • warehouse
  • test
  • monitor
  • time travel
  • debug

Install

Use the go install command to download, build and install the tabletop binary into the path set by your GOBIN environment variable.

> go install github.com/fremantle-industries/tabletop@latest

Usage

Initialize a project and go module in the current working directory. The new command will generate your project from the default stack of templates along with an application by the same name.

> tabletop new github.com/myuser/myapp
creating directory /tmp/myapp
creating directory /tmp/myapp/internal/apps/myapp
creating template /tmp/myapp/README.md
...

Endpoints

Name Endpoint
Grafana grafana.localhost
Prometheus prometheus.localhost
Redpanda Kafka Console redpanda.localhost
Clickhouse clickhouse.localhost/play
MinIO Console minio.localhost

Contributing

Development

Run the default make target which downloads dependencies to build and run docker compose on the host machine.

> make

Build the tabletop binary

> make build.bin

Test

Run the tabletop test suite

> make test

Authors

License

tabletop is released under the MIT license

About

A curated selection of tools, libraries and services that help tame your dataflow to productively build ambitious, data driven & reactive applications on a streaming lakehouse

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Sponsor this project

Packages

No packages published