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

grunt-angular-boilerplate

v1.0.0

Published

Boilerplate application in Angular.js using Grunt as task runner

Downloads

7

Readme

grunt-angular-boilerplate Build Status Coverage Status

My boilerplate Angular.js application using Grunt.js as task runner.

Front-End dependencies handled by Bower, unit tests run by Karma & Jasmine.

Installing

npm install -g grunt-cli bower

Running

grunt serve

Building for production

grunt build

Running tests

grunt karma:unit

Project structure

Lets start, by introducing the folder structure of the project.

We have few importants folder to mention, and they shouldnt be moved unless necessary (GruntJS tasks will fail):

  1. js - main javascript folder for all related javascript stuff
  • src - code written by developers, used by Grunt to process
  • build - code processed by GruntJS ( dont edit anything there !)
  1. libs - main folder for 3-party javascript libraries such as jQuery or Bootstrap, Angular etc
  2. views - place where all html tempalate files goes
  3. styles - place for styles
  • less - all less files that are going to be proccessed by GruntJS goes here
  • css - files created by GruntJS
  1. test - contains unit tests

GruntJS tasks

Now, lets go to GruntJS tasks.

Right now we have one main grunt task that combines all the usefull tools to develop our application. When you type:

grunt serve

thats whats happening under the hood:

  1. Grunt calls Bower and download all javascript libraries to the libs/vendor directory
  2. Grunt takes all developer written javascript files from js directory, creates directives.js, controllers.js etc and puts them inside the js/build folder
  3. Grunt compiles less files inside the styles/less directory and outputs css file to styles/css
  4. Grunt launches web browser with application deployed on Connect.js
  5. Grunt goes into background mode, listens for any changes made in the code by developer, rebuild the application, and refreshes active browser window
grunt build

Prepares application for deployment, by cleaning up directories, installing necesary libraries, running unit tests.

grunt karma:unit

Performs karma unit tests for UI.

Smaller tasks that do cool thinks:

  1. clean - removes cache directories
  2. bower:install - launches Bower automatically, so you don`t need to (smile)
  3. concat - merges all files and compress them
  4. less - compiles LESS into css