Skip to content

Getting started

Showcase

Three open-source reference apps built with Vukem, live in production, and which framework features each one demonstrates.

Last updated:

These apps are built and maintained alongside the framework. Each one is open source and deployed on Railway, so you can read the code that runs behind a live URL. They are also how Vukem is tested in the real world: their feedback drives most releases.

Pick the one closest to what you are building and read it next to these docs.

AppFrontendDataBest for learning
QuizHTMX 4, html/templateembedded JSONserver-rendered apps, i18n, a strict CSP
RifaInertia v3 + VuePostgreSQLpayments, a ledger, a public REST API, background work
MarketplaceInertia v3 + React + Base UIPostgreSQL, Redis, MongoDBmulti-database apps, REST + GraphQL + gRPC, marketplace payments, tracing

Quiz (HTMX)#

A Go quiz game with no database: the questions ship inside the binary as embedded JSON. Small enough to read in an afternoon.

What it demonstrates:

  • HTMX 4 with server-rendered html/template views and partial updates (HTMX).
  • Embedded content: data and assets compiled into one binary (Single binary).
  • Localization with JSON catalogs and the t view function (Localization).
  • A strict, nonce-based CSP with no 'unsafe-inline' (CSP and security headers).
  • Performance and accessibility: a Lighthouse score of 100.

Rifa (Inertia and Vue)#

A raffle platform ("rifa" in Portuguese) where users buy numbers and pay with PIX.

What it demonstrates:

  • Inertia v3 with Vue pages, forms and validation errors (Inertia).
  • PostgreSQL with the ORM and migrations (Database).
  • PIX payments through AbacatePay, with verified, deduplicated webhooks.
  • A ledger that records every money movement of a raffle.
  • A public REST API with typed handlers, OpenAPI and the Scalar reference (OpenAPI), protected by API tokens.
  • Background work in one service: the scheduler and the queue run inside serve.

Marketplace (Inertia and React)#

A small Mercado Livre-style marketplace: sellers list products, buyers pay, sellers get paid. The largest of the three.

What it demonstrates:

  • Inertia v3 with React and the Base UI component library (Inertia).
  • Three databases in one app: PostgreSQL for the core data, Redis for sessions, cache, queues and rate limits, MongoDB for audit, telemetry and history documents.
  • Stripe Connect and PIX payments, with payouts to sellers (Stripe Connect).
  • Three API styles over the same services: REST, GraphQL and gRPC.
  • Tracing with OpenTelemetry.

Running one locally#

Each repository's README lists its requirements. The usual flow:

Terminal
git clone https://github.com/AlexGalhardo/vukem-golang-quiz-htmx
cd vukem-golang-quiz-htmx
cp .env.example .env   # then fill in the values
vukem serve

The Rifa and Marketplace apps need their databases: start them with the compose.yaml in each repository (docker compose up -d) before vukem serve.