This project hosts the web user interface for Apache Iggy. The web UI is built using SvelteKit.
The Iggy Web UI provides a user-friendly panel for managing various aspects of the Iggy platform, including streams, topics, partitions, and more.
The docker image is available, and can be fetched via docker pull apache/iggy-web-ui:edge.
- Node.js: use a version supported by the current frontend toolchain,
^22.17.0 || >=24. - Package manager:
npm pnpmandyarnare not part of the supported workflow for this package. CI, Docker builds, and the committed lockfile usenpm.
-
Run Iggy server first
docker pull apache/iggy:edge
docker run --security-opt seccomp=unconfined -p 3000:3000 -p 8090:8090 \ -e IGGY_ROOT_USERNAME=iggy -e IGGY_ROOT_PASSWORD=iggy \ -e IGGY_HTTP_ADDRESS=0.0.0.0:3000 -e IGGY_TCP_ADDRESS=0.0.0.0:8090 \ -e IGGY_NODE_ADVERTISED_ADDRESS=localhost apache/iggy:edge
-
Clone the repository:
git clone https://github.com/apache/iggy.git
-
Build the project:
cd iggy/web npm ci -
Run the project:
npm run dev
To expose port in local network run:
npm run dev -- --host --port 3333
Set
PUBLIC_IGGY_API_URLinweb/.envto the HTTP address reachable by your browser, for example:PUBLIC_IGGY_API_URL=http://127.0.0.1:3000
This applies to both container and source-built servers. Use the host-published HTTP port for a container.
- Authorization
- Allow manual interval setting for auto-refresh
- Introduce dark mode
- Enable CRUD operations on Streams
- Enable CRUD operations on Topics
- Messages management
- General UI improvements
- Permission management (in progress)
- GitHub actions CI/CD
- Publish to Dockerhub as separate Image
Feel free to contribute to the project. Your feedback and contributions are highly appreciated!
