Skip to content

mberrishdev/repo-pulse

Repository files navigation

RepoPulse

RepoPulse is a modern dashboard for monitoring, managing, and triggering CI/CD pipelines and Renovate PRs across multiple repositories in Azure DevOps.
It provides a beautiful, unified UI for DevOps teams to track repository health, automate dependency updates, and manage build pipelines.


Features

  • Repository Dashboard:

    • View all configured repositories and their pipeline status.
    • Trigger CI pipelines for individual repositories or all at once.
    • Direct links to repository pages and build pipelines.
  • Renovate PR Management:

    • List and manage Renovate bot pull requests across all repositories.
    • Publish (activate) draft PRs with a single click.
    • See affected repositories for each PR, with direct links to PRs and build pipelines.
    • Trigger builds for any repository directly from the PR card.
  • Settings & Configuration:

    • View and edit all configuration (Azure DevOps, repositories, Renovate) via a user-friendly form.
    • Download or copy your config as JSON.
    • Add/remove repositories and update pipeline settings without leaving the UI.
  • Status Indicators:

    • Visual status badges for build and PR states (success, failed, running, etc.).
    • Tooltips and icons for quick status recognition.

Configuration

  • Configuration is now stored securely in your browser's localStorage.
  • You must import a config.json file or create one manually via the Settings page.
  • Your configuration is private and never leaves your browser unless you explicitly download or share it.

How to get started:

  1. On first launch, you will be prompted to import a config.json or create one manually.
  2. You can always download, edit, or re-import your config from the Settings page.
  3. The config is only accessible to you and is not exposed to the public or to the server.

Example config:

{
  "azureDevOps": {
    "baseUrl": "https://dev.azure.com/your-org",
    "organization": "your-org",
    "personalAccessToken": "<YOUR_PERSONAL_ACCESS_TOKEN>"
  },
  "repositories": [
    {
      "name": "Repo1",
      "url": "/your-org/your-project/_git/Repo1",
      "pipelineId": "123",
      "branch": "main",
      "project": "Project1"
    },
    {
      "name": "Repo2",
      "url": "/your-org/your-project/_git/Repo2",
      "pipelineId": "456",
      "branch": "develop",
      "project": "Project2"
    }
  ],
  "renovate": {
    "botName": "renovate[bot]"
  }
}
  • baseUrl: Your Azure DevOps base URL (usually https://dev.azure.com/your-org)
  • personalAccessToken: Required for all API calls. Never expose this in production frontend code!
  • repositories: List of repos to manage, with their pipeline IDs and default branches.
  • renovate: Renovate bot settings.

Security Note

Do NOT expose your Personal Access Token (PAT) in production frontend code.
Azure DevOps REST APIs do not support CORS, so all API calls requiring a PAT must be proxied through a secure backend.


Local Development

  1. Clone the repository:

    git clone https://github.com/mberrishdev/repo-pulse
    cd repo-pulse
  2. Install dependencies:

    npm install
  3. Configure your Azure DevOps and repositories:

    • Edit public/config.json with your organization, project, PAT, and repositories.
  4. Start the development server:

    npm run dev
  5. Open http://localhost:5173 in your browser.


Main Pages

  • Repositories:
    Monitor and trigger CI pipelines for all configured repositories.

  • Renovate:
    Manage Renovate PRs, publish drafts, and trigger builds for affected repositories.

  • Settings:
    Edit, add, or remove repositories and Azure DevOps settings. Download or copy your config.


Customization

  • Add/Remove Repositories:
    Use the Settings page to manage your repository list and pipeline settings.

  • Change Azure DevOps Settings:
    Update organization, project, or PAT in the Settings page.

  • Edit Renovate Settings:
    Enable/disable Renovate integration and set the bot name.


Production Deployment

  • You must use a backend to proxy Azure DevOps API calls.
    This app is designed for internal/dev use or with a secure backend proxy.

License

MIT


If you have questions or need help, open an issue or contact the maintainer.

The app will be available at [http://localhost:5050](http://localhost:5050).

---

About

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages