figcraft-web

figcraft-web

Docker app from MikaPST's Repository

Overview

FigCraft Web is a community-maintained Docker image that serves FigCraft, an interface design and prototyping application, through a browser-based WebAssembly frontend. The application provides tools for designing and prototyping user interfaces in the browser. This container packages the web frontend only; it does not add a hosted collaboration service, remote desktop, or server-side project backend.

FigCraft application icon

FigCraft Web — Docker Image

A community-maintained Docker image for FigCraft, providing its browser-based application through a self-hosted web interface.
Build automation and image publication to GitHub Container Registry (GHCR).

Build and publish FigCraft Web GHCR image tag Docker Compose configuration


Why this repository?

The official FigCraft project provides a browser-based WebAssembly application. This repository packages that web application into a Docker image to simplify self-hosting.

The goals are to:

  • Build the FigCraft Web Web application from the upstream source code.
  • Publish a ready-to-run Docker image to GHCR.
  • Automatically rebuild the image every week to incorporate upstream changes.
  • Provide a convenient deployment option for Unraid Community Applications.
  • Offer a simple Docker Compose configuration for users who prefer managing containers with Compose.
  • Keep the packaging and deployment configuration separate from the upstream FigCraft project.

This is a packaging and distribution project, not a fork intended to develop a separate application.

How it works

FigCraft Web runs directly in the user's browser. The container serves the static web application through NGINX; it does not provide a remote Linux desktop.

FigCraft Web runs directly in the user's browser using WebAssembly. The Docker container serves the static web application through NGINX; it does not provide a remote Linux desktop.

  • Browser-based interface: access the application through a web browser.
  • WebAssembly application: the editor runs in the browser rather than in a remote desktop session.
  • Web graphics: the upstream web build supports WebGPU with a WebGL2 fallback.
  • Self-hosted: run the application on your own server and access it over your local network or through a properly configured reverse proxy.

The container serves the application files rather than acting as an application backend or document-storage service, unless explicitly provided by the upstream web application.

Docker image

The image is published to GitHub Container Registry:

ghcr.io/mikapst/figcraft-web:latest

Option 1 — Docker Compose (recommended)

A docker-compose.yml file is provided at the root of this repository. It is the simplest way to start and maintain FigCraft Web with Docker Compose.

services:
  figcraft-web:
    image: ghcr.io/mikapst/figcraft-web:latest
    container_name: figcraft-web
    ports:
      - "8080:8080"
    restart: unless-stopped

From the repository root, start the application with:

docker compose up -d

Open the application in your browser:

http://YOUR_SERVER_IP:8080

Replace YOUR_SERVER_IP with the IP address or hostname of your server. If Docker is running on your own computer, you can use http://localhost:8080.

Useful Compose commands

# View container logs
docker compose logs -f

# Pull the latest image and recreate the container
docker compose pull
docker compose up -d

# Stop and remove the container
docker compose down

No .env file or persistent volume is required for this basic setup. The host port is configured in docker-compose.yml; by default, port 8080 on the host is mapped to port 8080 in the container. To use a different host port, change the left-hand side of the mapping. For example, 8081:8080 exposes the application on host port 8081.

Option 2 — Run directly with Docker

If you prefer not to use Docker Compose, you can run the container directly:

docker pull ghcr.io/mikapst/figcraft-web:latest

docker run -d \
  --name figcraft-web \
  --restart unless-stopped \
  -p 8080:8080 \
  ghcr.io/mikapst/figcraft-web:latest

Open the application at:

http://YOUR_SERVER_IP:8080

Optional CPU and memory limits can be added to the docker run command if needed, for example --cpus=2 --memory=2g. These limits are not included in the default Compose file.

Network access and reverse proxies

The container listens for HTTP traffic on port 8080. For external access, use a reverse proxy such as Traefik to terminate HTTPS and forward requests to the container over HTTP.

Do not expose an unencrypted HTTP port directly to the public Internet. Restrict access to your intended network or protect external access with HTTPS and appropriate access controls.

Automated builds

GitHub Actions builds and publishes the image automatically.

Trigger Behaviour
Weekly schedule Rebuilds from the upstream main branch
Manual workflow dispatch Allows a build to be triggered manually
Changes to this repository's README, Compose file or workflow Triggers a new build

Each successful build publishes:

  • latest — the most recently published image.
  • upstream-<commit> — identifies the upstream commit used for the build.

The build targets linux/amd64 and linux/arm64. Actual compatibility depends on the upstream build and the target platform.

[!IMPORTANT] A weekly build does not guarantee that upstream changes are compatible or stable. FigCraft is under active development. Test new images before relying on them for important work.

The latest tag is mutable and may point to a newer image after a successful build.

Unraid Community Applications

This image is intended to be distributed through the maintainer's existing Unraid Community Applications repository.

The Unraid template will reference the published GHCR image and provide configuration for the web port and resource limits.

This repository contains the image build, publication workflow and Docker Compose configuration. The Unraid Community Applications template is maintained separately.

Upstream project

FigCraft is an open-source project developed by the ArtCraft Team and its contributors.

This repository builds a browser-based version of the upstream application and packages its generated static web files into a Docker image. It is an independent community-maintained packaging project.

License and attribution

FigCraft is dual-licensed under the MIT License or Apache License 2.0, at the user's option, according to the upstream project. Copyright belongs to the ArtCraft Team and FigCraft contributors.

The upstream project includes license and attribution information for the application and bundled third-party assets. These notices and the applicable license files must be preserved when redistributing the application.

The licenses for the upstream application do not automatically determine the license of the packaging files maintained in this repository. Refer to the repository's own LICENSE file for the terms applicable to those files.

The FigCraft name, ArtCraft branding and logos remain subject to their respective trademark and usage terms. This repository is an independent community-maintained packaging project and is not an official FigCraft release and is not affiliated with or endorsed by the FigCraft or ArtCraft maintainers.

Disclaimer

FigCraft is under active development. Features, compatibility and behaviour may change between builds. Use the application and its generated files at your own discretion.

Requirements


    No special privileges, database, or persistent data volumes are required for the standard deployment. The web interface is served over HTTP on container port 8080. Project file handling and browser features depend on the upstream web application and the user's browser. Use HTTPS through a reverse proxy for remote access when required by browser security restrictions.

Categories

Related apps

Explore more like this

Explore all

Details

Repository
ghcr.io/mikapst/figcraft-web:latest
Last Updated2026-11-04
First Seen2026-11-04

Runtime arguments

Web UI
http://[IP]:[PORT:8080]/
Network
bridge
Shell
sh
Privileged
false

Template configuration

HTTP PortPorttcp

Host port used to access the FigCraft Web interface. The container listens on port 8080.

Target
8080
Default
8086