๐Ÿฅท Blades ![][B_NPM]

July 2, 2026 ยท View on GitHub

Minimal CSS Framework for Semantic HTML

Fully compatible and actively maintained successor to Pico CSS.

Introduces float labels, breakout container and other modern, opt-out helpers. Simply switch pico.css to blades.css OR use blades.standalone.css with other frameworks.


Quick start

There are 4 ways to get started:

A. Install manually

Download CSS archive and link css/blades.css in the <head> of your website.

<link rel="stylesheet" href="css/blades.css" />

B. Usage from CDN

<link rel="stylesheet" href="
  https://cdn.jsdelivr.net/npm/@anyblades/blades@2/css/blades.min.css
"/>

Live example: https://github.com/pallets/website/blob/main/src/pallets/templates/layout.html

Full list of CSS files available on CDN: https://cdn.jsdelivr.net/npm/@anyblades/blades@2/css/


C. Starter projects


D. Install with NPM

npm install @anyblades/blades

You can use precompiled Pico+Blades CSS (same as CDN version):

<link rel="stylesheet" href="
  node_modules/@anyblades/blades/css/blades.css
" />

Or import standalone Blades CSS sources (without Pico CSS):

@import "@anyblades/blades/standalone";

Live example using Tailwind: https://github.com/anyblades/buildawesome-starters/blob/main/site-tailwind/styles.css


To install and import both Pico+Blades CSS sources at once:

npm install @anyblades/pico @anyblades/blades
@import "@anyblades/pico";
@import "@anyblades/blades/standalone";

This is exactly how Blades CSS is built itself: https://github.com/anyblades/blades/blob/main/src/blades.css


Appendix

Starter HTML template

<!doctype html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1" />
    <meta name="color-scheme" content="light dark" />
    <link rel="stylesheet" href="css/blades.css" />
    <title>Hello world!</title>
  </head>
  <body>
    <main class="container">
      <h1>Hello world!</h1>
    </main>
  </body>
</html>

Standalone versions

Most of internal Blades CSS modules are available as standalone helpers, giving you flexibility to use them with other CSS frameworks:

ModuleCDNImport from NPM
Breakout containerhttps://cdn.jsdelivr.net/npm/@anyblades/blades@2/css/breakout.min.cssN/A
Link iconhttps://cdn.jsdelivr.net/npm/@anyblades/blades@2/css/link-icon.min.cssN/A
Responsive tablehttps://cdn.jsdelivr.net/npm/@anyblades/blades@2/css/responsive-table.min.cssN/A
Float labels
https://github.com/anyblades/float-label-css
https://cdn.jsdelivr.net/npm/@anyblades/blades@2/css/float-label.min.cssnpm install @anyblades/blades
@import "@anyblades/blades/float-label";
All above togetherhttps://cdn.jsdelivr.net/npm/@anyblades/blades@2/css/blades.standalone.min.cssnpm install @anyblades/blades
@import "@anyblades/blades/standalone";
Reset/normalizer
https://github.com/anyblades/pico
https://cdn.jsdelivr.net/npm/@anyblades/pico@2/css/pico.min.cssnpm install @anyblades/pico
@import "@anyblades/pico";
Experimental "ninja" add-onshttps://cdn.jsdelivr.net/npm/@anyblades/blades@2/css/blades.ninja.min.cssnpm install @anyblades/blades
@import "@anyblades/blades/ninja";

Live examples:

Documentation


Trusted by

Credits