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

@karimsa/mono

v0.1.1

Published

Monorepo helper for JavaScript.

Downloads

2

Readme

@karimsa/mono CircleCI

Monorepo helper for JavaScript.

Usage

To get started, you don't have to do anything. As long as your project follows the typical JS monorepo structure of having projects under packages/ - you should be good to go.

To run a cross-project npm install, simply do npx @karimsa/mono (you don't have to install this package, it should download quite fast with npx given that it has no dependencies & it is really small).

Here's some other things you can do:

  • Build all your packages: npx @karimsa/mono run build
  • Run all tests: npx @karimsa/mono test
  • Start all dev servers: npx @karimsa/mono start
  • Link all libraries: npx @karimsa/mono link (install will also run link after)

start

The start command in @karimsa/mono is a bit different from the other commands. Most commands will simply run the correct commands in each project directory, but start will concurrently run start across all projects that support it. This means that you can run all your dev servers in parallel, since this is the typical use case for start.

link

The link command will create require shortcuts in all repositories to all other packages. For instance, if you have the following directory structure:

packages
 |--- a
 |--- b

Then running npx @karimsa/mono link will make it so that you can require('a') inside of b and require('b') inside of a. The require links the module directly rather than making a copy so changes will always be reflected when you do a require().

License

Licensed under the MIT license.

Copyright © 2019-present Karim Alibhai. All rights reserved.