/iggy-web-ui

Web UI management panel for Iggy.rs message streaming.

Primary LanguageSvelteMIT LicenseMIT

Iggy Web UI

This repository hosts the web user interface for Iggy, a persistent message streaming platform written in Rust. 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 iggyrs/iggy:latest
    docker run -p 3000:3000 -p 8090:8090 iggyrs/iggy:latest
  2. Clone the repository:

    git clone https://github.com/iggy-rs/iggy-web-ui.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

  • 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

Contributing

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