Refactor README: improve clarity, add keyboard shortcuts, and expand documentation#150
Conversation
Explain how OPC UA push-based subscriptions, scope/trend rendering, and CSV recording work at different rates. https://claude.ai/code/session_01MFmvwsS9AvPPgUuee6DM8g
…-explanation-70WPH Add documentation for signal sampling and data capture mechanism
- Consolidate hero images (one at top, scope demo moved to features) - Collapse signal sampling deep-dive, ICU dependency, and uninstall instructions behind <details> blocks - Add keyboard shortcuts quick reference table - Remove redundant horizontal rules and trim wording - Merge use cases into a single line to reduce vertical space https://claude.ai/code/session_01BiNbo8TKKu7gGSQ75g2MUY
…E3vIg Refactor README: improve clarity, add keyboard shortcuts, reorganize sections
Resolve wording conflict in install section ("Then run:" vs "Then to run:"),
keeping the more concise phrasing from main.
https://claude.ai/code/session_017mtMAWLUuP46pdNY8zqM5G
ac454b2
into
claude/fix-globalization-tests-FQIxJ
Code Review: README RefactoringThank you for this comprehensive documentation improvement! This PR significantly enhances the README's clarity and usability. Here's my detailed review: ✅ Strengths1. Excellent Information Architecture
2. Technical Accuracy & Clarity
3. User Experience Improvements
🔍 Suggestions for Improvement1. Keyboard Shortcuts Table - Context MissingThe keyboard shortcuts table doesn't indicate which view/context each shortcut applies to. This could confuse users when a key doesn't work. Suggestion: Add a "Context" column or group by section: | Key | Action | Context |
|-----|--------|---------|
| `Tab` | Cycle between panes | Global |
| `Enter` | Subscribe to selected node | Address Space View |
| `Delete` | Unsubscribe from selected variable | Monitored Variables View |
| `Space` | Toggle selection / pause scope | Monitored Variables / Scope View |Or group them: **Global:**
- `Tab` — Cycle between panes
- `Ctrl+O` / `Ctrl+S` — Open / save configuration
- `?` — Help
**Address Space View:**
- `Enter` — Subscribe to selected node
**Monitored Variables View:**
- `Delete` — Unsubscribe
- `Space` — Toggle selection
- `S` — Open scope with selected variablesThis matches the format in CLAUDE.md:1140-1179, which groups shortcuts by context. 2. Signal Sampling Deep Dive - Minor Technical ClarificationLine 51 states: "opcilloscope does not poll your OPC UA server. The server pushes value updates using OPC UA's built-in publish/subscribe mechanism." Minor clarification: The term "publish/subscribe" in OPC UA typically refers to PubSub (Part 14 of the spec), which is different from the Subscription mechanism used here (Part 4). The implementation uses OPC UA Subscriptions with MonitoredItems, not PubSub. Suggested wording: opcilloscope does **not** poll your OPC UA server. The server *pushes* value updates using OPC UA's Subscription mechanism (MonitoredItems with notifications).However, the current wording is acceptable for a general audience — just noting this for technical precision. 3. Install Section - Missing Platform PrerequisitesThe "Install" section doesn't mention that .NET runtime is bundled in the releases (if it is) or required separately. Users might wonder if they need to install .NET separately. Recommendation: Add a brief note: ## Install
Pre-compiled binaries include the .NET runtime — no additional dependencies required (except ICU on Linux).4. Keyboard Shortcuts - Incomplete CoverageThe shortcuts table is missing some keys documented in CLAUDE.md: Missing from README but in CLAUDE.md:
Suggestion: Add these to the table or create a "See 5. Use Cases - Grammar NitpickLine 25: "recording (export to CSV for reports)" The parenthetical repeats "recording" → "export" which is slightly redundant. Consider: -**Use cases:** commissioning (verify PLC tags), troubleshooting (live values during fault diagnosis), integration testing (validate OPC UA server configs), recording (export to CSV for reports).
+**Use cases:** commissioning (verify PLC tags), troubleshooting (live values during fault diagnosis), integration testing (validate OPC UA server configs), data logging (export to CSV for analysis).🎯 Overall Assessment
✅ Approval RecommendationApprove with minor suggestions. This is a high-quality documentation improvement that makes the project significantly more accessible. The suggestions above are optional enhancements — none are blockers. Merge-ready after addressing (optional):
📝 Additional Notes
Great work! 🚀 |
Summary
Comprehensive restructuring and expansion of the README to improve clarity, usability, and technical documentation. The changes focus on making the documentation more accessible to both users and developers while providing better technical details about how the application works.
Key Changes
Improved tagline and introduction: Simplified language ("for the terminal" instead of "for the terminal heads"), clarified feature descriptions with better punctuation and grammar
Reorganized comparison table: Streamlined the Traditional OPC Clients vs opcilloscope comparison with more concise entries and proper markdown escaping
Consolidated use cases: Moved use cases from a separate section into a single inline sentence for better flow
Enhanced feature descriptions:
.cfgJSON files)Added new "How signal sampling works" collapsible section: Detailed explanation of the pub/sub mechanism with ASCII diagram, comparison table of update rates, and technical details about data capture vs rendering decoupling
Added comprehensive keyboard shortcuts table: New section documenting all major keyboard commands (Tab, Enter, Delete, Space, S, T, W, +/-, Ctrl+O/S, Ctrl+R, ?)
Improved installation section:
Cleaned up developer quickstart: Removed redundant comments, improved formatting
Removed redundant content: Eliminated duplicate demo image captions and taglines, removed multiple horizontal dividers for cleaner structure
Improved footer: Simplified license statement and attribution, removed redundant line breaks
Notable Details
All changes are documentation-only (README.md). The restructuring maintains all original information while improving organization, readability, and user experience through better visual hierarchy and collapsible sections for advanced topics.
https://claude.ai/code/session_017mtMAWLUuP46pdNY8zqM5G