tree: 9e4f994e751a95266bbff833b337e85e53146d70
  1. docs/
  2. src/
  3. static/
  4. .dockerignore
  5. .env
  6. .eslintignore
  7. .eslintrc.cjs
  8. .gitignore
  9. .npmrc
  10. .prettierignore
  11. .prettierrc
  12. docker-compose.yml
  13. Dockerfile
  14. justfile
  15. LICENSE
  16. NOTICE
  17. package-lock.json
  18. package.json
  19. postcss.config.js
  20. README.md
  21. svelte.config.js
  22. tailwind.config.js
  23. tsconfig.json
  24. vite.config.ts
web/README.md

Apache Iggy (Incubating) Web UI

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

iggy iggy iggy iggy iggy

Overview

The Iggy Web UI provides a user-friendly panel for managing various aspects of the Iggy platform, including streams, topics, partitions, and more.

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 iggy-web-ui
    npm install
    
  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://0.0.0.0: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)
  • [ ] GitHub actions CI/CD
  • [ ] Publish to Dockerhub as separate Image

Contributing

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