Skip to content

v0.37.0

Latest

Choose a tag to compare

@austinginder austinginder released this 01 Sep 08:38
· 1 commit to main since this release

The design release. A block theme keeps the things that decide how a site looks in places only the Site Editor could reach, so Minn gains a Design screen that reaches them: templates that say which ones this site has actually changed and what still uses each one, template parts and navigation menus on their own tabs, and the theme's style variations as swatch cards you can apply and then undo. Templates open in Minn's editor with the same promise the rest of the editor makes, that anything it did not touch comes back byte for byte. Menus are arranged here rather than merely listed, the front-end bar reaches the Bricks templates wrapping the page you are on, and the Overview number cards finally swap for the ones you actually watch. A security pass over the release closed a way a menu label could carry markup into the site header, and brought imported Bricks templates under the same filtering Bricks applies to its own.

Added

  • Design gains a Styles tab: your theme's style variations with a real Undo. A block theme that ships style variations (color schemes, font pairings) lists them as swatch cards built from each variation's own palette, with the theme's default first and the active one marked. Applying one asks first, since it changes the site for every visitor immediately, and then offers Undo, which restores the exact look you had, including styles you customized in the Site Editor. That Undo is the part the Site Editor does not offer. If your styles are customized, the tab says so plainly before you replace them. Only whole site styles are listed: the color and typography partials themes bundle for mixing belong to the Site Editor's own panels and stay there.
  • Templates open in Minn's editor. A template is ordinary block markup, so the editor treats it the way it treats any document: the text is directly editable (a footer's copyright line, a 404 page's message), layout blocks (the query, the post content, a header reference) are preserved exactly as found, and anything Minn did not touch comes back byte for byte. Opening one of the theme's own templates says plainly that saving creates this site's copy, with the theme file untouched; the sidebar then flips to Customized and offers Reset to theme right there. There is no autosave on a template: a timer never quietly turns a theme's template into a site copy, and saving is a deliberate click. The Site Editor stays one click away for layout work, and templates a plugin registered still open there, since their copies belong to the plugin.
  • Templates say what actually uses them. A template list where nothing is used and a template list where everything is used look identical, so the Design screen now counts. A template you can choose for a page says how many pages chose it, or says plainly that nothing did, which is what makes deleting one a decision rather than a gamble; deleting names the number of pages that will fall back to a more general template. Template parts say how many templates pull them in, so a part left over from an old design is visible as one nothing includes. Templates WordPress reaches by its own rules, such as Index or Single Posts or the 404 page, make no claim at all: they are used by rule rather than by being picked, so a count would only mislead.
  • Design shows which of your theme's templates this site has changed. In the Site Editor every template looks alike, whether it is the theme's own file or something this site rewrote months ago. Manage now has a Design screen that sorts the changed ones to the top and says which is which: from the theme, customized here (naming who changed it and when), added here, or contributed by a plugin. A customized template resets to the theme's version in one step, which hands the original file back rather than deleting anything, and your content is untouched either way. Template parts are on their own tab. Templates a plugin registered are marked as such and offer no delete, because deleting one only lasts until that plugin registers it again. Editing a template still opens the Site Editor.
  • Navigation moved in beside Templates under one Design item. A block theme was heading for a separate sidebar entry per screen. Design holds both tabs instead, the way Structure holds post types, taxonomies and terms, so the sidebar stays short. Both tabs keep their own address, so a bookmark or a ⌘K command still lands exactly where it says.
  • Navigation menus are arranged in Minn, not just listed. Open a menu and its items are here: rename a link, change where it points, drag to reorder, indent one under another to build a dropdown, add a page or a custom link, and remove one with an Undo offered back. Nesting an item under a plain link turns that link into a dropdown the way the Site Editor does, and emptying a dropdown turns it back into a plain link, so you are never left with a menu that opens onto nothing. Items that are not links (an all-pages block, social icons, anything a plugin contributed) are listed and can be reordered or removed, but they are edited in the Site Editor, which stays one click away. The safety rule is the one Minn uses everywhere: anything it did not edit is written back exactly as it was found, so a menu's styling and blocks Minn has never heard of come through a rearrangement untouched. A menu holding markup Minn cannot vouch for says so and stays read-only rather than guessing.
  • Block themes get a Navigation screen. A block theme keeps its menus as navigation blocks that only the Site Editor could reach, so a site on one lost a screen it had on a classic theme. Manage lists those menus now: what each is called, how many items it holds, when it last changed, and the thing the Site Editor never tells you, which is where each menu actually renders. A menu used in your header says so, and one left behind by a previous theme reads as not used, which is usually how you find out you have three. Create, rename and delete are here. Deleting a menu the theme is currently rendering names the part that will lose its links before you confirm. Editing the links inside a menu still opens the Site Editor, one click from any row.
  • The front-end bar edits the Bricks templates a page is using. Bricks' own admin bar listed the header, content and footer templates wrapping the current page under Edit with Bricks. Minn hid that bar, so those templates had no way in from the public site. They are on the Minn bar now. Edit still opens the page or product you are viewing; a chevron lists the templates wrapping the view. Cart, checkout and account templates Bricks listed on those pages are in the chevron too. A blog home or archive that has no page of its own still offers Edit header (or content, or footer) when one of those templates is assigned. Each item is also a command in the bar's search palette. Who can open the builder is Bricks' own question, the same gate as their admin bar.
  • Bricks templates import, every type Bricks offers, and a Trash view. The Templates list now imports the same JSON Bricks (and Minn) export, behind Bricks' own import-export permission. Type tabs and the Add-template picker read Bricks' live vocabulary, so WooCommerce types (Account Login, Cart, Checkout, and the rest) appear on a Woo site the same way they do in Bricks. A Trash tab lists what you threw away, with Restore and Delete permanently.
  • Start a post from a link, with the document already begun. A launcher, a desktop widget, a shortcut or another app can open a new post prefilled: /minn-admin/editor/posts?title=What%20gave%20you%20energy%20today%3F. The title, the body (content), the excerpt, categories, tags and the post format can all ride the address, /editor/pages starts a page the same way, and when the title arrives already written the cursor lands in the body so you can begin typing straight away. It is a safe thing to hand out: everything arrives as plain text, so a link can never put markup into your post; categories and tags match ones you already have and a link never creates a term; nothing is saved until you actually write something; and the same address on a post that already exists is ignored, so a link can never overwrite work.
  • Overview number cards can swap. The dashboard keeps its current layout. Right-click a count, choose Customize, pick a different number, then Save: drafts, pending comments, users, and on a Woo store the figures that matter day to day (sales this month, orders this month, items sold, average order, all orders, awaiting payment, to fulfill, on hold, products, customers, coupons). Picking a count that is already showing swaps the two cards. Each person keeps their own layout across browsers, and can Reset to defaults to get the starting cards back. Only administrators can Save as defaults, which sets those starting cards for everyone else.

