# Cupertino is an Obsidian theme that borrows Minimal's filter vocabulary

> Cupertino is an MIT licensed Obsidian theme by svnaxis that aims for a native macOS look, supports light and dark variants, and implements the full filter and helper class set from the Minimal theme. It fits an Obsidian user who wants a restrained, Apple-flavoured interface on desktop and mobile, and it does not fit a user who wants a theme to be configured through a settings plugin.

**svnaxis/obsidian-cupertino** — A native look and feel Obsidian theme crafted for the way you think.

- Repository: https://github.com/svnaxis/obsidian-cupertino
- Stars: 1,296 · Forks: 51
- Language: CSS
- License: MIT
- Published: 2026-10-19 · Updated: 2026-10-19 · Language: en
- Canonical page: https://hysenlabs.com/projects/svnaxis-obsidian-cupertino

## The design intent is restraint, and the README says so in three bullet points

Cupertino describes itself as a native look and feel Obsidian theme crafted for the way you think. The overview is short, with two screenshots, one for the adaptive appearance and one for mobile, and the copy is about typography, spacing and native-inspired components making the theme feel like it belongs on any device.

The Philosophy section is the clearest statement of intent, and it is built on less is more. Cupertino exists because great tools should just work, with no rabbit holes, no endless tweaking, just a beautiful, distraction-free place to think and write. Three commitments follow.

Fewer plugins, on the basis that everything needed is there without plugins and that Cupertino is complete the moment you install it. Fewer customizations, on the argument that every option is an invitation to procrastinate, so choices are kept intentionally minimal to stay in flow. And less visual noise, where low-priority UI elements step back automatically and what remains is what matters.

That last one is a real design position rather than marketing, and it has a consequence for a user. If the theme hides the active line highlight and centres tabs by default, some of the things a Minimal user spends time tuning are simply not on. The theme decides.

The second point in the overview is the one that is easy to miss. Built for mobile, with everything redesigned for touch, one-hand reachability, comfortable spacing and an intuitive layout. A theme that is genuinely usable on a phone is a different piece of work from a desktop theme scaled down, because the hit targets, the pane widths and the reading measure all have to be reconsidered.

The project is MIT licensed, and the last push was on 2026-10-08 with release 4.1.0 the same day, after 4.0.0 on 2026-10-02 and 3.2.12 in July 2026.

## The feature surface is Minimal's, not Cupertino's own

The Features section contains one line that answers most of the technical question about the theme: Cupertino supports all filter and helper classes from Minimal.

That is a deliberate dependency on another theme's vocabulary, and the README links out to the Minimal guide for each feature group, so the documentation is Minimal's documentation. The Banner section links to the Minimal guide's block width page, the Cards section to its block types page, the Image filters section to its images page, and the Tables section to its tables page.

The consequence for a user is that the learning curve for Cupertino is the learning curve for Minimal, and any tutorial, snippet or forum answer about Minimal's classes applies. The consequence for an adopter is that Cupertino is a re-skin of a proven feature set rather than a new implementation, which is a different kind of risk from building one.

What Cupertino adds is the visual layer. The theme's own directories make that concrete: src/ for the style sources, theme.css at the root, a manifest.json for the Obsidian theme format, versions.json for version compatibility, and an img/ directory with the hero and comparison screenshots. The primary language of the repository is recorded as CSS, which is exactly what you would expect.

The two plugin recommendations are worth noting because they extend the theme in specific directions. Style Settings is described as letting you enable focus view and hover sidebars, or disable the active line highlight, centred tabs and compact status bar. Pseudo Mica brings translucent window effects to Windows and macOS for a more native feel, which is a detail a Linux-only user can ignore.

## Banners, cards and block widths are the classes you will actually use

The feature tables are worth reading closely, because they define what the theme does to your notes rather than to the application chrome.

The Banner class is the most elaborate. You add banner to the end of an image link, for example ![[image.jpeg|banner]], and banner-fade adds a faded edge and requires banner. banner-icon adds an emoji or a letter as the note icon using a callout, for example > [!banner-icon], and banner-title moves the inline title next to the icon, requiring banner-icon. Then there is a vertical positioning scale, y0, y5 through to y100, which adjusts the vertical position of the banner in steps of 5 and requires banner.

The dependency chain is explicit, which is helpful, because a class that requires another one failing silently is a common theme problem.

Block width is the second group. The wide class makes the entire note use the wide line width, and max uses the max line width. The table-100, bases-100 and img-100 classes fill 100% of the pane width, while the table-max, bases-max and img-max variants fill the max line width, which the table marks as the default of 90%, and the table-wide, bases-wide and img-wide variants fill the wide line width.

