managing-media — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited managing-media (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
This skill provides systematic patterns for implementing media and file management components across all formats (images, videos, audio, documents). It covers upload workflows, display patterns, player controls, optimization strategies, and accessibility requirements to ensure performant, accessible, and user-friendly media experiences.
Activate this skill when:
Select implementation based on media type and requirements:
Images → Gallery pattern + lazy loading + responsive srcset
Videos → Player with controls + captions + adaptive streaming
Audio → Player with waveform + playlist support
Documents (PDF) → Viewer with navigation + search + download
File Upload (<10MB) → Basic drag-drop with preview
File Upload (>10MB) → Chunked upload with progress + resume
Multiple Files → Queue management + parallel uploadsFor detailed selection criteria, reference references/implementation-guide.md.
For small files with simple requirements:
references/upload-patterns.mdExample: examples/basic-upload.tsx
For large files requiring reliability:
references/advanced-upload.mdExample: examples/chunked-upload.tsx
For image files with editing requirements:
references/image-upload.mdExample: examples/image-upload-crop.tsx
For collections of images:
references/gallery-patterns.mdExample: examples/image-gallery.tsx
For sequential image display:
references/carousel-patterns.mdExample: examples/carousel.tsx
Essential optimization strategies:
srcset and sizesreferences/image-optimization.mdFor custom video playback:
references/video-player.mdExample: examples/video-player.tsx
Performance strategies for video:
metadata, auto, none)references/video-optimization.mdFor audio playback:
references/audio-player.mdExample: examples/audio-player.tsx
For PDF document display:
references/pdf-viewer.mdExample: examples/pdf-viewer.tsx
For DOCX, XLSX, PPTX files:
references/office-viewer.mdValidate client-side before upload:
# Generate optimized image set
python scripts/optimize_images.py --input image.jpg --formats webp,jpg,avifStrategies:
srcset for device targetingReference references/performance-optimization.md for complete guide.
Strategies:
Essential patterns:
alt="") for decorative images<figure> and <figcaption> for contextreferences/accessibility-images.mdEssential patterns:
references/accessibility-video.mdEssential patterns:
references/accessibility-audio.mdTo validate accessibility:
node scripts/validate_media_accessibility.jsFor complete requirements, reference references/accessibility-patterns.md.
Best for feature-complete galleries:
npm install react-image-gallerySee examples/gallery-react-image.tsx for implementation. Reference /xiaolin/react-image-gallery for documentation.
Alternative: LightGallery (more features, larger bundle)
Best for custom video players:
npm install video.jsSee examples/video-js-player.tsx for implementation.
Best for waveform visualization:
npm install wavesurfer.jsSee examples/audio-waveform.tsx for implementation.
Best for PDF rendering in React:
npm install react-pdfSee examples/pdf-react.tsx for implementation.
For detailed comparison, reference references/library-comparison.md.
All media components use the design-tokens skill for theming:
Supports light, dark, high-contrast, and custom themes. Reference the design-tokens skill for theme switching.
Example token usage:
.upload-zone {
border: var(--upload-zone-border);
background: var(--upload-zone-bg);
padding: var(--upload-zone-padding);
border-radius: var(--upload-zone-border-radius);
}
.image-gallery {
gap: var(--gallery-gap);
}
.video-player {
background: var(--video-player-bg);
border-radius: var(--video-border-radius);
}Four responsive approaches:
See examples/responsive-gallery.tsx for implementations.
Responsive considerations:
Reference references/responsive-media.md for patterns.
For AWS S3, Cloudinary, etc.:
Benefits:
See examples/s3-direct-upload.tsx for implementation. Reference references/cloud-storage.md for setup.
Generate mock media:
# Generate test images
python scripts/generate_mock_images.py --count 50 --sizes thumb,medium,large
# Generate test video metadata
python scripts/generate_video_metadata.py --duration 300Validate media accessibility:
node scripts/validate_media_accessibility.jsAnalyze performance:
node scripts/analyze_media_performance.js --files images/*.jpgStart with the example matching the requirements:
basic-upload.tsx # Simple drag-drop upload
chunked-upload.tsx # Large file upload with resume
image-upload-crop.tsx # Image upload with cropping
image-gallery.tsx # Grid gallery with lightbox
carousel.tsx # Image carousel/slider
video-player.tsx # Custom video player
audio-player.tsx # Audio player with controls
audio-waveform.tsx # Audio with waveform visualization
pdf-viewer.tsx # PDF document viewer
s3-direct-upload.tsx # Direct upload to S3
responsive-gallery.tsx # Responsive image gallery patternsscripts/optimize_images.py - Batch image optimizationscripts/generate_mock_images.py - Test image generationscripts/validate_media_accessibility.js - Accessibility validationscripts/analyze_media_performance.js - Performance analysisreferences/upload-patterns.md - File upload implementationsreferences/gallery-patterns.md - Image gallery designsreferences/video-player.md - Video player featuresreferences/audio-player.md - Audio player patternsreferences/pdf-viewer.md - Document viewer setupreferences/accessibility-patterns.md - Media accessibilityreferences/performance-optimization.md - Optimization strategiesreferences/cloud-storage.md - Cloud integration guidesreferences/library-comparison.md - Library analysisexamples/ directory for working implementationsassets/upload-config.json - Upload constraints and settingsassets/media-templates/ - Placeholder images and iconsThis skill works with other component skills:
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.