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

generator-ninthlink

v2.0.3

Published

generator-webapp + uncss, bootlint, etc.

Downloads

177

Readme

Ninthlink Web app generator Build Status

Yeoman generator that scaffolds out a front-end web app using gulp for the build process. A modified version of this generator.

Features

Please see the gulpfile for up-to-date information on what we support.

  • Bootstrap, Sass, and HTML5 Boilerplate (jQuery, Normalize.css, etc.)
  • UnCSS (customized for use with Bootstrap)
  • JS, CSS, and HTML Minification
  • CSS Autoprefixing
  • Built-in preview server with BrowserSync
  • Compile Sass with libsass
  • Lint your scripts
  • Lint Bootstrap HTML with gulp-bootlint
  • Source maps
  • Image optimization
  • Git initialization
  • Choose between Google Tag Manager and Google Analytics
  • Use yargs to customize the target directory of Gulp tasks
  • Wire-up dependencies installed with Bower
  • The gulpfile makes use of ES2015 features by using Babel
  • Many other customizations...

For more information on what this generator can do for you, take a look at the gulp plugins used in our package.json.

libsass

Keep in mind that libsass is feature-wise not fully compatible with Ruby Sass. Check out this curated list of incompatibilities to find out which features are missing.

If your favorite feature is missing and you really need Ruby Sass, you can always switch to gulp-ruby-sass and update the styles task in gulpfile accordingly.

Getting Started

  • Install Node
  • Install other dependencies: npm install --global yo gulp-cli bower
  • Install the generator: npm install --global generator-ninthlink
  • Run yo ninthlink to scaffold your web app
  • Run gulp serve to preview and watch for changes
  • Run gulp serve:test to run the tests in the browser
  • Run gulp to build your web app for production
  • Run gulp serve:dist to preview the production build

Additional Tasks

  • Run gulp bootlint to lint Bootstrap markup. This is currently a standalone task and will only lint the index.html file in the app/ directory. Feel free to customize as necessary.

Specifying a Custom Gulp directory

By default, the generator assumes that all development will take place in app/ ... and that our final product will end up in dist/. However, certain projects might warrant having multiple client directories. In a situation like this, we must pass our Gulp tasks flags that specify the target directory for these processes. Imagine that we clone a project into a new directory called "clients/wholefoods":

git clone <repo URL here> clients/wholefoods

In order to run Gulp in this new directory, we must include additional flags as follows:

--from=clients/wholefoods --appDir=app/adv/1 --distDir=dist/adv/1

or

--appDir=clients/wholefoods/app/adv/1 --distDir=clients/wholefoods/dist/adv/1

This methodology will allow us to import multiple pre-designed starter templates for a number of different clients within one repository.

Docs

Options

  • --skip-welcome-message Skips Yeoman's greeting before displaying options.
  • --skip-install-message Skips the the message displayed after scaffolding has finished and before the dependencies are being installed.
  • --skip-install Skips the automatic execution of bower and npm after scaffolding has finished.
  • --test-framework=<framework> Either mocha or jasmine. Defaults to mocha.
  • --no-babel Scaffolds without Babel support (this only applies to app/scripts, you can still write ES2015 in the gulpfile)

License

BSD license