How lukeledesma/alchemy works
Alchemy is a macOS desktop editor for UTICOR Modbus router XML documents. Operators open or navigate to a document, inspect and edit table rows and connection settings, receive inline validation feedback, then save through a deterministic XML pipeline that repairs and regenerates preload data. The storage panel also supports folder navigation and file management. The graph reflects README-documented save and validation capabilities; their implementation details are not present in the sampled excerpts.
Main entry points: AlchemyWindow.axaml.cs Editor window · AlchemyWindow.Panel.cs Storage panel · Program.cs Application entry · AlchemyWindow.DataFlow.cs Parse and diagnostics
Components 18
Desktop editor
- Application entry
src/Alchemy/Program.cs - Avalonia app
src/Alchemy/AlchemyApp.axaml.cs - Editor window
src/Alchemy/AlchemyWindow.axaml.cs - Editor layout
src/Alchemy/AlchemyWindow.axaml - App settings
src/Alchemy/AlchemySettings.cs - Launch context
src/Alchemy.Core/ToolLaunchContext.cs
Document workflow
- Parse and diagnostics
src/Alchemy/AlchemyWindow.DataFlow.cs - UTICOR data catalog
src/Alchemy/AlchemyDataCatalog.cs - UTICOR dictionary
src/Alchemy/Data/Uticor Dictionary.txt
Storage panel
- Storage panel
src/Alchemy/AlchemyWindow.Panel.cs - Path safety rules
src/Alchemy.Core/StoragePathRules.cs
Platform integration
- Finder operations
src/Alchemy.Kit/FileManagerReveal.cs - Trash integration
src/Alchemy.Kit/MacFileTrash.cs - macOS window UI
src/Alchemy.Kit/MacTitleBar.cs - Text editing behaviors
src/Alchemy.Kit/TextBoxBehaviors.cs
Other components
- Operator
- Router XML
- Local filesystem
Connections 17
- Operator → Application entry: launches
- Application entry → Avalonia app: starts
- Operator → Editor window: edits document
- Editor window → Editor layout: renders
- Editor window → Parse and diagnostics: parses and validates
- Parse and diagnostics → UTICOR data catalog: looks up labels
- UTICOR data catalog → UTICOR dictionary: loads
- Editor window → Router XML: opens and saves
- Editor window → Storage panel: manages files
- Storage panel → Local filesystem: lists and changes
- Storage panel → Path safety rules: checks moves
- Storage panel → Finder operations: opens or reveals
- Storage panel → Trash integration: trashes entries
- Editor window → macOS window UI: aligns title bar
- Editor window → Text editing behaviors: creates editors
- Editor window → App settings: uses settings
- Application entry → Launch context: launch context