Backend: Docker Hub API Integration for Service Catalog

Open
#13 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
38/100
Issue type
Feature
Clarity
Mostly clear
Activity status
Stale
Tech stack
docker, typescript
Domain
api, backend

Research direction

Start with frontend/src/mockdata.ts to understand the existing data shape, then locate the backend entry point that should expose the proposed /api/dockerhub/info endpoint. Review Docker Hub’s public API requirements, caching, fallback, logging, and error-handling expectations. Done means the backend returns compatible metadata for catalog images without relying on frontend-only static data.

Written by the indexing model from the issue text.

Description

Backend enhancement

🚀 Feature Request: Docker Hub API Integration for Service Catalog

Is your feature request related to a problem? Please describe.

Currently, the service catalog lacks direct integration with the Docker Hub API, making it difficult to dynamically fetch and display real container image details such as descriptions, pull counts, and tags.
This limits the catalog’s accuracy and forces reliance on static mock data (frontend/src/mockdata.ts), which can easily become outdated.

Describe the solution you'd like

Integrate Docker Hub’s public API into the backend to fetch metadata for images listed in the service catalog.
The backend should expose an endpoint (e.g., /api/dockerhub/info?image=<name>) that:

  • Retrieves image metadata (description, pull count, last updated, etc.) from Docker Hub
  • Caches responses to optimize performance and reduce rate limit issues
  • Returns structured data matching the current mock data schema for easy frontend integration
Describe alternatives you've considered
  • Direct frontend calls to Docker Hub API:
    Causes CORS issues and may expose API keys or hit rate limits from the client side.
  • Maintaining static JSON data:
    Non-scalable and quickly becomes outdated as Docker Hub data changes.
Use Case

Provides real-time Docker Hub metadata for each service in the catalog (e.g., image name, description, stars, pulls, last updated), enhancing the accuracy and usability of the catalog while maintaining a consistent data model with existing mock data.

Additional context
Implementation Considerations
  • ✅ Add caching to minimize repeated API calls and handle Docker Hub rate limits
  • ⚠️ Include fallback behavior for unavailable or private images
  • 🧩 Ensure response format matches the current mock data structure
  • 🪵 Implement logging and error handling for API communication
  • 🔐 Consider optional authentication for extended API rate limits (if needed)
Dominant language
TypeScript
Stars
4
Forks
4
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

More from MLSAKIIT/ComposeGenie

All issues in MLSAKIIT/ComposeGenie

Similar issues

More TypeScript issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.