v0.22.0 · free & open source · /minn-admin/

The WordPress admin
you'll actually want to open.

A modern, minimal dashboard served at /minn-admin/: a single-page app on the WordPress REST API. No React, no build step, one vanilla-JS file. It lives right alongside classic wp-admin.

No React No build step Zero external requests wp-admin stays intact No admin notices, ever
yoursite.com/minn-admin/
Minn Admin dashboard Minn Admin dashboard, light theme
1
vanilla-JS file, no framework, no bundler
0
external requests. Bundled fonts, fully private
498
downloads across 24 releases since July 2026
extensible. Any plugin adds a view with one filter
Everything, rebuilt

The whole admin, reconsidered from the ground up.

Every surface you reach for daily, made fast and legible. Built entirely on the REST API, so it's exactly as capable as WordPress itself.

Overview
Real stat cards, an activity chart and a recent-activity feed: the pulse of your site at a glance.
Comments
Full moderation across pending, approved, spam and trash. Triage a queue in seconds.
Editor
Distraction-free, block-aware writing on native Gutenberg markup: slash commands, autosave, scheduling.
Content
Posts, pages and custom post types with search, status pills and pagination in one clean list.
Media
Grid or list library with drag-and-drop uploads and a preview overlay you can page through by arrow key.
Users
Create, edit, assign roles and reset passwords, plus per-user login sessions with one-click sign-out.
Extensions
Activate, deactivate, delete and bulk-update plugins without leaving the dashboard. Their admin notices arrive as a quiet digest you can hide, never banners across your screen.
EcommerceWooCommerce
Orders open as real pages: record payments by hand, itemized refunds, notes, emails, analytics and catalog work without bouncing to wp-admin.
Settings
General, Writing, Reading and Discussion, plus a built-in maintenance mode toggle.
Forms
3 items
Powered by
Surfaces

One place for every job. Not one screen per plugin.

Form entries, email logs, audit trails, redirects, snippets, backups: each is a single calm view. Whichever plugin does that job on your site powers the view through its own APIs, and when more than one is active a switcher appears. The sidebar stays small.

Entries read like mail, not database dumps
Same view from Gravity Forms or Contact Form 7
Actions run through each plugin's own handlers
Plugin library

Your plugins, already wired in.

Minn ships adapters for the plugins WordPress sites actually run: more than one hundred of them. Each reads through the plugin's own API or storage, shows up in the right surface automatically, and needs zero setup. That breadth usually costs privacy (a SaaS dashboard in the middle, your data in someone else's cloud); Minn covers your whole stack from your own server and never phones home. Everything else stays one click away in wp-admin.

See exactly what each integration covers →

Performance
Settings and feature toggles
Analytics
The Overview traffic chart
Page builders
Detected, fenced, edit-in
Block libraries
Designs in the block picker
Block previews
Real front-end styling
Ecommerce
Orders, products, coupons, customers, analytics, subscriptions
Custom fields
Editor panels
Events, jobs & podcasts
Their fields, in the editor sidebar
Spam
Settings → Spam cards

Don't see yours? Any plugin can register its own surface, panel or provider with one filter: see how.

K

Everything is one keystroke away.

A command palette on every screen, and it finds your content too: type anything and your posts, pages and drafts appear under the command matches, with Enter dropping you straight into the editor.

Search everything you've written, drafts included
Navigate, run actions, publish, update, sign out
Works the same in dark and light
Command palette

Dark & light, done right.

Bundled fonts, both themes remembered per user, and zero external requests. No CDNs, no font servers, no telemetry: Minn ships everything it needs, and nothing about you leaves your server.

Light theme

It doesn't replace wp-admin.

Minn lives alongside the classic dashboard at /minn-admin/. Everything you know stays exactly where it was. This is simply a better front door.

m
/minn-admin/
The reimagined experience
New
/wp-admin/
Classic, still fully available
Intact
Security & trust

Built to be audited.

An admin surface deserves more scrutiny than a slider plugin. Here is exactly how Minn earns a place on a production site.

Your permissions, enforced twice

Opening /minn-admin/ requires a logged-in account your site already trusts to edit content. Every action is then re-checked on the server through WordPress core's own REST permissions, so each role sees and does only what wp-admin would allow it.

Plugins can't misbehave here

Plugins describe their screens to Minn as plain data. Their code never runs in Minn's rendering, their HTML and scripts never reach the app, and hard budgets cap the space anyone gets. A broken plugin can't take the interface down. Anything you don't want, you hide. No admin notices. No upsell banners. Ever.

