A wonderful style library
  • SCSS 71.5%
  • Astro 25.3%
  • TypeScript 2.9%
  • JavaScript 0.3%
Find a file
Repository files (latest commit first)
Filename Latest commit message Latest commit date
2026-09-18 18:26:15 +02:00
.changeset Merge pull request #1 from LinwoodDev/changeset-release/main 2026-09-18 17:28:16 +02:00
.github/workflows Fix publish ci 2026-09-18 18:26:15 +02:00
packages Merge pull request #1 from LinwoodDev/changeset-release/main 2026-09-18 17:28:16 +02:00
.gitignore Add configurable styling, rework buttons, add input 2024-02-18 15:53:09 +01:00
.npmrc Remove git checks 2024-02-17 17:54:05 +01:00
CONTRIBUTING.md Improve accessibility and responsive behavior across controls, cards, 2026-09-18 17:27:25 +02:00
LICENSE Add astro integration 2023-08-31 19:09:39 +02:00
package.json Fix publish ci 2026-09-18 18:26:15 +02:00
pnpm-lock.yaml Remove shadow from header 2026-09-06 12:37:14 +02:00
pnpm-workspace.yaml Upgrade dependencies 2026-08-30 19:59:20 +02:00
README.md Improve accessibility and responsive behavior across controls, cards, 2026-09-18 17:27:25 +02:00
SECURITY.md Improve accessibility and responsive behavior across controls, cards, 2026-09-18 17:27:25 +02:00

Linwood Style

Linwood Style is a small, customizable SCSS design system used by Linwood web projects. It provides theme tokens, typography, layout utilities, form controls, buttons, cards, navigation, and reusable mixins without requiring a JavaScript runtime.

View the component showcase

Packages

Package Purpose
@linwooddev/style Core SCSS styles, variables, utilities, and mixins
@linwooddev/starlight-style Shared Astro Starlight components and Linwood styling
docs Source for the public component showcase

Use the SCSS package

Install the package with your preferred package manager:

pnpm add @linwooddev/style

Load the default theme from your SCSS entry point:

@use "@linwooddev/style";

Sass variables can be configured before the stylesheet is evaluated:

@use "@linwooddev/style" with (
  $color-primary: #7c5cff,
  $color-background: #18181b,
  $border-radius: 0.75rem,
  $enable-default-styling: true
);

Set $enable-default-styling: false when you only want the class-based API and do not want Linwood Style to apply rules to plain HTML elements.

Development

This is a pnpm workspace and requires Node.js 24.

pnpm install
pnpm dev       # start the showcase at http://localhost:4321
pnpm build     # build every package that has a build script
pnpm check     # run package checks and a production docs build

Package versions and releases are managed with Changesets. See CONTRIBUTING.md before submitting a pull request.

License

Linwood Style is available under the MIT License.