Sign inSign up

jumpasaservice/tabularia-frontend

By jumpasaservice

•Updated about 18 hours ago

Frontend of Tabularia (self hosted big data transformation/data analysis platform) done in Nuxt/Vue

Image
Machine learning & AI
Data science
Monitoring & observability
0

1.8K

jumpasaservice/tabularia-frontend repository overview

Tabularia — Messy in. Trusted out.

⁠Tabularia frontend

Tabularia is an open-source, self-hosted data preparation platform: people build data flows visually — joins, filters, pivots, SQL, Python and R — on data from databases, files, SFTP, S3, APIs and SharePoint, run them on the engine that fits, and publish trusted datasets, pixel-perfect reports and live dashboards. Permissions, data contracts, lineage and an audit trail come with it from the first day.

This image is the web app: the flow editor, the viewer, the designers of reports and dashboards, the AI assistant's chat, the lineage, and the administration — in English, Italian, German, French and Spanish, with five themes, dark and light.

The browser calls the gateway directly; this server only serves the app, so it holds no credentials and reaches no other service. A working installation runs the three images together, with PostgreSQL, Valkey (or Redis) and an S3-compatible object storage.

ImageWhat it is
jumpasaservice/tabularia-gateway⁠the control plane: API, sign-in, permissions, orchestration
jumpasaservice/tabularia-backend⁠the engine API and its workers
jumpasaservice/tabularia-frontend⁠the web app (this image)

The same image also draws the reports' charts: node /app/chart-renderer/render.mjs --serve 8090 --host 127.0.0.1 runs the chart service, which the Helm chart starts as a sidecar of the run workers.

⁠Tags

TagMeaning
1.3.0one release, for linux/amd64 and linux/arm64
1.3the latest 1.3.x
latestthe latest stable release
1.3.0-amd64, 1.3.0-arm64one architecture only

Pin an exact version in production and upgrade the three images together, following the upgrade guide⁠. Every release is described in the changelog⁠.

⁠Getting started

  • Production on Kubernetes: the Helm chart in the repository installs the three images, with one ingress for the app and the API, network policies and a read-only root filesystem — Kubernetes and Helm⁠.
  • Try it on your computer: three commands with Docker Compose — getting started⁠ — or a local Kubernetes with minikube⁠.

⁠Configuration

The server reads these when it starts, so one image serves every environment without a rebuild:

VariableWhat it is
NUXT_PUBLIC_API_BASEthe gateway's URL as the browser calls it: /api when one host serves the app and the API, or a full URL
NUXT_PUBLIC_BUCKETthe default bucket; the same as the engine's STORAGE__BUCKET
NUXT_PUBLIC_GRAFANA_URLGrafana as the browser reaches it, for the Monitoring tab (optional)
NUXT_PUBLIC_NOTEBOOKS_ORIGINthe notebooks' own address, allowed by the pages' Content-Security-Policy (Kubernetes)
NUXT_PUBLIC_SOURCE_URLwhere Source code in the menu leads: if you offer a changed version over a network, the AGPL asks you to point it at your source

All of Tabularia's variables: configuration reference⁠.

⁠The container

  • Listens on port 3000 (Node.js 22 on Alpine); GET /login answers when the app is up.
  • Runs as an unprivileged user (uid 10001) and works with a read-only root filesystem and a /tmp of its own.
  • Sends a Content-Security-Policy with every page.
  • Serves the notices of the third-party software it holds at /third-party-notices.txt.

Before a release is pushed, its images are built for both architectures, started for a smoke test, checked for the licences of the packages they hold, and scanned for secrets (the maintainers' fingerprints and TruffleHog's verified credentials). The process is described in the repository: release process⁠.

Tag summary

Content type

Image

Digest

sha256:96d291f71…

Size

64.7 MB

Last updated

about 18 hours ago

docker pull jumpasaservice/tabularia-frontend