mobile-first-ui Cursor ruleA

mobile-first-ui from unstackedapps/opensuitemcp is a Cursor rule: instructions the Cursor agent follows in that repo.

Install it, pinned
mdr add unstackedapps/opensuitemcp/.cursor/rules/mobile-first-ui.mdc@git:20260819.e68485f

Pins git:20260819.e68485f in mdr.lock. Pin the fingerprint instead.

Audit grade
A, 14 of 14 checks passed
Kind
Cursor rule
Repository
unstackedapps/opensuitemcp
Path
.cursor/rules/mobile-first-ui.mdc
Versions recorded
1
Latest version
git:20260819.e68485f, committed Aug 19, 2026
Size
1,933 bytes
Repository stars
29
License
a license file GitHub does not identify

Mobile-first UI for settings, dialogs, and lists — smaller type, stacked layouts, nested add dialogs.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# Mobile-first UI

Design for ~320–390px first, then `sm:` / `md:`. Do not assume a desktop row will fit on a phone.

## Type and controls

- On `max-sm`, prefer `text-xs` / `text-[11px]` over `text-sm` / `text-base`. Nested dialogs, sheets, and the mobile sidebar must get the same scale (they portal outside the settings panel).
- Inputs, selects, and textareas: compact on mobile (`h-8`, `text-sm`). Do not use `text-base` on fields just to dodge iOS zoom if it makes settings look oversized.
- If a field has a leading icon, set explicit `pl-*` **and** `md:pl-*` so `md:px-*` on `Input` cannot cover the placeholder.

## Layout

- Stack before clustering. One primary action row; extra actions wrap or sit on the next line.
- Flex children that wrap text need `min-w-0`. Long URLs/IDs: `break-all` or `wrap-break-word`.
- Do not put copy and a button in one `justify-between` row on mobile if the button will collide with the text — stack (`flex-col` → `sm:flex-row`).
- Filter-heavy headers (search + multiple selects) should collapse on mobile so the list remains visible.
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add unstackedapps/opensuitemcp/.cursor/rules/mobile-first-ui.mdc@sha256:043a35b916ca2fe3

The line at the top of this page pins the label git:20260819.e68485f, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_yjkndaghzphljsnp.svg)](https://markdownregistry.com/a/art_yjkndaghzphljsnp)

3 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 1 version of this file, committed on Aug 19, 2026.

versioncommittedcommitsizeaudit
git:20260819.e68485f latest2026-08-19 e68485f 1,933 BA view

Audit of the latest version

A  14 of 14 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • pass: Size between 200 bytes and 200 KB (1933 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address
  • pass: No script tag

Source

GitHub

unstackedapps/opensuitemcp · 29 stars · license a license file GitHub does not identify · pushed 2026-10-12 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_yjkndaghzphljsnp
GET https://markdownregistry.com/api/v1/resolve?ref=unstackedapps/opensuitemcp/.cursor/rules/mobile-first-ui.mdc
GET https://markdownregistry.com/api/v1/blob/043a35b916ca2fe394477aef0b93bcef84470439390c8c71dcf93c6212388d0c

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: Cursor rules vs AGENTS.md · which agent file does what.

More from unstackedapps/opensuitemcp

ultracite Cursor rule
unstackedapps/opensuitemcp · .cursor/rules/ultracite.mdc · Ultracite Rules - AI-Ready Formatter and Linter
git:20260126.d04bdf6 · audit A · 29 stars

Every file in unstackedapps/opensuitemcp

Browse by kind, by grade A, or by owner.