Explore Azure DevOps permissions -- fast, reliable, and enterprise-ready.
A comprehensive dashboard for managing Azure DevOps repository permissions and user access. This application provides a visual interface to explore projects, repositories, security groups, and user permissions within an Azure DevOps organization.
graph LR
A[React Frontend] <--> B[Flask API<br/>+ Cache Layer]
B <--> C[Azure DevOps REST APIs]
subgraph Local / Hosted App
A
B
end
C --> Azure[Azure DevOps Service]
- Projects Overview: View and select from all available projects in your Azure DevOps organization
- Repository Intelligence: Browse repositories with contextual metadata and access surface visibility.
- Security Groups Explorer: Inspect security groups and user composition with clarity.
- Permission Analysis: View detailed permissions for users and groups
- Repository Members: See who has access to specific repositories and their roles
- Enterprise Export: Generate Excel reports for compliance reviews, audits, and offline analysis.
- Cache Management: Clear cache to ensure you're viewing the most up-to-date data
- Python with Flask API
- Azure DevOps Python SDK
- Cache management system for performance optimization
- React with Material UI
- Vite build system
- Modern responsive design with dark/light theme support
├── backend/ # Python Flask backend
│ ├── api.py # REST API endpoints
│ ├── azure_data.py # Azure DevOps data retrieval and processing
│ ├── cache.py # Caching system
│ ├── config_manager.py # Configuration management
│ ├── excel_exporter.py # Excel export functionality
│ └── permissions_report_*.py # Permission report generation
│
└── frontend/ # React frontend
├── src/
│ ├── api/ # API integration
│ ├── components/ # React components
│ └── assets/ # Static assets
└── public/ # Public files
- Python 3.8 or higher
- Node.js 16 or higher
- Azure DevOps account with appropriate access
-
Navigate to the backend directory:
cd backend -
Create a virtual environment (optional but recommended):
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate -
Install dependencies:
pip install -r requirements.txt -
Start the Flask server:
python api.pyThe API will be available at http://localhost:5000/api
-
Navigate to the frontend directory:
cd frontend -
Install dependencies:
npm install -
Start the development server:
npm run devThe application will be available at http://localhost:5173
When you first launch the application, you'll be prompted to configure your Azure DevOps connection:
- Azure DevOps Organization URL (e.g., https://dev.azure.com/your-organization)
- Personal Access Token (PAT) with appropriate permissions
These settings will be securely stored for future use.
- After configuration, the dashboard will load all available projects from your Azure DevOps organization
- Select a project to view its repositories
- Navigate through tabs to explore repositories, security groups, and permissions
- Use the clear cache button to refresh data from Azure DevOps
Contributions are welcome! Please feel free to submit a Pull Request.
Licensed under the MIT License.