protowiki-skins

Resolve desktop or mobile skins at boot via URL parameter or viewport.

7|6|Updated Apr 28, 2026
One-click install
npx skills add https://github.com/wikimedia/ProtoWiki --skill protowiki-skins
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: protowiki-skins
Source: https://github.com/wikimedia/ProtoWiki/tree/main/.agents/skills/protowiki-skins
Command: npx skills add https://github.com/wikimedia/ProtoWiki --skill protowiki-skins

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

ProtoWiki skins management solves the challenge of rendering ProtoWiki in desktop and mobile skins by coordinating boot-time skin resolution and a data-skin attribute on the root HTML, enabling consistent previews and mobile embedding.

Core Features & Use Cases

  • Boot-time skin resolution using ?skin URL parameter or viewport size to pick desktop or mobile.
  • Per-component skin prop to embed mobile previews inside desktop pages.
  • useSkin() hook to read the current global skin state for conditional rendering and debugging.
  • Simple path to wire a "show mobile" toggle for rapid prototyping.

Quick Start

Enable desktop or mobile skin by setting data-skin on the root element or using the skin prop, then test at different viewport widths to preview the corresponding layout.

Frequently Asked Questions about protowiki-skins

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I render different responsive skins for desktop and mobile in a Vue application?

Rendering desktop and mobile skins is handled through boot-time resolution using a URL parameter or viewport size, which sets a data-skin attribute on the root HTML element to coordinate layout rendering.

What is the best way to embed a mobile preview inside a desktop page layout?

Embedding mobile previews inside desktop pages is achieved by using a per-component skin prop, allowing individual components to render a mobile layout independently of the global desktop skin state.

How can I read the current skin state for conditional rendering in my components?

Reading the current skin state for conditional rendering is done using the global useSkin() hook, which exposes the active skin resolved at boot-time for debugging and component logic.

How do I wire a show-mobile toggle for rapid responsive prototyping?

Wiring a show-mobile toggle is simplified by combining the useSkin() hook with boot-time URL parameter resolution, allowing quick switching between desktop and mobile layouts during prototyping.

Does ProtoWiki skin resolution require any external dependencies or Vue component libraries?

ProtoWiki skin resolution requires no external dependencies or component libraries, operating independently by evaluating viewport size or URL parameters to apply the appropriate data-skin attribute.