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

smartlift-cli

v1.0.10

Published

commandline tool for managing the smartlift application

Downloads

13

Readme

SmartLift CLI

Commandline tool for managing the smartlift application

This project uses JavaScript Standard Style.

care that 'node_modules' excludes itself each file .... ||

  • build commandline tool

    ->

Path of the current executeable:

/home/autarc/.nvm/versions/io.js/v2.3.0/lib/node_modules/smartlift-cli

ERROR in ./src/main.js Module parse failed: /home/autarc/.nvm/versions/io.js/v2.3.0/lib/node_modules/smartlift-cli/src/main.js Line 9: Unexpected token You may need an appropriate loader to handle this file type. | */ | | import Configstore from 'configstore' | import updateNotifier from 'update-notifier' |

-> ignores as in node modules directiy

1.) Only regular depencies get installed after a package is loaded -> devDependencies not -> include everthing required during the runtime

2.) carefull about building something in the /node_modules/ folder, as pattern can therefore also include even the basic files ... (therfore include directly the '/bin')

3.) dont re-build on the client side, as path etc. differ and can't be controlled, ship with an executable and merely modify it for the enviornment !

optional dependencies "rf-release": "^0.4.0"

"rf-release": "^0.4.0"

	setup steps for

The commandline tool to manage and run the SmartLift application. It helps to setup the environment by handling the (core) modules and runtime.

// message.push('Update available: ' + chalk.green.bold(notifier.update.latest) + chalk.gray(' (current: ' + notifier.update.current + ')')) // message.push('Run ' + chalk.magenta('npm install -g ' + pkg.name) + ' to update.'); // console.log(yosay(message.join(' '), {maxLength: stringLength(message[0])}));

// https://github.com/Automattic/cli-table

Currently the different configurations in the build scripts are not optimized for production but can be modified later !

  • add explanation on each step whats happening, so the user sees the progress better ...

for now allowing to set the credentials in there -> or should the server self use his crdentials ? -> shoudl e enoughn as the lift is limited !

think about a better configuration, setting systems -> each module should add itself, provide configuration by itself -> creating the general overview ?!

check option for presets - using the settings confoguration tof fogure out which module to install

next steps:

-> create basic server ! -> create basic electron

-> creaete basic client ! -> split modules

-> for simplicty now, create new repository ....

.... module for the smartlift application

using the same structure for easier orientation

Commands:

  • toggle for enable/disable a module ?

to checK:

npm scopes

https://docs.npmjs.com/misc/scope

Commmon settings defined: { ROOT_DIRECTORY: '', SERVER_PORT: '' GITLAB_TOKEN: '' }

TODO:

  • talk with andre about gitlab/token exchange, best experience so far () ...

smartlift stop, stops the currently running process smartlift update (name) - updates modules Smartlift install name@

convention over configuration

-> using the smartlift name dependency to handle further requirements -> if a build step is required, define alias using npm run build

-> don't store settings/configurations if not required -> the complete listing etc. happens during the runtime, doesn't take to long in most csaes

Definin a new commands follows:

action(params, cli, smartlift)

// share store settings between applications, e.g. port

Basic approaches:

  • using a global 'Configstore' (key: smartlift) to access settings a cross different applications -> stored in the system configuration directory

https://github.com/ryanflorence/rf-release https://github.com/ryanflorence/rf-changelog

Usae Cases

  • setup a local smartlift instance to run
  • load existing modules to run
  • create a new module which can be easily integrated

as the server hooks up the script -> no additional built step is required, althought could be refenreced too if wishesd ...

http://blog.npmjs.org/post/118810260230/building-a-simple-command-line-tool-with-npm

// function will be invoked -> descroption adn command is sotred inside for better encapsulation !

// // // const commands = { // ['configure', 'change the settings of local smartlift instance' // // }

// // var argv = yargs // .usage( // / ___| _ __ ___ __ _ _ __| |_| | (_)/ _| |_ // \___ \| '_ ' _ \ / _' | '__| __| | | | |_| __| // ___) | | | | | | (_| | | | |_| |___| | _| |_ // |____/|_| |_| |_|\__,_|_| \__|_____|_|_| \__| // ) // // .demand(['w','h']) // .argv

// this[command](params, options)

http://blog.npmjs.org/post/118810260230/building-a-simple-command-line-tool-with-npm

// console.log(argv);

// program // .version(pkg.version) // .command('configure ', 'change the settings of local smartlift instance') // // .option() // '-c, --configure ', // // .command('list', '') // // .option() // --remote || --local || filters -> else both ! // .command('start', 'runs the local smartlift application') // .parse(process.argv) //

// // // // smartlift configure || -> changes the local settings which are initially defined during the // setup process // // smartlift start || runs the smartlift applications (can us optional params for configuration) // // --dev || original runs as production, but can toggle dev mode // // smartlift list || lists all installed available modules (remotly available + // label which are installed locally) // // smartlift install || installs an existing module // smartlift uninstall || // // smartlift new || creates a new smartlift module

// // smartlift version || shows a list of all local available version // // smartlift help || shows information about tool (e.g. commands)

// help, version || default, not

// // // // // const smartlift = new SmartLift() // // // // console.log(pkg) // // // // check for updates on start // // // check if already conffigure - installed // // // // // steps: // // - define propmt, show commands available and install // // - setup basic modules for client + server + runtime (electron) // // // // bin will be generated

API

// shows

.d$b. .d$b. .d$$$$$$b. .d$$$$$$b. .d$$$$$$b. .d$b..d$$$$$$$$b. $$$$$..$$$$$.$$$$$$$$$$$b .$$$$$$$$$$$b $$$$$$$$$$b $$$$$$$$$$$$$$$P' $$$$$$$$$$$$d$$$$$$$$$$$$bd$$$$$$$$$$$$b$$$$$$$$$$$b$$$$$$$$$$$$$$$b. $$$$$$$$$$$$Q$$$$$$$$$$$$PQ$$$$$$$$$$$$P$$$$$$$$$$$P$$$$$$$$$$$$$$$P' $$$$$´`$$$$$'$$$$$$$$$$$$''$$$$$$$$$$$$'$$$$$$$$$$P $$$$$$$$$$$$$$$b. 'Q$P' 'Q$P' 'Q$$$$$$P' 'Q$$$$$$P' 'Q$$$$$$$P 'Q$P''Q$$$$$$$$P'

Version: 0.6.3 (node v2.3.0, npm 2.13.5, platform: linux)

smartlift configure || -> changes the local settings which are initially defined during the setup process

smartlift start || runs the smartlift applications (can us optional params for configuration)

						--dev							|| original runs as production, but can toggle dev mode

smartlift list || lists all installed available modules (remotly available + label which are installed locally)

smartlift install || installs an existing module smartlift uninstall ||

smartlift new || creates a new smartlift module

smartlift version || shows a list of all local available version

smartlift help || shows information about tool (e.g. commands)

Options: -v --verbose verbose output

// just the name shows the commands, similar like --help

// directly on installation (or first time usage - lets see), defines the setup for the basic application (as only needed once)

smartlift init || setups up the basic smartlift enviroement with client/server module -> starts a procdure which guids and ask for path, credentials etc.

https://github.com/hoodiehq/hoodie

references:

hoodie-cli ember-cli

http://hood.ie/intro/#get-started

// logo- reference:

http://patorjk.com/software/taag/#p=display&f=Standard&t=SmartLift


/ | _ __ ___ __ _ _ __| || | (_)/ | | _ | '_ _ \ / _ | '| | | | | || __| __) | | | | | | (| | | | || || | | | |/|| || ||_,|| _|_____||| __|