Updates you can verify

Releases ship from GitHub through the normal WordPress updates screen. Before anything installs, the download is checked against the sha256 published in the release manifest; a tampered or truncated package refuses to install. No opaque update server, no silent code paths.

Every external byte, accounted for

The app itself loads nothing from outside your site: no CDNs, no font servers, no telemetry. What remains is yours and named: avatars from Gravatar (WordPress core behavior), extension icons from wordpress.org, and editor previews rendering your own theme's styles. A browser test enforces this on every release.

Leave any time

Minn writes native WordPress data and nothing else: real block markup, core options, core users. Deactivate it and your site is exactly as it was, with wp-admin untouched the whole time. No migration in, no migration out, no formats you'd have to unwind.

Found something? Tell us privately

Security reports get priority over everything else: private reporting on GitHub, acknowledgment within 48 hours, and credit to the reporter. The full policy, including scope and design notes for reviewers, lives in SECURITY.md.

192 browser test suites run against every release, on a clean site and a production-scale one, with a zero-console-errors gate.

Up and running in a minute

Install like any other plugin.

01
Drop it in
Clone or download into wp-content/plugins/.
02
Activate
Flip it on from the Plugins screen, no configuration required.
03
Visit /minn-admin/
Also linked from the admin bar and the wp-admin menu. Updates arrive on the WordPress updates screen, served from GitHub Releases and checksum-verified before they install. Then take five minutes with the user guide.
Built to extend

Any plugin adds a view with one filter.

A declarative descriptor, no JavaScript required. Every adapter in the library above uses this same API, and it's open to everyone: surfaces with tabs, detail cards, status cards, actions, bulk actions, schema-driven settings views and setup gates, editor panels, traffic providers, cache purgers, design libraries.

Read the plugin-author guide Follow the shim tutorial
register-view.php
// One filter. That's the whole API.
add_filter( 'minn_admin_surfaces', function( $surfaces ) {
  $surfaces['tickets'] = [
    'label'      => 'Tickets',
    'icon'       => 'inbox',
    'cap'        => 'edit_posts',
    'collection' => [ 'route' => 'acme/v1/tickets' ],
  ];
  return $surfaces;
} );
FAQ

Fair questions.

The ones people actually ask before putting a new admin on a real site.

Does Minn replace wp-admin?

No. Minn is a second front door at /minn-admin/. Classic wp-admin stays fully available, and Minn links you there whenever a job is better done in it. You can use both side by side forever.

What happens if I deactivate or delete it?

Nothing is lost. Minn writes native WordPress data only: real block markup, core options, core users. Deactivate the plugin and your site is exactly as it was, with nothing to migrate and nothing to unwind.

Will it work with my plugins?

More than one hundred plugins have adapters that show up automatically with zero setup, and the list grows nearly every release. Plugins without an adapter keep working normally; their screens stay one click away in wp-admin. The supported plugins doc says exactly what each integration covers.

What about page builders?

Safe by design. Posts built with Elementor, Bricks, Divi and friends open read-only in Minn with an edit button that hands you to the builder, because the builder owns that content. Minn never writes to a builder's data.

How do updates arrive?

On the normal WordPress updates screen, served from the project's GitHub releases. Every download is verified against a checksum published with the release before it is allowed to install.

Why isn't it on wordpress.org?

Mostly cadence: Minn has shipped more than twenty releases since July, and the GitHub pipeline sustains that pace while keeping updates on the standard updates screen, checksum-verified. A directory listing may come later.

My security plugin restricts the REST API. Will Minn break?

Almost never. Minn uses the same authenticated, same-origin REST calls the block editor uses, so hardening that blocks anonymous REST traffic leaves it intact. If something does interfere, the System page's health checks name the problem instead of leaving you guessing.

Who can open /minn-admin/?

Only logged-in users your site already trusts to edit content, and each role sees only what wp-admin would allow it. Every action is re-checked on the server through WordPress core's own permissions.

Why can't I find a particular setting?

On purpose. Minn surfaces the settings people change day to day; the long tail deliberately stays in wp-admin, one click away. If a screen you reach for often is missing, open an issue.

What does it cost?

Nothing. Minn Admin is free and MIT licensed, with no Pro tier, no upsells and no nags. If it earns a place in your work, a star or a GitHub sponsorship keeps it moving.

Give WordPress a front door
worth opening.

Free, open source and MIT-licensed. Install it in a minute and never dread the dashboard again.

View on GitHub Download v0.22.0 Try it in Playground