tree: 322fa004fc1f32a9b0a9fd4f8fd837c7900ad779 [path history] [tgz]
  1. docs/
  2. src/
  3. static/
  4. .dockerignore
  5. .env
  6. .gitignore
  7. .prettierignore
  8. .prettierrc
  9. docker-compose.yml
  10. Dockerfile
  11. eslint.config.js
  12. justfile
  13. LICENSE
  14. NOTICE
  15. package-lock.json
  16. package.json
  17. postcss.config.js
  18. README.md
  19. svelte.config.js
  20. tsconfig.json
  21. vite.config.ts
web/README.md

Apache Iggy Web UI

This project hosts the web user interface for Apache Iggy. The web UI is built using SvelteKit.

Web

Overview

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.

Tooling

  • Node.js: use a version supported by the current frontend toolchain, ^20.19.0 || ^22.13.0 || >=24. 22.13+ LTS is the safest default.
  • Package manager: npm
  • pnpm and yarn are not part of the supported workflow for this package. CI, Docker builds, and the committed lockfile use npm.

Getting Started

  1. Run Iggy server first

    docker pull apache/iggy:latest
    
    docker run -p 3000:3000 -p 8090:8090 apache/iggy:latest
    
  2. Clone the repository:

    git clone https://github.com/apache/iggy.git
    
  3. Build the project:

    cd web
    npm ci
    
  4. Run the project:

    npm run dev
    

    To expose port in local network run:

    npm run dev -- --host --port 3333
    

    If Iggy server was run using cargo directly we need to change PUBLIC_IGGY_API_URL env in web ui root folder to:

    PUBLIC_IGGY_API_URL=http://127.0.0.1:3000
    

    instead of

    PUBLIC_IGGY_API_URL=http://localhost:3000
    

Roadmap

  • [x] Authorization
  • [x] Allow manual interval setting for auto-refresh
  • [x] Introduce dark mode
  • [x] Enable CRUD operations on Streams
  • [x] Enable CRUD operations on Topics
  • [ ] Messages management
  • [ ] General UI improvements
  • [ ] Permission management (in progress)
  • [x] GitHub actions CI/CD
  • [x] Publish to Dockerhub as separate Image

Contributing

Feel free to contribute to the project. Your feedback and contributions are highly appreciated!