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

@lapis-notes/lapis-plugin-tasks

v0.1.1

Published

Lapis Notes Tasks planner, indexing, and catalog

Readme

Tasks for Lapis

CI and npm release Storybook Pages npm version Storybook

@lapis-notes/lapis-plugin-tasks is the first-party external Tasks plugin for Lapis. It ships a vault-backed planner runtime and a Design Core-backed catalog. The package Storybook includes a real Lapis workspace that loads the plugin.

The runtime plugin ID is tasks.

Development

Published LapisMD dependencies resolve through npm semver ranges. Package manifests must stay portable and contain no machine-specific dependency ranges.

pnpm install
pnpm spec:check
pnpm check
pnpm test
pnpm build
pnpm test:storybook
pnpm build-storybook

Package Storybook defaults to port 7030.

Refreshing local development dependencies

When the sibling repositories are present, .pnpmfile.cjs installs local package snapshots for development acceptance. These snapshots need refreshing after sibling source or public exports change. If Storybook reports missing files that exist in the owning repository, stop it and refresh the snapshots:

pnpm storybook:stop
pnpm install --lockfile=false --force
pnpm test
pnpm test:storybook
pnpm storybook

This temporary local validation setup leaves the registry lockfile unchanged. Validate releases and CI against the published registry dependencies.

Temporary browser acceptance mitigation

pnpm test:storybook intermittently loses the Vitest orchestrator connection between story files. The reported transport errors are Browser connection was closed and rpc is closed, cannot call "createTesters"; the cause remains open.

Run node scripts/test-storybook-batches.mjs for complete acceptance in three sequential Vitest shards, each with a fresh browser process and one worker. Every discovered story and existing interaction/axe assertion remains included. The runner stops at the first failed batch. Keep the unbatched command available for diagnosis; remove this mitigation once the transport is reliably fixed.

The preview inherits DM Sans Variable and Source Code Pro Variable from Design Core, matching the Lapis hosts. Settings headings use the shared compact heading tokens (16px, regular weight) rather than a demo-specific override.

The 10 October review record lists the repaired failures, acceptance counts, and deferred runner issue.

CI and local parity

pnpm validation:all runs the complete Docker aggregate in one worker: governance and source checks, unit and native tests, package build, publint, static Storybook, the three Storybook interaction shards, specification, and immutable release preparation. It stops at the first failure.

Local task output can be cached under .turbo/. The same tasks use the signed organization cache in CI and fail open to normal execution when it is unavailable. To use the remote cache locally, copy .env.example to the ignored root .env and provide TURBO_TOKEN and TURBO_REMOTE_CACHE_SIGNATURE_KEY. Never commit those credentials.

CI fans the Docker lanes out in parallel: Governance, Quality, Unit tests, Native, Static Storybook, and Storybook interactions (1/3), (2/3), and (3/3). Each lane sets up pnpm, Node 24, and the pinned Jujutsu tool, then selects the exact source revision. Dependency audits run after those lanes. Validate fails unless every required lane succeeds, then prepares the npm artifact. main is not branch-protected; Validate is the gate for version and publish jobs. Publish Storybook to GitHub Pages builds with pnpm build-storybook and deploys https://lapismd.github.io/lapis-plugin-tasks/.

npm releases

The canonical release operations define the Changesets PR, qualification, publication and registry verification sequence. The specification remains authoritative for release status and gates.

Temporary Bits UI patch for consumers

Until the upstream fixes are released, this checkout applies the approved [email protected] patch through its pnpm root configuration and frozen lockfile. It retains the approved LinkPreview cleanup and Slider lifetime guards, and adds the FocusScope same-container cleanup repair from upstream PR #2264.

Published dependency packages do not propagate pnpm patches to applications. Install the qualified Design Core release as a direct host dependency. Its patches/manifest.json, patches/[email protected] and patches/README.md provide the authoritative registry-delivered patch assets. Copy the patch into the consumer root, verify its SHA256 against that manifest, configure the root's own patchedDependencies and exact Bits override, and regenerate its lock. Verify the three installed postimage hashes and run affected functional, interaction and accessibility acceptance. A successful package installation alone does not qualify an unpatched host. The canonical patch requirements record provenance and removal conditions. Remove the patch after the repaired upstream release passes the original regressions and all affected acceptance.