mirror of
https://github.com/johndoe6345789/metabuilder.git
synced 2026-04-24 22:04:56 +00:00
Complete implementation of accessibility utilities across fakemui components: **New Files**: - src/utils/accessibility.ts - Core accessibility utilities (moved from legacy) - src/utils/accessibility.module.scss - Accessibility SCSS styles - src/utils/useAccessible.ts - React hooks for accessibility: * useAccessible() - Generate test IDs and ARIA attributes * useKeyboardNavigation() - Handle keyboard events * useFocusManagement() - Programmatic focus control * useLiveRegion() - Screen reader announcements * useFocusTrap() - Focus trapping for modals **Component Updates**: - Button.tsx - Added data-testid and ARIA support via useAccessible hook - TextField.tsx - Added data-testid, aria-invalid, aria-describedby support **Documentation**: - docs/ACCESSIBILITY_INTEGRATION.md - Complete integration guide with examples **Features**: - 50+ preset test ID generators (form, canvas, settings, navigation, etc.) - ARIA attribute patterns for buttons, toggles, dialogs, tabs, live regions - Keyboard navigation helpers (Enter, Escape, Arrow keys, Tab) - Accessibility validators (hasLabel, isKeyboardAccessible, etc.) - Fully typed TypeScript with AccessibilityFeature, Component, Action types All components now support reliable testing via data-testid and screen reader access via ARIA attributes. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
7.3 KiB
7.3 KiB
Workflow Plugins - Dependency Management Guide
Last Updated: 2026-01-23 Status: Complete - Ready for Use
Quick Reference
| Language | File | Purpose | Status |
|---|---|---|---|
| Python | python/requirements.txt |
Base dependencies (all plugins) | ✓ Created |
| Python | python/requirements-backend.txt |
Backend plugin dependencies | ✓ Created |
| Python | python/requirements-web.txt |
Web plugin dependencies | ✓ Created |
| Python | python/requirements-notifications.txt |
Notification plugin dependencies | ✓ Created |
| Python | python/requirements-packagerepo.txt |
Package repository plugin dependencies | ✓ Created |
| Python | python/requirements-testing.txt |
Testing plugin dependencies | ✓ Created |
| Python | python/requirements-tools.txt |
Tools plugin dependencies | ✓ Created |
| Python | python/requirements-dev.txt |
Development tools (all categories) | ✓ Created |
| Go | go/go.mod |
Root module definition | ✓ Created |
| Go | go/go.work |
Workspace coordination | ✓ Created |
| Go | go/DEPENDENCIES.md |
Detailed documentation | ✓ Created |
| TypeScript | ts/ |
Analyzed for consistency | 94% compliant |
Python Plugin Setup
Install All Python Dependencies
cd workflow/plugins/python
pip install -r requirements.txt
Install Category-Specific Dependencies
# Backend plugins (OpenAI, Slack, GitHub, Discord)
pip install -r requirements-backend.txt
# Web plugins (Flask, web server)
pip install -r requirements-web.txt
# Notification plugins (Slack, Discord)
pip install -r requirements-notifications.txt
# Package repository plugins
pip install -r requirements-packagerepo.txt
# Testing plugins
pip install -r requirements-testing.txt
# Tools plugins
pip install -r requirements-tools.txt
Install Development Tools
pip install -r requirements-dev.txt
Verify Python Installation
python -c "import openai, slack_sdk, discord, flask, pydantic, jwt, pytest"
echo "All dependencies installed successfully!"
Go Plugin Setup
Initialize Go Workspace
cd workflow/plugins/go
go mod download
go mod tidy
Build All Go Plugins
go build ./...
Test All Go Plugins
go test ./...
Verify Go Module
go mod verify
Key Features of Go Plugins
- Zero external dependencies (except core workflow interface)
- All plugins use only Go standard library
- Minimal compiled size
- Fast build times
- Cross-platform compatible
TypeScript Plugin Overview
Current Status
- Total Plugins: 25 package.json files
- Compliance: 94% (15/16 with consistent versioning)
- Issue: 1 plugin uses
workspace:*instead of^3.0.0
Dependency Consistency
- Standard Pattern:
@metabuilder/workflow: ^3.0.0(15 plugins) - Non-Standard Pattern:
@metabuilder/workflow: workspace:*(1 plugin) - Location of Issue:
ts/integration/smtp-relay/package.json
Additional TypeScript Dependencies
nodemailer: ^6.9.7(SMTP relay plugin)node-fetch: ^3.0.0(HTTP request plugin)
Dependency Summary
Python: 9 Unique Dependencies
Core:
✓ python-dotenv>=1.0.0 (environment variables)
✓ tenacity>=8.2.3 (retry logic)
API Clients:
✓ openai>=1.3.0 (OpenAI integration)
✓ slack-sdk>=3.23.0 (Slack integration)
✓ PyGithub>=2.1.1 (GitHub integration)
✓ discord.py>=2.3.2 (Discord integration)
Web Framework:
✓ Flask>=3.0.0 (web framework)
✓ requests>=2.31.0 (HTTP client)
Data Processing:
✓ pydantic>=2.5.0 (validation)
✓ PyJWT>=2.8.1 (JWT tokens)
Go: 0 External Dependencies
All 51 Go plugins use only:
✓ Go standard library
✓ github.com/metabuilder/workflow (core interface)
TypeScript: 2-3 Unique Dependencies
Core:
✓ @metabuilder/workflow: ^3.0.0 (15/16 plugins)
Integration-Specific:
✓ nodemailer: ^6.9.7 (smtp-relay)
✓ node-fetch: ^3.0.0 (http-request)
Plugin Statistics
By Language
| Language | Plugin Count | Categories | External Deps |
|---|---|---|---|
| Python | 138 | 15 | 9 |
| Go | 51 | 15 | 0 |
| TypeScript | 25 | 9 | 2-3 |
| TOTAL | 214 | — | — |
Python Categories (15 total)
- backend (15 plugins)
- control (4 plugins)
- convert (7 plugins)
- core (7 plugins)
- dict (6 plugins)
- list (7 plugins)
- logic (9 plugins)
- math (10 plugins)
- notifications (3 plugins)
- packagerepo (12 plugins)
- string (10 plugins)
- test (5 plugins)
- tools (7 plugins)
- utils (7 plugins)
- var (4 plugins)
Go Categories (14 total)
- control (1 plugin)
- convert (7 plugins)
- core (1 plugin)
- dict (6 plugins)
- list (7 plugins)
- logic (9 plugins)
- math (4 plugins)
- notifications (1 plugin)
- string (8 plugins)
- test (5 plugins)
- tools (1 plugin)
- utils (1 plugin)
- var (4 plugins)
- web (1 plugin)
Installation Verification Commands
Python
# Full verification
pip install -r workflow/plugins/python/requirements.txt
python -m pytest workflow/plugins/python/*/*/
# Per-category verification
for category in backend web notifications packagerepo testing tools; do
pip install -r workflow/plugins/python/requirements-${category}.txt
done
Go
# Full verification
cd workflow/plugins/go
go mod verify
go build ./...
go test ./...
TypeScript
# Check consistency (before standardization)
npm --prefix workflow/plugins/ts run audit:dependencies
Next Steps
Recommended Actions
- Python: Test installation with
pip install -r requirements.txt - Go: Initialize workspace with
go mod download && go mod tidy - TypeScript: Decide on standardization approach for smtp-relay plugin
- CI/CD: Add dependency checks to continuous integration
- Documentation: Create per-plugin dependency documentation
Configuration for CI/CD
Python (GitHub Actions)
- name: Install Python dependencies
run: pip install -r workflow/plugins/python/requirements.txt
- name: Verify imports
run: python -m py_compile workflow/plugins/python/*/*.py
Go (GitHub Actions)
- name: Verify Go modules
run: |
cd workflow/plugins/go
go mod verify
go build ./...
Troubleshooting
Python: Import Errors
# Reinstall with upgrade
pip install --upgrade -r workflow/plugins/python/requirements.txt
# Verify specific package
python -c "import openai; print(openai.__version__)"
Go: Module Conflicts
# Clean and tidy
cd workflow/plugins/go
go clean -modcache
go mod tidy
go mod download
TypeScript: Version Mismatches
# Reinstall dependencies
cd workflow/plugins/ts
npm install
npm run build
Documentation References
- Python Details: See
/workflow/plugins/python/requirements.txtheader - Go Details: See
/workflow/plugins/go/DEPENDENCIES.md - Setup Report: See
/txt/plugin_dependency_setup_2026-01-23.txt
Support
For questions or issues with workflow plugin dependencies:
- Check the category-specific requirements files
- Review the DEPENDENCIES.md files in each language directory
- See the setup report for detailed analysis
Created: 2026-01-23 Status: Complete and Ready for Use Next Review: Recommended after first installation/build cycle