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

planitjs

v1.0.7

Published

A Node.js CLI tool for making plan files based on simple data storage formats like YAML, JSON, etc.

Downloads

10

Readme

Planitjs - BETA

For Node.js 6

A planning tool made for humans which lets them define their plans in common data storage formats (e.g. YAML, JSON).

Philosophy

Planitjs has been written to maximise productivity. It's based on the simple principles of demand and supply. Here, you define your demands through plan files while planitjs supplies your demand.

Installation

Grab it through npm.

Install it globally to use CLI commands.

npm install -g planitjs

Usage

Planitjs can be used as a CLI tool and/or as a typical npm package.

You define plans in a common data storage format like YAML or JSON and let planitjs turn them into reality.

Commands

Process

planitjs

Process the plan files.

Version

planitjs --version

Get version of installed planitjs.

Plan files

The system for extending the types of plans supported is still being developed. Stay tuned!

Plans files are defined in formats like YAML, JSON, etc.

It is the job of planitjs to turn your plans into reality through the data provided in the plan files :)

Planned to make a bunch or directory and files? Planitjs got your back!

Flavors

For different type of plans, you need specific flavors to process them.

Specific flavors of plans can be used by installing node modules associated with the flavor.

File name of a plan file indicates the flavor (type of plan) and may contain hyphen separated arguments.

For example, a plan file named fs.yaml will instruct planitjs to use the node module planitjs-fs for processing it.

Node modules related to a plan flavor are prefixed planitjs-.

Attributes

Sometimes you may want to specify how a plan file should be processed. For example, you may want to include name of a song you're planning to write. You pass on the name as an attribute.

Attributes can be provided in the filename of the plan file, separated by hyphens.

For e.g. naming a plan file guitartab-strutter.txt instructs planitjs to use the flavor 'guitartab' and passes the argument 'strutter', which is the name of the song, for processing it.

How arguments are dealt depends totally on the flavor. You can pass as many arguments as you like, just by separating them with hyphens.

Development

Flavors

Flavors are node modules responsible for processing a specific type of plan file.

Whenever a plan file is processed, the flavor associated with it is 'require'-d. Contents of the plan file and the arguments are passed on to the module's "run" method. Having a run method is a necessity for a node module to be qualified as a flavor.

Example
// index.js
module.exports = {
    run: function (contents, args) {
        console.log("File contents: " + contents);
        console.log("First argument: " + args[0]);
    }
};