Sign inSign up

heyfworld/vidbee-web

By heyfworld

•Updated 4 months ago

Image
0

954

heyfworld/vidbee-web repository overview

⁠VidBee Web

The web UI for VidBee⁠ — a modern, open-source video downloader that supports 1000+ websites. This image serves the VidBee web client built with React, TanStack Router, and Tailwind CSS.

Pair with heyfworld/vidbee-api⁠ for a complete self-hosted video download solution. Point VITE_API_URL at your API server, or use the default http://localhost:3100.

⁠Quick Start

# docker-compose.yml
services:
  api:
    image: heyfworld/vidbee-api:latest
    environment:
      VIDBEE_API_HOST: 0.0.0.0
      VIDBEE_API_PORT: 3100
      VIDBEE_DOWNLOAD_DIR: /data/downloads
      VIDBEE_HISTORY_STORE_PATH: /data/vidbee/vidbee.db
    ports:
      - "3100:3100"
    volumes:
      - ./data/downloads:/data/downloads
      - ./data/vidbee:/data/vidbee
    healthcheck:
      test: ["CMD-SHELL", "wget -qO- http://127.0.0.1:3100/health > /dev/null || exit 1"]
      interval: 10s
      timeout: 5s
      retries: 5
      start_period: 10s
    restart: unless-stopped

  web:
    image: heyfworld/vidbee-web:latest
    depends_on:
      api:
        condition: service_healthy
    ports:
      - "3000:3000"
    restart: unless-stopped
docker compose up -d

Open http://localhost:3000 — done.

⁠Docker Run
docker run -d \
  --name vidbee-web \
  --restart unless-stopped \
  -p 3000:3000 \
  heyfworld/vidbee-web:latest

Note: The web UI requires a running VidBee API server. Make sure heyfworld/vidbee-api⁠ is running and accessible.


⁠Connecting to the API

The web client connects to the VidBee API from the browser. By default, it connects to http://localhost:3100.

⁠Same machine (default)

No configuration needed — the web UI will reach the API at http://localhost:3100 as long as both containers expose their ports on the host.

⁠Remote or custom API server

If your API runs on a different host, port, or behind a reverse proxy, set VITE_API_URL at build time:

docker buildx build \
  --build-arg VITE_API_URL=https://api.example.com \
  -f apps/web/Dockerfile \
  -t my-vidbee-web .

Or in Docker Compose:

services:
  web:
    build:
      context: .
      dockerfile: apps/web/Dockerfile
      args:
        VITE_API_URL: https://api.example.com
    ports:
      - "3000:3000"

Important: VITE_API_URL is a build-time argument baked into the JavaScript bundle by Vite. It cannot be changed at runtime without rebuilding.


⁠Environment Variables

VariableTypeDefaultDescription
VITE_API_URLBuild arghttp://localhost:3100URL of the VidBee API server (as seen by the browser)

⁠Verify

# Check the web UI is serving
curl -sI http://localhost:3000

# Confirm the API URL baked into the build
docker exec vidbee-web printenv VITE_API_URL

⁠Architectures

This image supports linux/amd64 and linux/arm64.


⁠Source

Built from nexmoe/VidBee⁠ — the official open-source VidBee repository.


⁠Notes

  • This image serves only the web client. It does not include the download engine, yt-dlp, or any backend services. You must run the API server separately — see heyfworld/vidbee-api⁠.
  • The web client runs a Vite dev server inside the container. For production deployments behind a reverse proxy, consider building a static bundle and serving with nginx.
  • The API URL is resolved by the browser, not the container. Make sure the VITE_API_URL is reachable from the user's browser, not just within the Docker network.

Tag summary

Content type

Image

Digest

sha256:6622ab7d3…

Size

225.1 MB

Last updated

4 months ago

docker pull heyfworld/vidbee-web