Pulp Admin UI – a web interface for managing Pulp 3 repositories

I’m sharing the first version of Pulp Admin UI — a browser-based admin console for Pulp 3.

I built this because while working with Pulp (mainly for RPM and Debian APT content), I found that most day-to-day operations rely heavily on raw REST calls. I wanted something more practical and user-friendly for everyday use.

The application connects directly to the Pulp API and is built with Next.js (App Router), React 19, TypeScript, and Tailwind CSS. Server routes act as a proxy to Pulp, and authentication is handled via cookie-based sessions so it behaves like a typical web app.

:rocket: What it currently supports

Overview & authentication

  • Dashboard — shows counts for users, groups, RPM repositories, and Debian repositories, with caching and manual refresh
  • Authentication — login against Pulp, protected routes, and session-based logout

Identity & access

  • Users — list and create users (including staff/active flags and profile fields)
  • Groups — list and create access groups

Repositories (RPM & Debian)

  • List view — paginated RPM / Debian toggle with actions (create, edit, browse, publish, distribute, delete)
  • Create & edit — create RPM or Debian repositories and edit supported fields aligned with Pulp serializers
  • Publish — trigger publications, handle async tasks, and display results or errors clearly
  • Content & versions
    • browse repository content
    • RPM version history (added/removed/present)
    • inspect specific versions
    • delete versions with confirmation
  • Distributions (RPM) — create distributions with defaults, view URLs, and optionally clean up distributions on repo deletion

Content & uploads

  • RPM packages — paginated list, detailed view (checksums, NVRA, artifacts), and preview route
  • Uploads — upload sessions with chunked upload support, create RPM content from artifacts, and attach content to repositories

UX

  • Sidebar navigation grouped by functionality
  • Reduced motion support
  • Footer with live user/group counts

:brain: Why I’m sharing this now

This is an early version (0.1.x). It’s already usable for real workflows, but it’s not a full replacement for all Pulp features or clients.

I’m sharing it now to get feedback from people actively using Pulp — especially around real-world workflows, missing features, and usability.

:speech_balloon: Feedback & contributions

I’d really appreciate feedback:

  • what feels missing
  • what could be improved
  • anything that doesn’t match your workflow

If you’d like to contribute, pull requests are welcome — whether it’s bug fixes, UI/UX improvements, or new features aligned with the Pulp API.

Setup is straightforward (PULP_BASE_URL, npm install, npm run dev), and everything is described in the README.

Github Repo: https://github.com/bobicloudvision/PulpAdminUI

1 Like

@bobicloudvision Thanks for using Pulp and sharing your work to help improve interacting with Pulp!

As you may know Pulp does have a UI [0] that is shipped in our images (assuming the CI is behaving), but that it doesn’t receive much love. The issue is that none of us on Pulp team are UI/UX developers and we always had more higher priority tasks to work on before trying to tackle the current problems with the UI. This has left the pulp-ui in a state of limbo from the moment it was graciously contributed by a group of Galaxy UI devs working on it in their spare time. We know there is a want from many in the community to have a fully functioning UI that’s close to on-par with the CLI, but we currently don’t have a plan for how this should be done or who would perform the necessary work.

Some questions about the work you’ve done:

  1. Do you use the pulp-cli for any of your daily operations?
  2. What’s your most common operation(s) you use the UI for?
  3. Does your UI support syncing from remotes?
  4. Did you use AI to help write the code? We are interested in AIs ability to create UIs.
  5. Have you thought of contributing the missing features you want to the pulp-ui?

Can’t promise anything right now, but we would like to foster a discussion about the exact needs of the community around the UI and what would be most helpful. From there it would easier to make a plan for how to go forward and deliver something useful. Thanks again for sharing, this is very impressive and we love seeing what the community can do!

[0] https://github.com/pulp/pulp-ui

1 Like