Ensure textbook content is accessible, readable, and understandable for learners of all skill levels. Use when reviewing content for clarity, adding explanations for beginners, or improving content accessibility.
666 stars
0 votes
1 copy
1 view
Added September 2, 2026
developmentpythongobashnode
Works with
cli
Security analysis
A96/100
mediumInstalls packages at runtime which could introduce malicious dependencies
Installs into .claude/skills of the current project.
Are you the author of Accessibility Readability?
Add the live security badge to your README. It updates with every re-scan.
[](https://www.skillsdirectory.com/skills/majiayu000-accessibility-readability-claude-skill-registry)
---
name: accessibility-readability
description: Ensure textbook content is accessible, readable, and understandable for learners of all skill levels. Use when reviewing content for clarity, adding explanations for beginners, or improving content accessibility.
---
# Accessibility & Readability Skill
## Instructions
### 1. Reading Level Guidelines
| Audience | Flesch Score | Characteristics |
|----------|--------------|-----------------|
| Beginner | 60-70 | Short sentences, common words, many examples |
| Intermediate | 50-60 | Technical terms with definitions, moderate complexity |
| Advanced | 40-50 | Assumes prior knowledge, concise explanations |
### 2. Explain Technical Terms
**First mention** of any technical term MUST include:
```mdx
**ROS 2** (Robot Operating System 2) is a middleware framework that provides
tools and libraries for building robot applications. Think of it as the
"nervous system" that lets different parts of a robot communicate.
```
### 3. Glossary Integration
Create `docs/glossary.mdx` with all terms:
```mdx
## R
### ROS 2
**Robot Operating System 2** β A middleware framework for robotics development.
- **Used in**: Modules 1, 3, 4
- **Prerequisite for**: Understanding node communication
- **Related**: Topics, Services, Actions
### rclpy
**ROS Client Library for Python** β Python bindings for ROS 2.
- **Installation**: `pip install rclpy`
- **Import**: `import rclpy`
```
Link to glossary on first use:
```mdx
We'll use [ROS 2](/docs/glossary#ros-2) to control our robot.
```
### 4. Multi-Level Explanations
Provide layered depth for complex topics:
```mdx
## What is a ROS 2 Node?
### π’ Simple Explanation (Beginner)
A node is like a worker in a factory. Each worker (node) has one job,
and they communicate by passing messages to each other.
### π‘ Technical Explanation (Intermediate)
A node is an independent process that performs computation. Nodes
communicate via topics (pub/sub), services (request/response), or
actions (long-running tasks with feedback).
### π΄ Deep Dive (Advanced)
Nodes are executables within a ROS 2 package. They use DDS (Data
Distribution Service) for communication, with QoS (Quality of Service)
policies controlling reliability, durability, and history.
```
### 5. Prerequisite Mapping
Every chapter must clearly state what knowledge is assumed:
```mdx
## π Prerequisites
**Required Knowledge:**
- β Basic Python (variables, functions, classes)
- β Command line basics (cd, ls, mkdir)
- β [Chapter 1.1 β Introduction to Physical AI](/docs/module-1/week-1-2/)
**Helpful but Optional:**
- β Linux system administration
- β Previous robotics experience
**You'll Learn Here:**
- π ROS 2 node creation
- π Publisher/subscriber pattern
```
### 6. Code Accessibility
Always explain code step-by-step:
```mdx
```python
# Step 1: Import the ROS 2 Python library
import rclpy
from rclpy.node import Node
# Step 2: Create a class that inherits from Node
class MyNode(Node):
def __init__(self):
# Step 3: Initialize the parent class with a node name
super().__init__('my_node') # 'my_node' is visible in ROS tools
# Step 4: Log a message to confirm the node started
self.get_logger().info('Node has started!')
```
**Line-by-line breakdown:**
| Line | Purpose |
|------|---------|
| `import rclpy` | Load the ROS 2 Python library |
| `from rclpy.node import Node` | Import the base Node class |
| `class MyNode(Node)` | Create our custom node |
| `super().__init__('my_node')` | Register with ROS 2 |
| `self.get_logger().info(...)` | Print to ROS 2 logging system |
```
### 7. Visual Learning Aids
For each major concept, include:
1. **Analogy** β Real-world comparison
2. **Diagram** β Visual representation
3. **Code** β Working example
4. **Exercise** β Hands-on practice
```mdx
## Understanding Topics
### π― Analogy
Topics are like radio channels. Publishers broadcast on a channel,
and any subscriber tuned to that channel receives the message.
### π Diagram
```mermaid
graph LR
P[Publisher] -->|broadcasts| T[/topic_name]
T -->|receives| S1[Subscriber 1]
T -->|receives| S2[Subscriber 2]
```
### π» Code Example
[See code block above]
### βοΈ Exercise
Create a publisher that sends your name every second.
```
### 8. Accessibility Standards
**Images:**
```mdx

```
**Color contrast:** Don't rely solely on color
```mdx
β Good: "The green checkmarks (β ) indicate success"
β Bad: "Green items are complete"
```
**Keyboard navigation:** Ensure all interactive elements are accessible
### 9. Progress Indicators
Help learners track their journey:
```mdx
## π Your Progress
| Module | Status | Completion |
|--------|--------|------------|
| Module 1: ROS 2 | π’ Current | 60% |
| Module 2: Simulation | βͺ Upcoming | 0% |
| Module 3: Isaac | βͺ Upcoming | 0% |
| Module 4: VLA | βͺ Upcoming | 0% |
**Estimated time to complete this chapter:** 45 minutes
```
### 10. Recap Sections
End each major section with a quick recap:
```mdx
## π Quick Recap
**What we covered:**
- β Created a ROS 2 node using Python
- β Published messages to a topic
- β Subscribed to receive messages
**Key commands:**
```bash
ros2 run my_package my_node # Run a node
ros2 topic list # List all topics
ros2 topic echo /topic_name # View messages
```
**Common mistakes to avoid:**
- β Forgetting to call `rclpy.init()` before creating nodes
- β Not spinning the node (`rclpy.spin(node)`)
```
## Validation Checklist
- [ ] All technical terms defined on first use
- [ ] Glossary entries for domain-specific terms
- [ ] Multi-level explanations for complex topics
- [ ] Prerequisites clearly stated
- [ ] Code explained line-by-line for beginners
- [ ] Images have descriptive alt text
- [ ] Estimated reading time provided
- [ ] Quick recaps at section ends
## Definition of Done
- Content passes readability check for target audience
- All technical terms linked to glossary
- Beginner/intermediate/advanced sections where appropriate
- Every code block has explanatory comments
- Accessibility standards met (alt text, contrast, etc.)