An Electron desktop application for managing NuGet package updates in both GitHub and local repositories with AI-powered recommendations.
- ✅ Add and manage GitHub repositories through the UI
- ✅ Analyze repositories for outdated NuGet packages
- ✅ AI-Powered Recommendations via GitHub Copilot SDK
- Security vulnerability detection
- Breaking change analysis
- Intelligent version recommendations
- Upgrade guidance and migration notes
- ✅ View detailed recommendations with priority badges
- ✅ Select and apply multiple recommendations at once
- 🚧 Local Repository Support - Work with your local .NET projects
- 🚧 Workspace Management - Analyze multiple projects at once
- 🚧 Monorepo Support - Coordinate updates across related projects
- 🚧 Automatic pull request creation for updates
- 🚧 Direct .csproj file updates for local repos
- Node.js (v18 or higher)
- npm
- GitHub Copilot CLI (optional, for AI-powered features)
- Install:
npm install -g @github/copilot - Or use the GitHub CLI:
gh copilot
- Install:
npm installnpm start- Add a Repository: Enter a GitHub repository URL (e.g.,
https://github.com/owner/repo) and click "Add Repository" - View Details: Click on a repository card to view its details
- Analyze: Click "Analyze Repository" to scan for NuGet packages
- Review AI Recommendations: Browse the list of intelligent package updates with security and breaking change analysis
- Select and Apply: Check the packages you want to update and click "Apply Selected Recommendations"
- Add Local Folder: Click "Add Local Repository" and select your .NET project folder
- Analyze Locally: The app will scan your local .csproj files without needing GitHub access
- Apply Updates: Directly modify your local project files with recommended updates
- Review Changes: See a diff of changes before confirming
- Open a workspace folder containing multiple .NET projects
- Analyze all projects at once
- Coordinate package version updates across projects
- Perfect for monorepos and microservice architectures
When GitHub Copilot CLI is installed and available, the application provides:
- Security Analysis: Identifies packages with known vulnerabilities
- Breaking Change Detection: Warns about updates that may break your code
- Smart Version Selection: Recommends optimal versions based on stability and compatibility
- Upgrade Guidance: Provides migration steps and notes for complex updates
- Priority Assessment: Automatically prioritizes critical security updates
Without Copilot CLI, the app falls back to basic recommendations.
GITHUB_TOKEN: (Optional) Set this for accessing private repositories and higher API rate limits
repo-upgrader/
├── main.js # Electron main process
├── preload.js # Preload script for secure IPC
├── copilot-service.js # GitHub Copilot SDK integration
├── index.html # Main UI template
├── styles.css # Application styles
├── renderer.js # Renderer process (UI logic)
└── package.json # Project configuration
- Electron: Cross-platform desktop application framework
- GitHub Copilot SDK: AI-powered code analysis and recommendations
- Octokit: GitHub REST API client
- HTML/CSS/JavaScript: Frontend implementation
Phase 4 Complete! The application now includes:
- ✅ GitHub Copilot SDK integration for intelligent package analysis
- ✅ AI-powered security vulnerability detection
- ✅ Breaking change analysis and upgrade guidance
- ✅ Smart priority assessment
Planned features:
- NuGet API integration for fetching actual latest versions
- Automatic pull request creation with package updates
- Support for multiple .NET project types (packages.config, etc.)
- Enhanced error handling and logging
- Unit and integration tests
ISC