A browser extension for inspecting user roles on Mendix web applications with multi-language support.
- 🔍 Role Detection: Automatically detects user roles from CSS classes
- 🌐 Multi-language Support: Available in English and Turkish
- 🔎 Role Search: Filter and search through detected roles
- 🔄 Real-time Updates: Automatically updates when roles change
- 🎨 Modern UI: Clean and user-friendly interface
- English (en) - Default
- Türkçe (tr) - Turkish
- Download or clone this repository
- Open Chrome/Edge and navigate to
chrome://extensions/ - Enable "Developer mode"
- Click "Load unpacked" and select the extension folder
- The extension will appear in your browser toolbar
- Navigate to a Mendix application
- Click the Role Inspector icon in your browser toolbar
- View detected user roles
- Use the search box to filter roles
- Change language using the dropdown in the top-right corner
mendix-role-inspector/
├── manifest.json # Extension manifest
├── popup.html # Extension popup UI
├── popup.css # Popup styles
├── popup.js # Popup functionality
├── content-script.js # Content script for role detection
├── i18n.js # Internationalization helper
├── language-manager.js # Language management
├── _locales/ # Localization files
│ ├── en/
│ │ └── messages.json # English translations
│ └── tr/
│ └── messages.json # Turkish translations
└── icons/ # Extension icons
├── icon16.png
├── icon32.png
├── icon48.png
└── icon128.png
- Role Detection: The content script scans the page's
<body>element for CSS classes starting withrole- - Message Passing: Detected roles are sent to the popup via Chrome's messaging API
- Internationalization: Uses Chrome's i18n API with fallback support for custom language switching
- Language Persistence: User's language preference is stored in Chrome's local storage
To add support for a new language:
- Create a new folder in
_locales/with the language code (e.g.,_locales/es/) - Add a
messages.jsonfile with translations - Update the
supportedLanguagesarray inlanguage-manager.js - Add the language option to the select element in
popup.html
{
"extensionName": {
"message": "Role Inspector",
"description": "Extension name"
},
"userRoles": {
"message": "User Roles",
"description": "Roles section title"
}
}- Chrome/Edge browser with Developer mode enabled
- Basic knowledge of JavaScript, HTML, and CSS
- Make changes to the source files
- Reload the extension in
chrome://extensions/ - Test the changes on a Mendix application
- ✅ Chrome (Manifest V3)
- ✅ Microsoft Edge (Manifest V3)
- ❌ Firefox (requires Manifest V2 adaptation)
- Fork the repository
- Create a feature branch
- Make your changes
- Test thoroughly
- Submit a pull request
This project is licensed under the MIT License - see the LICENSE file for details.