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

local_modules

v1.0.8

Published

embeddable npm local_modules.

Downloads

28

Readme

local_modules

embeddable npm local_modules

With local_modules you can develop your node.js library code in your application, as if they were node_modules published on npm.

Benefits

  • your module contains all it's dependencies
  • require your local modules with absolute paths (no more: require('../../../../server/controller.js'))
  • your application's package.json does not get bloated.
  • you can publish your application that contains local_modules
  • the local_modules dependencies get installed
  • your local_modules do not have to be developed inside the node_modules directory.
  • it supports your development workflow and installs local_modules as local npm modules.

why would I need a module for this?

read: MOTIVATION

whow does it work?

  • during development, it installs your local modules dependencies and links and links your local modules into the node_modules directory.

    Run:

    lm link -f
  • when installing your app in production, it temporarely adds file: dependencies to your package.json and runs npm install to install your local modules and their dependencies. Afterwards it restores your original package.json file.

    Run:

    lm install -f

install

npm i -g local_modules

use

you can use local_modules from the code in node.js or via command line.

If you wan't to publish your module that contains local_modules to npm, you can add this script to your package.json.

preparation


  "scripts": {
    "postinstall": "local_modules install -f",
    ...
   }

development

to link the local modules of your app into node_modules and install their dependencies, run:

lm link -f

production/deployment

to install the local modules of your app, run:

lm install -f

command line

lm is the alias for local_modules. you can use either one.

lm -h

*lm* helps you to deal with local npm modules.
It installs local modules and it's dependencies, e.g. useful in production,
and links them to have always up to date modules e.g. during development.

Usage: lm <command> [options]

lm -h      show help
lm -v      print lm version

Commands:

install    temporary adds the local module to the package.json, runs `npm install`, and removes them from package.json again.
uninstall  removes the local modules from the package.json, and runs `npm prune`, to remove the unneeded but installed modules.
link       links the local modules into the `node_modules` folder.
unlink     removes links of the local modules inside the `node_modules` folder.
add        adds the local modules to the package.json
remove     removes the local modules from the package.json

Options:
--dir      local module dirname default:`local_modules`
--tmp      temporary package.json file ending during install
--force    forced action: remove stuff, before copying or linking
# example
// install local modules in `./lib` directory
lm install --dir lib

code


// install example
var lm = require('local_modules');
lm({cmd: 'install', dir: 'lib'});

// or link example
lm({cmd: 'link', dir: 'lib', force: true});

test

npm test

license

MIT

author

Andi Neck @andineck