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 🙏

© 2024 – Pkg Stats / Ryan Hefner

xs-dev

v0.35.0

Published

CLI for automating the setup and usage of Moddable XS tools

Downloads

880

Readme

CLI for automating the setup and usage of Moddable XS tools

The Moddable SDK and associated dev board tooling is incredibly empowering for embedded JS hardware development, however the set up process can be tedious to follow when getting started. This project aims to streamline the install and environment configuration requirements across platforms in just a few commands.

Check out the documentation!

This project is a work in progress and currently pre-1.0, so there may be breaking changes.

Requirements

Node.js >= v16

If you've never installed Node.js before, check out the getting started guide for xs-dev.

XZ utils are required to install the CLI due to a dependency for decompressing the ARM toolchain used for nrf52 development.

It can be installed with Homebrew on MacOS:

brew install xz

Or as xz-utils on Linux distributions like Ubunutu:

apt-get install xz-utils

On Linux:

Setup commands rely on ssh-askpass to prompt for permission when installing other tools and dependencies.

Install

npm install -g xs-dev
pnpm install -g xs-dev
yarn global add xs-dev

Update to latest release

npm update -g xs-dev
pnpm update -g xs-dev
yarn global upgrade xs-dev

Features & Usage

Check out the docs to learn about using xs-dev and getting started with embedded JS development.

Development

Clone the project and install dependencies. We're using pnpm and volta to manage packages and Node.

git clone https://github.com/HipsterBrown/xs-dev.git
cd xs-dev
pnpm install

Link dev version of CLI using pnpm, which will override any other globally installed version:

pnpm link --global
pnpm link --global xs-dev

Or create an alias to clearly denote the local version of the CLI:

alias local-xs-dev=$PWD/bin/xs-dev

To maintain the alias between shell sessions, for example I use zsh:

echo "alias local-xs-dev=$PWD/bin/xs-dev" >> ~/.zshrc

Docs

The documentation site is built with Astro with the Starlight template and can be found in the docs/ directory. When working on them locally, run pnpm start:docs to start the development server that watches for file changes and reloads the page.

🚀 Docs Project Structure

Inside of your Astro + Starlight project, you'll see the following folders and files:

.
├── public/
├── src/
│   ├── assets/
│   ├── content/
│   │   ├── docs/
│   │   └── config.ts
│   └── env.d.ts
├── astro.config.mjs
├── package.json
└── tsconfig.json

Starlight looks for .md or .mdx files in the src/content/docs/ directory. Each file is exposed as a route based on its file name.

Images can be added to src/assets/ and embedded in Markdown with a relative link.

Static assets, like favicons, can be placed in the public/ directory.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

This project follows the all-contributors specification. Contributions of any kind welcome!