Skip to content

pardeepdhingra/PR-Tracker

Repository files navigation

PR Tracker Chrome Extension

A Chrome extension to track and manage merge requests across multiple GitLab repositories.

Features

  • GitLab Authentication: Sign in with your GitLab account to access your repositories
  • Merge Request Aggregation: View all open MRs from multiple repositories in one place
  • Notifications: Get browser notifications for stale merge requests
  • Custom Filters & Sorting: Filter MRs by state, priority, and more
  • Priority Management: Assign priority levels to merge requests
  • Dark/Light Mode: Choose your preferred theme
  • Repository Management: Add or remove repositories to track

Installation

Development Setup

  1. Clone this repository
  2. Install dependencies
    npm install
    
  3. Build the extension:
    npm run build
    
  4. Load the extension in Chrome:
    • Navigate to chrome://extensions/
    • Enable "Developer mode"
    • Click "Load unpacked" and select the dist directory

Usage

Setting Up Authentication

PR Tracker offers two ways to connect to your GitLab account:

Option 1: Using a Personal Access Token (Recommended)

This method is simpler and doesn't require admin privileges:

  1. Open the extension and go to the Settings page
  2. In the GitLab Authentication section, select "Personal Access Token"
  3. Navigate to your GitLab profile: User Settings > Access Tokens
  4. Create a new personal access token with name "PR Tracker"
  5. Select the following scopes: read_user, read_api, read_repository
  6. Create the token and copy it
  7. Paste the token into the PR Tracker settings and save
  8. Now you can sign in to the extension

Option 2: Using a GitLab OAuth Application

For users who prefer OAuth or need to use it:

  1. Navigate to your GitLab profile settings (User Settings > Applications)
  2. Create a new application named "PR Tracker" with the following scopes:
    • read_user
    • read_api
    • read_repository
  3. For the Redirect URI, open the extension, click "Sign In" and check the console (right-click > Inspect > Console) to see the exact redirect URI to use
  4. Copy the Application ID (Client ID)
  5. Open the extension's Settings page, select "OAuth Application" and paste the ID
  6. Now you can sign in to the extension

Using the Extension

Once authenticated, you can:

  1. View all your open merge requests on the Dashboard
  2. Add specific repositories to track in the Repositories section
  3. Configure notification settings for stale merge requests
  4. Toggle between light and dark mode in Settings

Troubleshooting

  • If you encounter authentication issues, triple-click anywhere in the extension to reveal a debug panel
  • Make sure pop-ups are allowed for the extension
  • Check that your token or client ID has been saved correctly
  • For self-hosted GitLab instances, make sure to enter the correct GitLab URL in Settings

Privacy Notice

This extension:

  • Only requests the minimal permissions needed to function (read_user, read_api, read_repository)
  • Does not store your data on any external servers
  • Only communicates directly with the GitLab API
  • Stores authentication tokens locally in your browser's secure storage

Development

  • Run in development mode with hot reloading:

    npm run start
    
  • Build for production:

    npm run build
    

License

MIT

Contributing

Contributions are welcome! Please feel free to submit a Merge Request.

About

PR Tracker google extension

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages