grailwind weekly downloads statistics
By pafirmin · npm · Tailwind plugins
Heraldic blazon for Tailwind CSS: tinctures, divisions, ordinaries and charges
grailwind has 862 recorded weekly downloads on npm, ranking #1671 of 2,855 tracked listings.
About grailwind
Grailwind CSS

Heraldic blazon for Tailwind CSS. Draw coats of arms, or style anything else, in the language heralds have used for 800 years:
<div class="escutcheon azure chevron-or">
<div class="charges between">
<i class="mullet argent"></i>
<i class="mullet argent"></i>
<i class="mullet argent"></i>
</div>
</div>
That's Azure, a chevron Or between three mullets Argent: a blue shield, a gold chevron, and three silver stars around it.
Read the documentation for every class, with live examples.
Grailwind is a light-hearted project at version 0.x, so class names may still change.
Install
Grailwind is a plugin for Tailwind CSS v4.
npm install -D grailwind
Import it after Tailwind:
@import "tailwindcss";
@import "grailwind";
This adds the heraldic tinctures (or, argent, gules, azure, vert,
purpure, sable) alongside Tailwind's own colours.
For a more authentic experience, import grailwind/strict instead, and the
tinctures replace Tailwind's colours entirely.
What's included
- Tinctures: a tincture on its own sets the background (
azure), and Tailwind's prefixes work as usual (text-or). There are also the fursermine,ermines,erminoisandpean, which work in divisions too. - The shield:
escutcheon, plusbordure-*,inescutcheon(a small shield at the centre) andcanton(a ninth of the shield in dexter chief), each with its own field and charges. - Divided fields:
per-pale-or-gules,quarterly-azure-argent,gyronny-or-sable,barry-argent-azureand more, orper-pale,per-fessandquarterlyfor layout. - Ordinaries:
fess-or,chevron-gules,cross-argent,chief-azure,two-bars-orand more, withfimbriated-*for a narrow border,fess-engrailed-orand the like for an engrailed or invected edge,chief-ermineand the like in a fur, orchevron-counterchangedand the like on a divided field. - Charges:
mullet,fleur-de-lis,bezantand more, arranged by number,in-pale,in-fess,in-bend,in-bend-sinister,onorbetweenthe ordinary, or placed at a named point such asin-dexter-chief, sized withcharge-size-*, andcounterchangedon a divided field. - Your own charges: any SVG, via
charge-[url(…)].
Linting
For typos and clashing classes, use
eslint-plugin-better-tailwindcss.
It reads Grailwind's classes from your CSS entry file, so it flags fess-ore or
per-pale-or-or, and catches two classes fighting over the same thing, such as
bend-sable bend-or:
// eslint.config.js
import betterTailwindcss from "eslint-plugin-better-tailwindcss";
export default [
{
plugins: { "better-tailwindcss": betterTailwindcss },
settings: { "better-tailwindcss": { entryPoint: "src/app.css" } },
rules: {
"better-tailwindcss/no-unknown-classes": "error",
"better-tailwindcss/no-conflicting-classes": "error",
},
},
];
For the heraldry itself, such as the rule of tincture and charges outside a charges
container, there is @grailwind/eslint-plugin (beta).
The plugin reads names from grailwind/data. That export is experimental: it's there for
Grailwind's own tooling, and its shape may change in any minor release.
Development
npm install
npm test # checks the default and strict builds, and the ESLint plugin
npm run test:render # renders shields in Chromium and Firefox and checks their colours;
# run `npx playwright install chromium firefox` first
npm run format # formats with Prettier; CI runs format:check
npm run dev:watch # rebuilds the docs site on change and serves it at http://localhost:8000
Licence
Description from the npm listing.
- tailwindcss
- tailwind
- heraldry
- blazon
- css
- coat-of-arms
- coats-of-arms
- tailwindcss-plugin
- eslint
README badge
Show your rank in a README or on your website. The badge updates automatically.
Charts
Images: 30d · 1y · all time · 1600×900 dark
Adoption over time
7/30/90-day growth
Ranking history
Listing placement
Listing placement
Filled points are observed values; hollow points come from Internet Archive snapshots of the listing page. Dashed segments span periods with no observations — values between points are not interpolated.
Each band is one page of 20. Weekly downloads on a linear scale. Placement is projected from weekly downloads, so it can differ from the marketplace's own sort order. Hover a dot to see the listing.
Recent observations
Full history (1)Similar npm Tailwind plugins plugins
All 20 grailwind alternativesData source
Weekly downloads (trailing 7 complete days) come from the official npm downloads API. Downloads include CI and mirrors and are not equivalent to installs or users. npm publishes no ratings.
Listing: https://www.npmjs.com/package/grailwind. First seen Nov 5, 2026; last successful collection Nov 5, 2026. See the methodology.