Cards is the third. The cards class is required and sets all Dataview tables to card layout, list-cards does the same for bullet lists, and cards-align-bottom aligns the last element of a card to the bottom. Then there is a series of aspect ratio classes: cards-cover resizes images to fill the defined space, and cards-16-9, cards-1-1, cards-2-1 and cards-2-3 fit images to those ratios, with cards-cols-1 through cards-cols-8 forcing a specific number of columns.

The Dataview mention is a real dependency on the community ecosystem rather than on Obsidian itself, and it tells you which vault the theme was designed for.

## Image filters, embeds and tables cover the small details

The smaller classes are the ones you use every day without thinking about them, and they are the reason a theme feels polished.

Image filters are added at the end of the image link, for example ![[image.jpeg#invert]]. The set is blend, which blends the image into the background, invert, which inverts images in dark mode and is described as ideal for charts and handwriting on light backgrounds, invertW, which does the same in light mode for charts and handwriting on dark backgrounds, circle, which crops the image to a circle, outline, which adds an outline around the image, and interface, which adds a drop shadow behind the image.

The invert and invertW pair is the useful one in practice. A screenshot of a light-mode application pasted into a dark-mode note is unreadable without it, and most people who write technical notes have such screenshots.

Embeds are two classes. embed-strict removes the embed background, and embed-hide-title hides the embedded file title.

Tables get table-nowrap to disable line wrapping in table cells and table-wrap to force it, and the table continues past where the README excerpt ends.

The image grids feature is a single class, img-grid, which activates image grids.

Taken together, these are the features of a theme built for a working vault rather than a demo. Every one of them is a markup class you write in a note, and every one of them is a decision the theme made about how that markup should look. The theme is the CSS for that vocabulary, and the vocabulary is Minimal's.

## Where Cupertino is the wrong choice

The first wrong-tool case is a user who wants a configurable theme. The philosophy section is explicit that customizations are kept intentionally minimal, and the only two plugins recommended are Style Settings, which can toggle specific behaviours, and Pseudo Mica, which adds translucency. A user whose Obsidian setup is a long Style Settings configuration, with dozens of toggles tuned over months, will find that Cupertino takes those decisions away. Swapping themes is not a cosmetic change in Obsidian, and a theme that arrives with fixed opinions is a different proposition from one that exposes a control panel.

The second is a user whose plugins depend on Minimal's own class names in a way that Cupertino does not implement. Since Cupertino supports Minimal's classes, the reverse is not guaranteed, and the README does not document the exceptions.

The third is the mobile experience for anyone who does not want their themes to differ between phone and desktop. The theme is designed for touch, which is a genuine strength, and it also means the layouts you get on a phone are not the layouts you get on a workstation.

The fourth is a plain aesthetic disagreement that no documentation resolves. The theme aims at a macOS look, and a Linux user or a Windows user with a different system aesthetic may find the result is not what they pictured. The screenshots in the README are the honest way to judge that, and they are the main reason to read the project before installing it.

## Conclusion

Cupertino fits an Obsidian user who wants a restrained, macOS-flavoured look with no plugin required, and it does not fit someone who wants to tune the theme through a settings panel. Before switching, read the feature tables in the README, because the theme's differentiation from Minimal is mostly aesthetic while its feature surface is Minimal's, and check the compatibility of any Minimal-specific plugins you use before removing your current theme.

## FAQ

### What is the Cupertino Obsidian theme?

It is an MIT licensed Obsidian theme by svnaxis described as a native look and feel theme crafted for the way you think, with clean typography, refined spacing and native-inspired components, designed for both desktop and mobile with light and dark variants.

### Does Cupertino support Minimal theme filter classes?

Yes. The README states that Cupertino supports all filter and helper classes from Minimal, and links to the Minimal guide for each feature group, including banners, block widths, cards, image filters and tables.

### Which plugins are recommended for the Cupertino theme?

Two. Style Settings, which can enable focus view and hover sidebars or disable the active line highlight, centred tabs and compact status bar, and Pseudo Mica, which brings translucent window effects to Windows and macOS for a more native feel.

### How do I add a banner to a note in Cupertino?

Add the banner class at the end of the image link, for example ![[image.jpeg|banner]]. Related classes are banner-fade for a faded edge, banner-icon for an emoji or letter note icon using a callout, banner-title to move the inline title next to the icon, and y0 through y100 to adjust the vertical position in steps of 5.

## Sources

- [Issues](https://github.com/svnaxis/obsidian-cupertino/issues)
- [License: MIT](https://github.com/svnaxis/obsidian-cupertino/blob/main/LICENSE)
- [README](https://github.com/svnaxis/obsidian-cupertino/blob/main/README.md)
- [Releases](https://github.com/svnaxis/obsidian-cupertino/releases)
- [svnaxis/obsidian-cupertino on GitHub](https://github.com/svnaxis/obsidian-cupertino)

---

Hysen Labs editorial analysis, written from the project's own repository and release notes. Cite the canonical page: https://hysenlabs.com/projects/svnaxis-obsidian-cupertino
