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

init-cli

v0.2.0

Published

Initialize with simple git repositories

Downloads

7

Readme

Init

David npm npm

Init is a new tool to quickly scaffold new projects. You can spot init projects by their .init file in the root of the GitHub project. It uses Nunjucks, a powerful templating engine powered by Jinja2. You can use any of the methods documented on the Nunjucks documentation.

Proudly sponsored by

Kreativgebiet

Why?

We at Kreativgebiet saw Pollinate by EverySquare the other day. Since we liked the approach but didn't want to have a json file for every project we wanted to create something that prompts the user in real-time about the data it should insert.

Disclaimer: Code heavily inspired by Pollinate

Installation

To use the init command globally install it using the -g argument of the npm install command like this:

npm install -g init-cli

How it works

Init uses Nunjucks to insert context data into the templates it grabs from GitHub (and soon other git sources and local folders). Use Nunjucks templating language (powered by Jinja2) to implement dynamic project scaffolds.

How to use

It's simple to use Init for scaffolding a new codebase for you next project. Simple search for a init template on GitHub and use the username/reponame to scaffold the project. Let's assume the username is kreativgebiet and the projectname is init-example. To scaffold a new project from this repository, simply use the following command:

init kreativgebiet/init-example

Since this feature isn't implemented, yet, you can initialize a new git repository with the following command and start developing with git.

git init

Basically just replace kreativgebiet with the username and scaffolder-example with the repository name.

Options to be added

In the future some options will be added to the project.

  • [x] --no-init – initializing a new git project
  • [x] --no-git – don't initialize anything on the folder
  • [ ] --hub repo-name – create a new public repository on github

What's next?

  • [x] Scaffolding from GitHub
  • [ ] Scaffolding from other git sources (GitLab, Bitbucket, etc.)
  • [ ] Scaffolding from a local folder
  • [ ] Scaffolding from an npm package
  • [ ] Scaffolding from for yeoman packages (not yet fixed)
  • [x] Automatically exec git init on project scaffolding
  • [x] Automatically create the first commit

License

This project is owned by Kreativgebiet and licensed under MIT license