Engine Whats New
flutter/flutter
Generates the "what's new" release summary and diff file for changes in the Flutter engine (//engine/src/flutter) between two releases (e.g., 3.47 vs 3.44).
Apply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window).
$ npx skills add davidortinau/maui-skills --skill ux-desktop -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install davidortinau/maui-skills ux-desktop --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/davidortinau/maui-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/plugins/maui-skills/skills/ux-desktop .claude/skills/ux-desktop && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "ux-desktop" agent skill from https://github.com/davidortinau/maui-skills/tree/main/plugins/maui-skills/skills/ux-desktop into .claude/skills/ux-desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ux-desktop", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/davidortinau/maui-skills/tree/main/plugins/maui-skills/skills/ux-desktopType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add davidortinau/maui-skills --skill ux-desktop -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install davidortinau/maui-skills ux-desktop --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davidortinau/maui-skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/plugins/maui-skills/skills/ux-desktop .agents/skills/ux-desktop && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "ux-desktop" agent skill from https://github.com/davidortinau/maui-skills/tree/main/plugins/maui-skills/skills/ux-desktop into .agents/skills/ux-desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ux-desktop", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add davidortinau/maui-skills --skill ux-desktop -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install davidortinau/maui-skills ux-desktop --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davidortinau/maui-skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/plugins/maui-skills/skills/ux-desktop .cursor/skills/ux-desktop && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "ux-desktop" agent skill from https://github.com/davidortinau/maui-skills/tree/main/plugins/maui-skills/skills/ux-desktop into .cursor/skills/ux-desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ux-desktop", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/davidortinau/maui-skills.git --path plugins/maui-skills/skills/ux-desktop--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add davidortinau/maui-skills --skill ux-desktop -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install davidortinau/maui-skills ux-desktop --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davidortinau/maui-skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/plugins/maui-skills/skills/ux-desktop .gemini/skills/ux-desktop && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "ux-desktop" agent skill from https://github.com/davidortinau/maui-skills/tree/main/plugins/maui-skills/skills/ux-desktop into .gemini/skills/ux-desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ux-desktop", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install davidortinau/maui-skills ux-desktopInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add davidortinau/maui-skills --skill ux-desktop -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/davidortinau/maui-skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/plugins/maui-skills/skills/ux-desktop .github/skills/ux-desktop && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "ux-desktop" agent skill from https://github.com/davidortinau/maui-skills/tree/main/plugins/maui-skills/skills/ux-desktop into .github/skills/ux-desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ux-desktop", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add davidortinau/maui-skills --skill ux-desktop -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install davidortinau/maui-skills ux-desktop --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/davidortinau/maui-skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/plugins/maui-skills/skills/ux-desktop .opencode/skills/ux-desktop && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "ux-desktop" agent skill from https://github.com/davidortinau/maui-skills/tree/main/plugins/maui-skills/skills/ux-desktop into .opencode/skills/ux-desktop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "ux-desktop", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
ux-desktopApply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window).
UX Desktop is an agent skill from davidortinau/maui-skills. Apply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window). Use alongside ux-first-principles when the target is a desktop app (Windows, macOS, or Linux; native or web-in-a-window) and the decision is affected by input precision, information density, hover, multi-window behavior, or keyboard operation. USE FOR: 'design a desktop app screen', 'lay out this desktop dashboard', 'what should the desktop layout be', pointer-and-keyboard UI, hover affordances…
Its SKILL.md is about 1.4k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.
It sits in Mobile. It works with Linux and macOS. The repository describes itself as: .NET MAUI skills for GitHub Copilot and Claude Code. The licence is MIT.
6 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 79bb4bf. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
UX Desktop loads about 1.4k tokens when it runs. Until then it costs about 195 tokens; SKILL.md has 697 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from davidortinau/maui-skills at commit 79bb4bf, republished under its MIT licence (© davidortinau). 697 words, ~1,413 tokens.
.claude/skills/ux-desktop/SKILL.md (or your agent's skills folder).This skill is a thin medium layer. The reasoning (hierarchy, cognitive load, Gestalt, heuristics, accessibility) lives in ux-first-principles; read that first or alongside. Here is only what the desktop medium changes about applying it — driven by the body-to-device interface, not by which OS it is.
A precise pointer (mouse/trackpad), a hardware keyboard, a large high-resolution display viewed at ~50–70cm, and the assumption that your app is one of several windows the user has open and will resize. These four facts change six things.
Target sizing. The cursor is effectively a single point and does not occlude its target, so desktop tolerates small, dense controls (toolbar buttons, menu items, compact rows) that would be untappable on touch. You can exploit screen edges and corners as "infinite" targets: the cursor stops at the edge, so a control flush against it is trivially easy to hit (classic menu-bar and corner placements). Spend this density budget on power, not on cramming.
Hover exists — and you can rely on it. Desktop has a third state between idle and click: hover. Tooltips, hover-reveal controls, previews, and cursor changes are all legitimate and valuable here. Use hover for progressive disclosure of secondary information and affordances. (This is the single biggest thing that does NOT port to touch — see ux-tablet / ux-mobile.)
Information density can be high. Large screen + precise pointer + close viewing distance means desktop users can scan dense layouts: multi-column data grids, persistent sidebars and inspectors, smaller type, more visible at once. Higher density is a feature here, not clutter — provided hierarchy and grouping (see compositional reference) keep it organized. Keep text line length readable (~50–75 characters) even when width is plentiful.
Multi-window and resize resilience. Assume the app runs beside others and gets resized to arbitrary dimensions. Layouts must stay usable from narrow to very wide. Secondary windows, palettes, inspectors, and detached panels are available and often better than cramming everything into one surface. Design for "works at 600px wide and at 2400px wide," not one fixed size.
Pointer precision unlocks richer interactions. Right-click context menus, hover-preview, fine drag-selection, multi-select with modifier keys, resizable columns, and drag-and-drop are all first-class on desktop. Lean on them for efficiency — but never make them the only path to an action; provide a visible alternative.
Keyboard is a primary input, not an accessibility afterthought. Desktop users expect keyboard shortcuts, tab-order navigation, type-ahead, and full keyboard operability. This doubles as accessibility (WCAG Operable). Define a logical focus order, a visible focus indicator, and accelerators for frequent actions (Nielsen #7, Shneiderman #2).
The following are mechanical, per-platform substitutions, not things to reason about from principles. In .NET MAUI and similar native frameworks they are largely handled at render time. Do them in styling, not in design:
Everything else — including structural choices like sidebar vs. top-nav, modal vs. inspector panel, and how deep the navigation goes — is a design decision. Reason it from first principles and commit to ONE answer that works across desktop platforms. Do not fork the structure per OS.
This optimizes for a coherent cross-platform product over maximal single-OS idiomaticity. That is the right trade-off for cross-platform app work. The only case where it bites is an app whose entire value proposition is feeling 100% hand-built-native on one specific OS — a positioning choice, not a correctness issue.
© davidortinau, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in plugins/maui-skills/skills/ux-desktop of davidortinau/maui-skills.
Open the folder on GitHubat commit 79bb4bf
UX Desktop next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| UX Desktop this skilldavidortinau/maui-skills | 175 | — | ~1.4k | Automated safety check: Pass | MIT | |
| Engine Whats Newflutter/flutter | 179k | — | ~978 | Automated safety check: Pass | BSD-3-Clause | |
| Updating Android SDKflutter/flutter | 179k | — | ~1.7k | Automated safety check: Pass | BSD-3-Clause | |
| Releasenotepadqq/notepadqq | 2.3k | — | ~2k | Automated safety check: Pass | GPL-3.0 | |
| OdevioOdevio/Odevio-CLI | 423 | — | ~7.6k | Automated safety check: Pass | MIT | |
| Jetpack Composedarriousliu/PiPixiv | 263 | — | ~1.5k | Automated safety check: Pass | Apache-2.0 |
flutter/flutter
Generates the "what's new" release summary and diff file for changes in the Flutter engine (//engine/src/flutter) between two releases (e.g., 3.47 vs 3.44).
flutter/flutter
Upgrades Flutter's Android SDK dependency to a new Android API version (or preview/canary release) in packages.txt, verifies CIPD tag uniqueness, and packages/uploads the binaries using…
notepadqq/notepadqq
Release a new Notepadqq version. An agent skill from notepadqq/notepadqq.
Odevio/Odevio-CLI
Take a Flutter project to an iPhone or the App Store with Odevio - build, sign and publish iOS apps from Windows, Linux or macOS with no Mac and no Xcode.
darriousliu/PiPixiv
Jetpack Compose expert skill for Android UI development. An agent skill from darriousliu/PiPixiv.
wysaid/CameraCapture
Install or use the ccap CLI for camera capture, webcam inspection, device listing, frame capture, and video metadata.
davidortinau/maui-skills
Diagnose and troubleshoot .NET MAUI Hot Reload issues (C Hot Reload, XAML Hot Reload, Blazor Hybrid).
davidortinau/maui-skills
Guide for making .NET MAUI apps accessible — screen reader support via SemanticProperties, heading levels, AutomationProperties visibility control, programmatic focus and announcements, and…
davidortinau/maui-skills
.NET MAUI view animations, custom animations, easing functions, rotation, scale, translation, and fade effects.
davidortinau/maui-skills
.NET MAUI app icon configuration, splash screen setup, SVG to PNG conversion at build time, composed/adaptive icons, and platform-specific icon and splash screen requirements for Android, iOS, Mac…
davidortinau/maui-skills
.NET MAUI app lifecycle guidance covering the four app states (not running, running, deactivated, stopped), cross-platform Window lifecycle events, backgrounding and resume behaviour…
davidortinau/maui-skills
Guide for .NET MAUI apps consuming .NET Aspire-hosted backend services.
Categories
Apply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window). UX Desktop is an agent skill from davidortinau/maui-skills. Apply medium-specific UX reasoning for DESKTOP applications (mouse/trackpad plus keyboard, large screen, multi-window).
UX Desktop fits situations like: : design a desktop app screen; lay out this desktop dashboard; what should the desktop layout be; pointer-and-keyboard UI.
Run `npx skills add davidortinau/maui-skills --skill ux-desktop -a claude-code`. Or copy the skill folder (plugins/maui-skills/skills/ux-desktop in davidortinau/maui-skills) into .claude/skills/ux-desktop in your project. Claude Code loads it when a task matches its description.
Run `npx skills add davidortinau/maui-skills --skill ux-desktop -a codex`. Or copy the skill folder (plugins/maui-skills/skills/ux-desktop in davidortinau/maui-skills) into .agents/skills/ux-desktop in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add davidortinau/maui-skills --skill ux-desktop -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/ux-desktop, .gemini/skills/ux-desktop, .github/skills/ux-desktop and .opencode/skills/ux-desktop in your project.
SKILL.md names no scripts, command-line tools or credentials: UX Desktop is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
UX Desktop is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 1.4k tokens (SKILL.md is roughly 5.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with UX Desktop: Engine Whats New (flutter/flutter, 179k stars), Updating Android SDK (flutter/flutter, 179k stars), Release (notepadqq/notepadqq, 2.3k stars) and Odevio (Odevio/Odevio-CLI, 423 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
davidortinau (a GitHub user) maintains it in davidortinau/maui-skills, which has 175 GitHub stars. The repository holds 41 skills in this directory. The repository was last updated on July 6, 2026.
Source: davidortinau/maui-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.