tabletop-labs / 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
MIT License
5 stars 0 forks source link
big-data big-data-analytics big-data-processing elasticscaling kafka microservices modern-data-stack real-time semi-structured-cloud-warehouse stream-processing timetravel

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

What Can I Do? TLDR;

Realize the kappa architecture through convention based tooling:

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