Sign inSign up

josephfidelis/koboflux-v2

By josephfidelis

•Updated 3 months ago

KoboFlux v2 — modern KoboToolbox dashboard. Run with docker compose and your API token.

Image
Networking
API management
Content management system
0

1.1K

josephfidelis/koboflux-v2 repository overview

⁠KoboFlux v2

KoboFlux v2 is an open-source web interface for KoboToolbox⁠. Browse forms, view submissions, export data, and bulk-upload Excel rows — with your Kobo API token kept on the server, never in the browser.

Independent project — not affiliated with KoboToolbox.

⁠Image

RegistryTag examples
josephfidelis/koboflux-v2latest, 1.0.0, git SHA

⁠Requirements

1. Create a .env file next to docker-compose.yml:

NUXT_KOBO_API_TOKEN=your_kobo_api_token_here
NUXT_KOBO_BASE_URL=https://kf.kobotoolbox.org
NUXT_PUBLIC_APP_NAME=KoboFlux
NUXT_PUBLIC_BASE_URL=

2. Use the compose file from the GitHub repo⁠ or this minimal version:

services:
  kobo-flux:
    image: josephfidelis/koboflux-v2:latest
    container_name: koboflux-v2
    restart: unless-stopped
    ports:
      - "3000:3000"
    env_file:
      - .env
    environment:
      HOST: 0.0.0.0
      PORT: 3000

3. Start:

docker compose pull
docker compose up -d

Open http://localhost:3000⁠

⁠Compose commands
docker compose logs -f      # logs
docker compose ps           # status
docker compose restart      # after editing .env
docker compose down         # stop

Custom port:

KOBOFLUX_PORT=8080 docker compose up -d

(requires ports: - "${KOBOFLUX_PORT:-3000}:3000" in compose)

⁠Quick start — Docker CLI

Pull and run:

docker pull josephfidelis/koboflux-v2:latest

docker run -d \
  --name koboflux-v2 \
  --restart unless-stopped \
  -p 3000:3000 \
  -e NUXT_KOBO_API_TOKEN=your_kobo_api_token_here \
  -e NUXT_KOBO_BASE_URL=https://kf.kobotoolbox.org \
  -e NUXT_PUBLIC_APP_NAME=KoboFlux \
  -e HOST=0.0.0.0 \
  -e PORT=3000 \
  josephfidelis/koboflux-v2:latest

Using an env file (preferred):

docker run -d \
  --name koboflux-v2 \
  --restart unless-stopped \
  -p 3000:3000 \
  --env-file .env \
  josephfidelis/koboflux-v2:latest

Pin a version:

docker pull josephfidelis/koboflux-v2:1.0.0
docker run -d --name koboflux-v2 -p 3000:3000 --env-file .env josephfidelis/koboflux-v2:1.0.0

Stop and remove:

docker stop koboflux-v2 && docker rm koboflux-v2

⁠Environment variables

VariableRequiredDefaultDescription
NUXT_KOBO_API_TOKENYes—Kobo API token (server-only)
NUXT_KOBO_BASE_URLNohttps://kf.kobotoolbox.orgKobo host (https://eu.kobotoolbox.org for EU)
NUXT_PUBLIC_APP_NAMENoKoboFluxName shown in the UI
NUXT_PUBLIC_BASE_URLNo(empty)Leave empty for same-origin API proxy
KOBOFLUX_PORTNo3000Host port (Compose only)

Never bake tokens into the image. Pass them at runtime with -e or --env-file.

⁠What’s included

  • Dashboard and forms library
  • Form detail, deployment links, downloads (JSON / XML / XLSX)
  • Submissions browser and exports
  • Excel bulk upload (OpenRosa)
  • Organization team view

⁠Supported tags

  • latest — current main branch
  • 1.0.0, 0.1.0, … — matches version in package.json on each release
  • Short git SHA tags from CI

Try out at https://koboflux.fidelisuwem.com/⁠

Tag summary

Content type

Image

Digest

sha256:72ecdc926…

Size

56.7 MB

Last updated

3 months ago

docker pull josephfidelis/koboflux-v2