Giter VIP home page Giter VIP logo

generator-angular-package's Introduction

AngularJS Module generator

Yeoman generator to create AngularJS modules like a library.

Build Status

This generator takes the hard work to make a AngularJS module and gives you time to think in the core functionality of your module. Just have to install yeoman and than start generating your modules.

Quick start

Install yeoman:

$ npm install -g yo

Install generator-angular-package:

$ npm install -g generator-angular-package

Create a new project directory:

$ mkdir myProject
$ cd myProject

Run:

$ yo angular-package

Answer the necessary questions to create the boilerplate for your module At this point you will get a module structure like this:

.
├── .bowerrc                                  # Configure bower directory for development
├── .editorconfig                             # Editor configuration for code consistency
├── .gitignore                                # Includes files that Git should ignore
├── .jshintrc                                 # JSHint config with angular global support
├── LICENSE                                   # Custom license file with your name in it
├── README.md                                 # Basic README.md with title of your module
├── bower.json                                # Bower configuration with custom devDependencies and ignore files
├── dist                                      # This folder and contents is generated by running gulp
│   ├── myProject.js                          # Your module, for dev proposes
│   └── myProject.min.js                      # Your module, ready for production
├── gulpfile.js                               # Gulp configuration for build your module
├── karma-dist-concatenated.conf.js           # Karma configuration to run unit tests using myProject.js
├── karma-dist-minified.conf.js               # Karma configuration to run unit tests using myProject.min.js
├── karma-src.conf.js                         # Karma configuration to run unit tests using src/**/*.js
├── package.json                              # Npm configuration with necessary dependencies for development
├── modules                                   # Source directory
│   └── myProject
│       ├── directives                        # Your directives place
│       ├── controllers                       # Your controllers place
│       ├── filters                           # your filters place
│       ├── sampleLibrary.module.js           # Main module file
│       └── services                          # Your services place
└── test
    ├── e2e
    │   └── myProject                         # Directory where you can store E2E tests
    └── unit
        └── myProject
            ├── directives                    # Directory where you can store unit tests for directives
            ├── controllers                   # Directory where you can store unit tests for controllers
            ├── filters                       # Directory where you can store unit tests for filters
            ├── sampleLibrarySpec.js          # Unit tests for main module
            └── services                      # Directory where you can store unit tests for services

To use your module, use the subgenerators commands:

$ yo angular-package:directive <<directive name>>
$ yo angular-package:controller <<controller name>>
$ yo angular-package:service <<service name>>

Then you can build your project with

$ gulp

With this, you will have 2 files on dist folder:

-<<your project name>>.js: builded version for dev

-<<your project name>>.min.js: builded version for production

Testing

To run tests:

npm install -g mocha
cd ./tests
mocha

License

MIT

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.