Improved

  • The front-end bar stays tucked even when a status chip is waiting. Search engines discouraged, maintenance mode, a password gate, or a staging environment used to keep the corner mark on screen so the chip had somewhere to sit. The chip still appears once you reach the corner; the page itself now stays unmarked except for the two small strokes, the same rest state as a healthy public site.
  • Multi-choice settings use Minn switches. A list of yes/no choices (Bricks post types you can edit, an ACF checkbox field) used the browser's own checkboxes, which ignored dark mode. Each choice is a Minn switch now, the same control as a single on/off setting.
  • On Minn Engine, links that would open wp-admin stay hidden. The engine has no classic dashboard, so Live preview, Open Stream, Edit in the block editor, the Tools card and the rest of those bail-outs no longer appear. Minn Admin detects the engine itself from MINN_ENGINE_VERSION and names it on the boot payload, rather than waiting for the engine to say so.
  • The orders list shows how each order was paid. WooCommerce already stores the method title on the order (Stripe, PayPal, Direct bank transfer). It was on the detail page; it is now a column on the list, between Items and Total. Narrow screens still hide it with the other secondary columns.

Fixed

  • A menu label can no longer carry markup into the site header. Menu items are stored as block markup, and a label goes inside that markup's own comment syntax. A label containing the sequence that closes a comment ended it early, and whatever followed was read as new blocks — so a post title, which anyone who can publish writes, could put a script into the navigation that renders on every page. Labels are escaped the way the editor already escapes everything else it writes, and menu link addresses are held to the same schemes as every other link in the app.
  • Imported Bricks templates are filtered the way Bricks filters its own. Bricks decides who may put raw scripts in a template by asking WordPress, but it asks in a way that only answers during its own screens, so an import through Minn skipped the question entirely. Minn asks it directly now, and runs an imported design through Bricks' own safety pass, so importing a template grants nobody more than building one in Bricks would. Importing also asks for permission to create templates rather than only to export them, changing a template's type asks Bricks the same question every other action does, and a file holding more than fifty templates is refused rather than run.
  • Deleting a template part says what actually breaks. The confirmation looked the part up among templates, where parts never appear, so it told every part that nothing on the site used it and then deleted it permanently. It counts the templates that include the part now, and when Minn cannot check at all it says so instead of reporting nothing.
  • A dropdown can only be made from a link. Indenting an item under a block that holds no links — a page list, social icons, anything a plugin contributed — rewrote that block and discarded what was inside it, leaving the nested item rendering nowhere. Only a link or an existing dropdown accepts a child now.
  • Style variations are not offered where WordPress will not store them. On a multisite subsite, or any site that turns off unfiltered HTML, WordPress keeps a variation's layout and silently drops the colors and fonts it refers to — and the Undo offered afterwards destroyed the previous look rather than restoring it. The tab explains the situation and points at the Site Editor instead of applying half a design.
  • The Overview cards stop counting other people's drafts. The Drafts card, and the subtitle on Published posts, showed every author's unfinished work to anyone who can reach the app. The pending-comment count moved behind the same permission its own Pending comments card already used.
  • The site logo field now appears on block themes. Settings → Site has offered the logo for a while, but only when the theme declared custom-logo support, which block themes almost never do (they manage the logo through the Site Logo block instead), so the field quietly hid itself on exactly the sites moving to block themes. It shows now: WordPress keeps the logo setting and the block's own storage in sync, so a logo set in Minn is the one the Site Logo block renders, and one set in the Site Editor shows up in Minn. A classic theme that truly has no logo to render still hides the field.
  • Deutsch (Sie) no longer leaves Minn in English. WordPress treats formal German as its own locale (de_DE_formal), and Minn only shipped a catalog for de_DE. The dashboard translated; Minn did not, even after updating translations (those are wordpress.org packs, not Minn's). Formal locales, and the same _formal / _informal shape in other languages, now use the parent catalog.
  • Activating WooCommerce no longer waits for a reload to show Commerce. Orders, Products, Customers and Coupons read a one-time snapshot from when Minn first loaded, so installing the plugin left the sidebar looking like a site with no store until you refreshed. The same re-poll that already picks up new block plugins and surfaces now also refreshes those store flags, and the Commerce group appears as soon as WooCommerce is on.