npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2026 – Pkg Stats / Ryan Hefner

@anjunar/scalajs-jfx

v3.0.5

Published

Default component CSS for the scalajs-jfx Scala.js modules.

Readme

@anjunar/scalajs-jfx

Component CSS, four design packages and design roles for the classes emitted by the Scala.js JFX modules. The package supplies four independent light/dark palettes and component rules; it does not contain rendering or component logic.

Overview

The Scala modules render jfx-* class names. This package makes those classes visible and keeps the styling contract in one versioned package shared by Scala and TypeScript consumers.

Installation

npm install @anjunar/scalajs-jfx

Import the stylesheet from the application's CSS entry point:

@import "@anjunar/scalajs-jfx/index.css";

Alternatively, import @anjunar/scalajs-jfx as a JavaScript side effect when your bundler handles CSS side effects.

Styling ownership

designs/*/tokens.css owns the semantic roles from the neighbouring lob-der-reinen-intuition/design Multi Constitution. The four designs are atlas, flora, terra and ember. Set data-design and data-color-scheme="light" or "dark" on <html>. The defaults are Ember and dark, independent of the operating system.

base/Theme.css maps these roles to the existing --aj-* interface shared with Lexical. base/Tokens.css supplies structural aliases. Cascade layers separate component patterns, design decisions, utilities and accessibility invariants. Application styles belong in layer(patterns) so they do not accidentally override the chosen design.

Application CSS owns application layout and application-specific class names. Inline styles from the JFX style DSL carry runtime values such as measured dimensions, transforms, or the drawer's width custom properties. Static layout belongs in CSS. Accessibility rules preserve visible keyboard focus and reduced motion across visual designs.

Applications should provide an element reset; Tailwind Preflight is optional. This package contains no Tailwind directives and does not load @anjunar/ui. It includes Material Icons typography rules but no font binary. The currently published @anjunar/scalajs-lexical package still declares an @anjunar/ui peer dependency, so editor consumers may see that unused package in their installation tree.

Contents

designs/  metadata, generated registry, complete palettes and design rules
base/     palette, structural roles, accessibility and icon rules
action/   buttons
control/  carousel, data grid, links, tables, tabs, virtual lists
form/     combo boxes, editor, image cropper, inputs
layout/   drawer, boxes, viewport, windows

form/Editor.css is included for the editor package even when the Scala editor artifact is released separately.

API overview

The stylesheet entry point is index.css. The optional @anjunar/scalajs-jfx/preferences module exports designs, serverPreferences(url), bootstrapScript(legacyKey) and createPreferences(legacyKey, url).

Place the bootstrap in the document head before paint. It resolves validated URL previews (?design=flora&colorScheme=dark), then browser storage, then defaults. Preview URLs do not write storage. The controller updates only the document attributes; it does not remount application content. Its subscribe method returns an unsubscribe function which the app must dispose. Each server render creates its own state.

User choices are stored separately in jfx.design and jfx.color-scheme; the optional legacy key is only used to read an earlier light/dark choice. Storage failures leave the current page usable and are reported in controller state. The demos use localStorage, not cookies: SSR uses URL preferences or defaults; the pre-paint bootstrap restores browser preferences before hydration.

Regenerate the registry after metadata changes with npm run build:registry. npm run verify checks registry drift, complete token coverage in each design, standalone CSS and preference behavior. See the repository's MULTI_DESIGN.md for integration details.

Related modules