A high-performance application for testing and validating Redis Access Control List (ACL) rules with real-time command analysis and interactive visual feedback.
Note: Available as both a native desktop application and web/Docker deployment. Desktop apps feature auto-updates, offline support, and native performance without requiring Python installation.
๐ Visit the Wiki for comprehensive guides, tutorials, and documentation.
๐ New to Redis ACL Builder? Check out the Getting Started Guide in the wiki for a complete walkthrough.
๐ฆ Download Latest Release - Signed and notarized installers
Features: No Python required โข Auto-updates โข Offline support โข Native performance
๐ Detailed installation instructions: See the Installation Guide in the wiki.
๐ฑ Installation Instructions (Click to expand)
macOS:
# Download the .dmg for your architecture
# - Redis-ACL-Builder-1.0.1-arm64.dmg (Apple Silicon - M1/M2/M3)
# - Redis-ACL-Builder-1.0.1-x64.dmg (Intel Macs)
# Install:
# 1. Open the DMG file
# 2. Drag "Redis ACL Builder" to Applications folder
# 3. Launch from Applications (app is signed and notarized - no security warnings!)Windows:
# Download Redis-ACL-Builder-1.0.1-x64.exe
# Run the installer and follow the prompts
# App will be available in Start MenuLinux:
# Download Redis-ACL-Builder-1.0.1-x86_64.AppImage
chmod +x Redis-ACL-Builder-1.0.1-x86_64.AppImage
./Redis-ACL-Builder-1.0.1-x86_64.AppImage๐ณ Docker Hub Repository - Latest builds with automated CI/CD
# Run the latest version directly from Docker Hub
docker run -d --name redis-acl-builder -p 7380:7380 --restart unless-stopped markotrapani608/redis-acl-builder:latest
# Access the application
open http://localhost:7380๐ Upgrade Instructions (Click to expand)
# Simple one-liner (stops, removes, and recreates with latest image)
Ready to test your Redis ACL rules? Download the desktop app or
try it in your browser!
# Or use docker-compose (recommended)
docker compose pull && docker compose up -dFor developers: Python 3.7+ required
๐ป Development Setup (Click to expand)
-
Download/Clone the project:
git clone https://github.com/markotrapani/redis-acl-builder.git cd redis-acl-builder -
Create virtual environment:
python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate
-
Install dependencies:
pip install -r backend/requirements.txt
-
Run the application:
# Option 1: Use helper script ./scripts/run-web.sh # Option 2: Run directly python backend/app.py
-
Open your browser: Navigate to
http://localhost:7380
Redis ACL Builder is a powerful tool that helps developers and system administrators understand and test Redis ACL configurations before deploying them to production.
โ ๏ธ Important: This tool is designed based on Redis OSS (Open Source) command sets, which are also compatible with Redis Stack. Redis Enterprise may restrict certain OSS commands (cluster management, replication, dangerous operations) for security reasons. If a command test fails in Redis Enterprise, this is expected behavior - the command exists in OSS but is restricted in Enterprise. See Redis Enterprise vs OSS for details.
Core Capabilities:
- โ Parse and validate Redis ACL rule syntax with real-time feedback
- โ Test commands and keyspace patterns with dual testing interface
- โ Visualize granted/blocked commands organized by categories
- โ Support for Redis 7 (311 commands) and Redis 8 (446 commands including modules)
- โ Light/Dark mode theme system with localStorage persistence
- โ Available as web app (Docker/local) and native desktop app (macOS, Windows, Linux)
๐ Complete Usage Guide: For detailed usage instructions, examples, and best practices, see the User Guide in the wiki.
โ ๏ธ Important: This tool is designed for testing and validating ACL rules in development/staging environments. Always test thoroughly before applying ACL rules to production Redis instances.
- Select Redis Version: Choose between Redis 7 or Redis 8 using the radio buttons
- Enter ACL Rule: Type your ACL rule in the text area (left column)
- Interactive Management:
- Click granted commands (center column) to revoke them
- Click blocked commands (right column) to grant them
- Use Submit Changes button when manually editing rules
- Keyboard Shortcuts:
- Press Enter to submit pending changes
- View Results: See granted and blocked commands organized by categories and individual commands
- Test Commands: Use the command tester at the top to check specific commands
- Search & Filter: Use the search bars at the top of each column to filter categories and commands
๐ก Tip: Use the dual testing interface at the top to test both commands and key patterns simultaneously. Results show exactly which permissions are granted or denied.
๐ ACL Rule Syntax (Click to expand)
๐ Full syntax reference: See the User Guide for comprehensive ACL syntax documentation.
The application supports standard Redis ACL syntax:
+@read- Grant all read commands-@write- Deny all write commands+@all- Grant all commands+get- Grant specific GET command-flushdb- Deny specific FLUSHDB command
~user:*- Allow access to keys matching pattern~cache:*- Allow access to cache keys
Read-only access:
+@read ~data:*
Application user with restrictions:
+@read +@write -@dangerous -@admin ~app:* ~session:*
Developer access:
+@all -flushdb -flushall -shutdown
Monitoring user:
+@read +info +ping +client
Analytics user:
+@read +@bitmap +@hyperloglog -@admin
Use the Command Tester section to:
- Enter a Redis command (e.g.,
GET,SET,HGETALL) - Click "Test Command"
- See if the command is allowed and why
- View which categories the command belongs to
# Set production environment
export FLASK_ENV=production
export FLASK_DEBUG=False
# Run with Gunicorn
pip install gunicorn
gunicorn --bind 0.0.0.0:7380 --workers 4 app:appSee Quick Start section above for Docker deployment options.
Additional deployment configurations:
# Specific version
docker run -d --name redis-acl-builder -p 7380:7380 --restart unless-stopped markotrapani608/redis-acl-builder:1.0.1
# Custom port mapping
docker run -d --name redis-acl-builder -p 8080:7380 --restart unless-stopped markotrapani608/redis-acl-builder:latest๐ API Endpoints (Click to expand)
๐ Complete API documentation: See the API Reference for detailed endpoint documentation, request/response schemas, and examples.
The application provides a RESTful API for programmatic access:
POST /api/parse- Parse ACL rule and return granted commandsPOST /api/test-command- Test if a specific command is allowedPOST /api/validate-rule- Validate ACL rule syntaxPOST /api/command-info- Get information about a commandGET /api/categories- Get all available categoriesPOST /api/search-commands- Search commands with patternsGET /health- Application health check
# Parse an ACL rule
curl -X POST http://localhost:7380/api/parse \
-H "Content-Type: application/json" \
-d '{"rule": "+@read -@dangerous", "version": "redis7"}'
# Test a command
curl -X POST http://localhost:7380/api/test-command \
-H "Content-Type: application/json" \
-d '{"rule": "+@read", "command": "GET", "version": "redis7"}'
# Validate rule syntax
curl -X POST http://localhost:7380/api/validate-rule \
-H "Content-Type: application/json" \
-d '{"rule": "+@read +get", "version": "redis7"}'๐ป Development (Click to expand)
๐ Developer documentation: See the Development Guide for detailed setup instructions, architecture overview, and contribution guidelines.
-
Fork/Clone the repository
-
Create virtual environment:
python -m venv venv source venv/bin/activate -
Install dependencies:
pip install -r backend/requirements.txt npm install # For E2E testing -
Run the application:
# Option 1: Use helper script ./scripts/run-web.sh # Option 2: Run directly python backend/app.py
-
Run tests:
# Backend tests pytest tests/backend/ -v # E2E tests npx playwright test --config=tests/playwright.config.js
- Backend:
backend/- Python Flask app, helpers, models - Frontend:
frontend/- Static assets (CSS/JS) and templates - Scripts:
scripts/- Helper scripts (run-web.sh, build-web.sh) - Tests:
tests/backend/(pytest) andtests/e2e/(Playwright) - Electron:
electron/- Desktop app wrapper (see docs/ROADMAP.md)
๐งช Testing (Click to expand)
๐ Testing guidelines: See the Development Guide for detailed testing documentation and contribution workflow.
The project includes a comprehensive test suite with 223 tests covering all functionality.
- Overall Coverage: 85%
- Core Logic (helpers/): 95-100%
- API Endpoints: 78%
- All tests passing: โ
# Run all backend tests
pytest tests/backend/ -v
# With coverage
pytest tests/backend/ --cov=backend --cov-report=html# Run Playwright E2E tests
npx playwright test --config=tests/playwright.config.js
# Run in UI mode
npx playwright test --ui --config=tests/playwright.config.js-
Unit Tests: Core functionality validation
- Data loading and indexing
- ACL rule parsing accuracy
- Permission evaluation logic
- Search and validation features
-
API Tests: All endpoint validation
- Request/response handling
- Error cases and status codes
- Version switching
- Input validation
-
Integration Tests: End-to-end scenarios
- Complete workflow testing
- Complex ACL rule patterns
- Real-world use cases
๐ CI/CD & Build System (Click to expand)
All automated builds are now managed in the redis-acl-builder repository.
Repository: github.com/markotrapani/redis-acl-builder/actions
- Workflow:
.github/workflows/docker-publish.yml - Triggers: Version tags (
v*.*.*,v*.*.*-alpha,v*.*.*-beta) - Platforms: linux/amd64, linux/arm64 (multi-arch)
- Outputs: Docker images published to Docker Hub
- Features: Automated CVE scanning with Docker Scout
- Workflow:
.github/workflows/build-desktop.yml - Triggers: Version tags (
v*.*.*,v*.*.*-desktop*) + manual dispatch - Platforms: Windows (x64), macOS (ARM64 + Intel x64), Linux (x64)
- Outputs:
- Windows: NSIS installer + ZIP
- macOS: DMG + ZIP (separate ARM64 and Intel builds)
- Linux: AppImage + .deb package
- Features: PyInstaller backend bundling, platform-specific installers
Important: CI/CD workflows were migrated from the parent
marko-projectsrepository toredis-acl-builderon 2025-10-15.
- Old builds (pre-October 2025): Available at github.com/markotrapani/marko-projects/actions (historical reference only)
- New builds (October 2025+): All builds now run in github.com/markotrapani/redis-acl-builder/actions
This consolidation provides better organization, with each submodule owning its own build pipelines.
Fast macOS ARM64 build (debugging/testing - ~2 minutes):
git tag v2.1.8-test && git push origin v2.1.8-test
git tag v2.1.8-debug && git push origin v2.1.8-debugFull multi-platform build (production - ~5 minutes):
git tag v2.1.8-beta && git push origin v2.1.8-beta # macOS, Windows, Linux + Docker
git tag v2.1.8-alpha && git push origin v2.1.8-alpha
git tag v2.1.8 && git push origin v2.1.8Docker build only (web app):
git tag v2.1.8-docker && git push origin v2.1.8-dockerDocumentation updates only:
git tag v2.1.8-docs && git push origin v2.1.8-docs๐ Project Structure (Click to expand)
redis-acl-builder/
โโโ backend/ # Flask application
โ โโโ app.py # Main Flask app
โ โโโ helpers/ # Core logic modules
โ โ โโโ data_loader.py # Redis command database
โ โ โโโ acl_parser.py # ACL parsing engine
โ โโโ models/ # Data models
โ โโโ requirements.txt # Python dependencies
โโโ frontend/ # Web interface
โ โโโ static/
โ โ โโโ css/ # Modular CSS (6 files)
โ โ โโโ js/ # Modular ES6 JS (13 files)
โ โโโ templates/
โ โโโ index.html # Main interface
โโโ electron/ # Desktop app wrapper
โ โโโ main.js # Electron main process
โ โโโ preload.js # Preload script
โ โโโ package.json # Electron config
โโโ scripts/ # Helper scripts
โ โโโ run-web.sh # Start web app
โ โโโ build-web.sh # Build script
โโโ tests/ # Test suites
โ โโโ backend/ # Backend tests (pytest)
โ โโโ e2e/ # E2E tests (Playwright)
โโโ docs/ # Documentation
โโโ ROADMAP.md # Product roadmap (includes desktop app details)The application features modern, modular frontend and backend architectures with a monorepo structure:
- Monorepo: Organized into
backend/,frontend/,electron/,scripts/, andtests/directories - single source of truth for both web app and Electron desktop app - Frontend: Modular ES6 JavaScript (13 modules) + Optimized Modular CSS (6 modules) with professional desktop-like resize experience
- Backend: Flask with comprehensive Redis ACL parsing and API layer
- Database: Hardcoded Redis command databases based on Redis OSS (open
source)
- Redis 7 OSS: 379 commands across 21 categories (admin, cluster, replication, latency, module management, etc.)
- Redis 8 OSS: 446 commands across 29 categories (includes RediSearch, JSON, TimeSeries, Bloom, and other module commands)
- Note: Redis Enterprise blocks certain commands (cluster management, replication, dangerous operations) for security. If a command test fails in Redis Enterprise, this is expected behavior - the command exists in OSS but is restricted in Enterprise.
- Testing: 65 automated E2E tests (Playwright) with 100% pass rate
- Type Safety: Professional type annotations with 94% reduction in Pylance strict errors (comprehensive typing across all modules)
- UI/UX: Elegant resizable container system with real-time content synchronization, drag-drop panel reordering, and perfect responsive design
- ๐ฉบ Health endpoint repaired: Fixed
/healthendpoint and aligned backend tests so smoke checks pass against both Docker and desktop builds. - ๐ฆ Version sync:
package-lock.jsonand release artifacts now pinned to1.0.1consistently. - ๐ Docs: Confluence guide cleaned up to avoid version-number staleness.
- ๐ Production Ready: First non-beta release after extensive testing
- 65/65 E2E tests passing (100%)
- 227+ backend tests passing
- Comprehensive manual testing completed
- ๐ข Enterprise/OSS Mode Toggle: Toggle between Redis deployment types
- Purple gradient for OSS mode, gold gradient for Enterprise mode
- Dynamic command counts: Redis 7 (379 OSS / 305 ENT), Redis 8 (488 OSS / 440 ENT)
- ๐ฅ๏ธ Multi-Platform Desktop Apps: Signed, notarized, auto-updating
- macOS (ARM64 + Intel) - Signed and notarized
- Windows (x64) - NSIS installer
- Linux (x64) - AppImage
- ๐ณ Docker Deployment: Multi-arch images on Docker Hub
- ๐ Comprehensive Documentation: Wiki, API reference, user guides
- ๐ Bug Fix: URL parameter synchronization
- Fixed URL not updating when switching between Redis 7 and Redis 8
- URL now correctly reflects selected Redis version (e.g.,
?version=redis8) - Ensures URL state stays in sync with application state
- ๐ข Enterprise/OSS Mode Toggle: New mode selector for Redis deployment types
- Toggle between OSS (all commands) and Enterprise (cloud-restricted) modes
- Purple gradient for OSS mode, gold gradient for Enterprise mode
- Shows "Redis E. X" prefix when in Enterprise mode
- Command counts update in real-time: Redis 7 (379 OSS / 305 ENT), Redis 8 (488 OSS / 440 ENT)
- โจ UI Enhancements: Polished toggle interface
- Matches Redis Version toggle styling for consistency
- Proper layout with toggles side-by-side and version info below
- Text colors adapt to background (black on white pill, white on colored background)
- No text wrapping with
white-space: nowrapon version detail
- ๐ง Mode Switching Logic: Seamless mode transitions
- Preserves ACL rules when switching modes
- Re-parses rules with new command set automatically
- localStorage persistence and URL parameter support
- Updates Interactive ACL Builder lists in real-time
- โ
Test Coverage: 100% passing (42/42 E2E tests)
- 14 new tests specifically for Enterprise/OSS mode toggle
- All core functionality tests updated and passing
- ๐ฆ Category Organization: Improved category panel structure and clarity
- Separated categories into "Data Types" and "ACL/Operational" sections
- Section headers clearly indicate category type for better navigation
- Maintains priority ordering within each section (explicit โ implicit, full โ partial)
- ๐ Category Search Refinement: Enhanced search experience
- Category section headers automatically hide during active searches
- Matched categories display prominently without visual clutter
- Perfect restoration of original layout when search is cleared
- DOM cloning ensures button positions remain stable
- ๐ Accurate Category Counts: Fixed category count display logic
- Count headers now accurately reflect all visible categories
- Includes both fully and partially granted/blocked categories in totals
- Eliminates confusing discrepancies between count and visible buttons
- ๐จ Button Layout Optimization: Improved category button wrapping
- Better space utilization with
flex: 0 1 autoandmin-width: fit-content - Reduced awkward gaps and orphaned buttons
- Natural wrapping behavior that respects content width
- Better space utilization with
- ๐ง Tooltip Positioning: Smart tooltip expansion behavior
- Tooltips stay near trigger button when expanding (instead of always jumping to top)
- Falls back to viewport top only when necessary to prevent overflow
- Improved user experience when exploring command details
View Previous v2.x Releases
- ๐จ UI/UX Improvements (from v2.3.2-beta): Version badge and update button
repositioning
- Moved version badge from bottom-left to top-left corner for better visibility
- Positioned "Check for Updates" button to right of version badge with optimal spacing
- Fine-tuned heights and padding for visual consistency
- ๐ฆ Update Modal Cleanup (from v2.3.2-beta): Simplified Docker upgrade
experience
- Removed redundant "Alternative: Pull and restart manually" section
- Added browser refresh instruction for Docker users after upgrade
- Reduced minified JS by 31.7% (5.71 KB โ 3.90 KB)
- ๐ Documentation Consolidation: Complete version synchronization
- Updated all version references across README.md, CLAUDE.md, ROADMAP.md
- Added comprehensive v2.3.2-beta and v2.3.4-beta accomplishment tracking
- Ensures complete documentation parity between Docker and Desktop platforms
- ๐จ UI/UX Improvements: Version badge and update button repositioning
- Moved version badge from bottom-left to top-left corner for better visibility
- Positioned "Check for Updates" button to right of version badge with optimal spacing
- Fine-tuned heights and padding for visual consistency
- ๐ฆ Update Modal Cleanup: Simplified Docker upgrade experience
- Removed redundant "Alternative: Pull and restart manually" section
- Added browser refresh instruction for Docker users after upgrade
- Reduced minified JS by 31.7% (5.71 KB โ 3.90 KB)
- โ
Auto-Update UX Refinement: Improved update notification behavior
- Fixed annoying "You have the latest version!" dialog that appeared on EVERY app startup
- Silent background checks at startup (only shows dialog if update IS available)
- Manual "Check for Updates..." always shows dialog for all outcomes
- Matches standard desktop app auto-update UX patterns (Slack, VS Code, etc.)
- ๐ macOS Notarization: Professional Apple code signing with App Store
Connect API
- Signed and notarized installers - no security warnings on macOS
- Full trust chain validation for macOS Gatekeeper
- โ
Auto-Update System: Complete implementation with update detection and
download
- Automatic update checks on app launch
- Manual update checks via application menu
- User-friendly download and install dialogs with progress tracking
- ๐ Production-Ready: All platform builds working with auto-update
infrastructure
- macOS (ARM64 + Intel): Signed, notarized DMG installers
- Windows: NSIS installers
- Linux: AppImage + .deb packages
- ๐ฆ Artifact Management: Automated cleanup workflow to manage storage costs
- Weekly cleanup of old build artifacts
- Preserves last 3 releases for auto-update functionality
- Reduces GitHub Actions storage costs by ~70%
- ๐ Debug Build Configuration: Detached DevTools for debugging without UI
disruption
-debugtags open DevTools in separate window (doesn't crush main app)- Marker-based detection (
.debug-buildfile created during builds) - Perfect for debugging and testing without obstructing the interface
- โก Build Performance: 20-30% faster builds with aggressive caching
- Python pip dependency caching
- PyInstaller build artifact caching
- Reduced multi-platform build time from ~5m17s to ~4min
- ๐งน Automated Release Cleanup: Auto-delete source code archives
- GitHub's auto-generated source archives removed automatically
- Cleaner release pages without manual intervention
- ๐ฆ Reduced Release Bloat: ~40% fewer files per release
- macOS: DMG only (removed ZIP)
- Windows: NSIS installer only (removed ZIP)
- Linux: AppImage only (removed .deb)
- Streamlined releases with only essential installers
- ๐ท๏ธ Enhanced Tag Strategy: Clear separation of build types
-test: Local builds only (npm run build:mac) - no workflows-test-release: ARM64 + GitHub release for auto-update testing-debug: ARM64 with detached DevTools-desktop: Multi-platform desktop-only (no Docker rebuild)-beta/-alpha: Full production releases (Docker + all platforms)
- ๐จ UI Enhancements: Version indicator and consistent panel borders
- Version indicator in bottom-left corner (e.g., "v2.1.9-beta")
- Consistent light gray borders across all panels
- Better visual hierarchy and polish
- ๐ Auto-Update System: Complete auto-update infrastructure with
electron-updater
- โ Automatic update detection on app launch
- โ Manual update check via application menu
- โ User-friendly download/install dialogs with progress tracking
- โ GitHub releases integration for update distribution
โ ๏ธ Note: Installation requires code signing (Apple Developer account)
- โก Fast Build Workflow: Dedicated macOS ARM64-only workflow for debugging
- 2-minute builds vs 5-minute multi-platform builds
- Auto-publishes to GitHub releases on
-test/-debugtags - Perfect for rapid iteration and testing
- ๐ท๏ธ Smart Tag Strategy: Tag suffixes control which builds run
-test,-debug: Fast macOS ARM64 only-beta,-alpha: Full multi-platform + Docker-docker: Docker only-docs: No builds
- ๐ฆ Multi-Platform Ready: macOS (ARM64 + Intel), Windows (NSIS + ZIP), Linux (AppImage + .deb)
- ๐ Code Signing Infrastructure: Ready for Apple Developer setup
- Entitlements and notarization scripts prepared
- Auto-updates will work automatically once code signing enabled
- ๐จ Intelligent Command Highlighting: Category tooltips display relevant commands with color-coded bold text
- ๐ง Parameter Passing Fix: Resolved function wrapper issues preventing bold/color styling
- โ Bug Fix: Tooltip expansion correctly displays full command list
- ๐ฅ๏ธ Native Desktop App: macOS desktop app with Electron + PyInstaller backend bundling
- ๐ง Command Sort Order: Fixed sorting to prioritize explicit commands before implicit
- ๐พ Rule Preservation: Rules preserved on page refresh
- ๐ Search Enhancements: Fuzzy relevance scoring and improved UI feedback
View Full Version History
- ๐ Critical Backend Fix: Fixed undefined
warningsvariable error inoptimize_rule(michael.tchistopolskii@redis.com)method - ๐ Optimization Persistence: Optimization suggestions now remain visible while typing
- ๐ง Backend Category Intelligence: Complete category analysis engine classifies categories as fully granted, partially granted (with percentages), or blocked based on actual command permissions
- ๐ API Enhancement:
/api/parseendpoint now returns comprehensive category analysis includinggranted_categories,partial_categories(with grant counts and percentages), andblocked_categories - โ
Test Suite Explosion: Expanded from 127 โ 195 passing tests (+68 new
tests, 0 skipped)
- 12 comprehensive API-level category analysis tests
- 19 button interaction tests validating UI logic
- 16 @all category behavior tests
- 8 ACL precedence validation tests
- ๐งน Code Cleanup: Removed 16 obsolete skipped tests (-319 lines) with proper documentation
- ๐ง Test Fixes: Fixed all test signature mismatches and API response structure assertions
- ๐ Coverage Improvement: Test coverage increased from 82% โ 85% (API coverage: 71% โ 78%)
- ๐ Consistent Versioning: Standardized version prefix usage across all documentation
- ๐ท๏ธ Git Tags: All git tags use
vprefix (v1.21.3-beta) - ๐ณ Docker Tags: All Docker image tags use no prefix (1.21.3-beta)
- ๐ Documentation: Clear separation between git and Docker version references
- ๐งน Cleanup: Removed inconsistent
1.16.0-betatag, replaced withv1.16.0-beta
- โจ Zero Flash Rendering: Eliminated visual flash when testing panels are in custom order
- ๐ฏ CSS Order Properties: Uses flexbox
orderproperty set by inline script for instant correct rendering - ๐ Performance: Testing sections now render in correct order from the first frame
- ๐ง Smart Detection: Only applies ordering when panels differ from default position
- โก 42% Faster Builds: Multi-arch Docker builds reduced from 2m 40s to ~1m 30s
- ๐ฆ Split Dependencies: Separated production (
requirements-prod.txt) and test (requirements-test.txt) dependencies - ๐ ARM64 Optimization: Eliminated coverage compilation (100 seconds saved on ARM64 builds)
- ๐ Coverage Upgrade: Updated to 7.6.9 with pre-built ARM64 wheels
- ๐ณ Smaller Production Image: Docker image excludes test dependencies for faster deployments
- ๐ ๏ธ Dev Workflow Unchanged: Local development still uses
pip install -r requirements.txt
- ๐จ Complete Drag-and-Drop System: Full drag-and-drop reordering for testing sections
- โฎโฎ Grabbable Handles: Visual drag handles matching three-column panel design
- โจ Smooth Animations: Professional animations with flash prevention and localStorage persistence
- ๐ฏ Perfect UX: Universal pointer-events approach disables all hover effects during drag
- ๐ CRITICAL FIX: Added missing
models/directory to Docker image (ModuleNotFoundError resolved) - โ Production Ready: Docker image now fully functional with all required Python modules
โ ๏ธ Note: Docker images v1.20.0 through v1.20.3 were non-functional and removed from Docker Hub
-
Rule Selectors: Complete frontend & backend support
- Full UI integration for selector syntax with proper command display
- Real-time validation with "Selector #1:" error prefixes
- Enhanced testing showing which selector granted access
- Perfect selector isolation with informative error messages
- OR logic implementation
-
Advanced Key Permissions: Bug fixes & improvements
- Full keyspace access fix (no key patterns = access to all keys)
- Better error messages for permission type mismatches
- Smart isolation hints only when relevant
- Proper handling of read-write commands like GETSET
- ๐ Documentation Workflow: Comprehensive synchronization process preventing version drift across releases
- ๐ณ Docker Hub Prominence: Direct repository link and quick-start deployment prominently featured
- โ๏ธ Mandatory Process: Systematic version update workflow ensuring documentation accuracy
- ๐ Pylance Compliance: 94% reduction in strict type checking errors across all modules
- ๐ Comprehensive Annotations: Full type annotations for Flask routes, helper functions, and data structures
- ๐ฏ Python 3.13 Support: Updated to latest Python version with enhanced type safety features
- โ Zero Breaking Changes: Maintained 100% test coverage throughout type safety implementation
- ๐ Automated Docker Hub: Multi-architecture builds (AMD64/ARM64) with automated publishing
- ๐ Security Scanning: Docker Scout CVE analysis with vulnerability management
- ๐ท๏ธ Smart Tagging: Automatic version tagging with :latest, :beta, and semver tags
- โก Optimized Builds: Docker layer caching reducing build times from 15+ to 5-10 minutes
Special thanks to Michael Tchistopolskii (michael.tchistopolskii@redis.com) for substantial improvement ideas and architectural guidance that helped shape the development of this application.
This project is provided as-is for educational and development purposes.
For questions, feedback, or issues:
- FAQ: Check the Frequently Asked Questions wiki page
- Troubleshooting: See the Troubleshooting Guide for common issues and solutions
- Contact: Marko Trapani - Project Developer
- Technical Issues: Run
python test_imports.pyfor diagnostics - Test Verification: Check results with
./tests/run_tests.sh - Docker Deployment: See Docker Hub Repository
- Setup Issues: Ensure all files are in the correct locations per installation guide
