Free Open source under Apache 2.0

WordPress admin CSS,
done right.

Drop-in components for WordPress plugin admin pages. Real WP class names, no invented prefix, no framework. Just paste and ship.

Browse components Star on GitHub
https://example.com/wp-admin/admin.php?page=my-plugin

Plugin Settings

Last sync: 4 minutes ago

Settings saved. Your changes have been applied.

Total events
1,284
↑ 12% this week
Active users
82
↑ 4 new
Errors
3
↓ 2 vs last week
API Key
Notifications

Recent Activity

JD
Jane published "Hello"
2h ago
AS
Alex updated config
Yesterday

Built for WordPress

Designed to look native, not like a framework.

Three architectural choices that make WP AdminCSS different from every other WordPress component library.

Real WP class names

No wpac- or wpa- prefix to learn. .button-primary, .notice-success, .wp-list-table — the same classes WordPress core uses, so your plugin pages fit in seamlessly.

Every color scheme

50+ CSS custom properties respond to WordPress's nine native color schemes — Default, Blue, Coffee, Ectoplasm, Midnight, Ocean, Sunrise, Light, Modern. Inherit user preference automatically.

Agent-ready

Every component ships with a copy-paste AI prompt. Hand the HTML and context to Claude, GPT, Cursor, or Aider — and they'll generate plugin pages that fit the WP admin aesthetic.

Component library

25+ components. Pure CSS.

Every primitive you need for a polished plugin admin page. Click any tile to see the live preview and copy the code.

Built for AI workflows

HTML for humans. Prompts for agents.

Every component has two copy buttons. Grab the raw HTML for yourself, or grab a ready-to-paste prompt for your coding agent.

Copy HTML For humans
<div class="notice notice-success is-dismissible">
  <p><strong>Settings saved.</strong></p>
  <button type="button" class="notice-dismiss">
    <span class="screen-reader-text">Dismiss</span>
  </button>
</div>
Copy AI Prompt For agents
Add a dismissible WordPress admin notice to my
plugin page using WP AdminCSS.

Import the library:
<link rel="stylesheet" href="https://wp-
admincss.com/dist/wp-admin.css">

HTML:
<div class="notice notice-success
           is-dismissible">
  <p><strong>Saved.</strong></p>
  <button class="notice-dismiss">…
</div>

Customize

Match your brand — change a few tokens.

Every primitive uses CSS custom properties. Override them in your plugin's stylesheet to fit your brand. No build step, no preprocessor, no fork.

Default
Settings saved.
Stripe-ish purple
Settings saved.
Linear-ish teal
Settings saved.
--wpadmin-primary #2271b1
--wpadmin-primary-dark #135e96
--wpadmin-text #3c434a
--wpadmin-text-subtle #646970
--wpadmin-border #c3c4c7
--wpadmin-surface #fff
--wpadmin-radius 4px
--wpadmin-success / error / warning
+ 40 more spacing · typography · menu colors
Override in your plugin CSS
/* your-plugin/admin.css */ :root { --wpadmin-primary: #7c3aed; --wpadmin-primary-dark: #6d28d9; --wpadmin-radius: 8px; --wpadmin-text: #1a1a2e; } /* Scope to just your plugin page if you want */ .my-plugin-page { --wpadmin-primary: #0d9488; }
Or theme via the wrapper class
<div class="my-plugin-page"> <!-- everything inside picks up your tokens --> </div>

Get started

One line. Drop it in.

Add to your plugin admin page
<link rel="stylesheet" href="https://cdn.wp-admincss.com/css/latest.css">
Use real WordPress admin classes
<div class="wrap"> <h1>My Plugin</h1> <button class="button button-primary">Save</button> </div>

Built for AI-driven development

An AGENTS.md, a skills library, and a working scaffold.

Point your coding agent at one URL. It gets the framework instructions, the security patterns, the database conventions, and a working WP plugin to copy from — all in one shot.

📄

AGENTS.md

The master entry point. The framework, the anti-patterns, the security checklist. Hosted at cdn.wp-admincss.com/AGENTS.md — load it once, the agent has everything.

6 skill files

Security, database, data-modeling, enqueue, plugin-structure, i18n. Each focuses on the patterns AI agents commonly get wrong in WordPress. Load on demand.

Plugin boilerplate

A working plugin scaffold — settings page, REST endpoint, custom table, lifecycle hooks. Clone, find-replace the names, ship.

Drop into Cursor / Claude Code / Aider
# Tell your agent to use the framework @docs https://cdn.wp-admincss.com/AGENTS.md # Or read into the conversation directly curl https://cdn.wp-admincss.com/AGENTS.md curl https://cdn.wp-admincss.com/skills/security.md # Then ask: "Build a WP plugin settings page following WP AdminCSS" # The agent already knows the security boundary, the markup, the conventions.
Or clone the boilerplate
gh repo clone artificialpoets/wp-admincss cp -r wp-admincss/boilerplate ~/my-plugin cd ~/my-plugin && composer install

Three packages, one model

CSS, React, and PHP — all rendering the same WP class names.

Pick the runtime that fits your plugin. Every package emits identical WP-native HTML, inherits the user's color scheme, and exposes the same component set.

@wp-admincss/core-css

Pure CSS

Tokens + WP admin CSS bundle. Drop the stylesheet into any plugin page — no JS, no build step.

⚛︎
@wp-admincss/react

React components

Typed components rendering real WP class names. <Button variant="primary">.

{ }
wp-admincss/composer

PHP helpers

Composer package with render helpers. Components::button('Save', ['variant' => 'primary']).

Stop hand-rolling WP admin styles.

Browse the component library, copy what you need, and ship a polished plugin page in minutes.

Browse components