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-ember-config

v0.2.0

Published

Ember Configurator to facilitate app configuration

Downloads

106

Readme

generator-ember-config Build Status

Yeoman generator

Important note

Previously I only tested this generator using npm link. I always has a lib folder with "utils functionality" outside the /generators folder. However, unbeknowest to me, the Yeoman generator-generator creates a package.json file which includes an entry "files": ["generators"]. This means that only files under this folder is copied down to the user on install. Which means that indeed, /lib is non-existant using npm install -g generator-ember-config. This has now been fixed. No more files entry to screw things up!

If however this ever happens to you in the future, never hesitate to clone a repo, npm link and run it locally "in full" to make sure what the real issue is!!

Cheers baby!

PS: Hasn't been tested with latest Ember releases... let me know how it goes ;)

Getting Started

Use this generator to quickly setup your ember-cli based Ember project:

Limit having to:

  • copy/paste configure your project for asset compilers etc.
  • discover which install commands to execute when choosing a library
  • manually link all the pieces correctly together

Configure and Enjoy!!

Please help out improve/add sub-generators!

your feedback

Registry

This Generator is in the process of being integrated with Libraries, your library manager for Ember CLI.

Currently a registry of recommended libraries is under development... see the registry/libraries.json file.

Install Yeoman

npm install -g yo

Install ember-config

npm install -g generator-ember-config

Start the generator!

yo ember-config

See which sub-generators are available

yo ember-config --help

Start a sub-generator of your choice

yo ember-config:mobile

To use the the generator directly from github, do the following:

git clone https://github.com/kristianmandrup/ember-config.git
cd ember-config
npm link

In your root project folder:

npm link ember-config

Your project will now link directly to the local repo clone of ember-config. Now play around with ember-config and any changes will be directly available in your project when you execute yo ember-config;)

This npm link approach is also useful when you want to contribute to ember-config. In that case you should use your own forked version so you can make pull requests.

Development & Debugging

For development and debugging of this project

From /ember-config root:

npm link

Then from somewhere else in your system:

npm link ember-config

You can then run yo ember-config to see the code run and debug from there

Getting To Know Yeoman

For more on Yeoman: Getting Started Guide.

Usage

The generator should be used right after you have created an ember-cli based Ember application. Use this generator to setup your basic app infrastructure.

Guide

The generator will start with the following:

Welcome to Ember Configurator

Select configurations:

By default the following are selected:

  • Script (javascript (+ esnext), coffeescript, livescript)
  • CSS (css, less, sass, compass)
  • Templating (handlebars, emblem)
  • Layout (bootstrap, foundation, ...)

Additionally, the following configurators are available:

  • Test (qunit)

  • Adapters (firebase, emberfire, fireplace)

  • Fonts (awesome, ...)

  • Components

    • libs (ember, bootstrap)
    • individual (pagination, ...)
  • Mobile (cordova, ratchet, appjs)

  • Auth (simple-auth)

  • Forms (easyForms, forms, ...)

  • Validation (validations, validatable, ...)

  • Routing (auto routes, ...)

  • Templating (emblem)

  • Addons (i18n, validation, ...)

  • Libs (pour-over, ...)

  • ES6 harmony (esnext)

  • Animations (liquid-fire, velocity)

  • Gestures (hammer, touchy, ... )

  • Upload (uploader, droplet, ...)

  • Charts (charts, dc-D3)

  • Maps (leaflet)

  • Time (moment, moment timezone, date helpers, ...)

  • Sails full stack app :)

  • Famo.us integration (via Hefam)

The App config generator will invoke a sub-generator for each. Some of these sub-generators in turn invokes more sub-generators depending on your configuration and selections ;)

Scripting language

Installs a javascript precompiler of your choice.

  • Javascript (+ ESnext option)
  • Coffeescript
  • Livescript
  • Emberscript (experimental)

CSS precompilers

Installs a CSS precompiler of your choice.

  • CSS (none - default)
  • LESS
  • SASS (scss)
  • Compass (SASS + Compass)

Templating

Installs a templating framework of your choice

  • Handlebars
  • Emblem (soon w blueprints)

Layout

Installs a layout framework of your choice

  • Twitter Bootstrap 3.2 (css, sass)
  • Zurb Foundation 5.4 (css, sass)
  • Ink
  • Pure
  • Gumby
  • alternative

Alternative layout frameworks

  • Semantic UI
  • Flat UI (bootstrap theme)
  • Brick (web components!?)

(TODO ?) - UI-kit - Bootflat - Cascade - Skeleton - more... ??

Note: You are most welcome to add your own layout generator and invoke it from here ;)

Components

Component libs

  • Bootstrap for ember
  • Ember components
  • Ember Forms

Components

  • Date picker
  • List view
  • Radio buttons
  • Table

Adapters

Adds and configures an adapter for data storage/retrieval

  • Firebase
    • Emberfire
    • Fireplace
  • Local storage
  • Sync (offline)

Auth

Adds authentication

  • Simple auth
  • others (TODO)

Fonts

Adds font libraries

  • Font awesome
  • others (TODO)

Test

  • Qunit
  • others (TODO)

Mobile

  • Cordova
  • Ratchet
  • App.js

Animations

  • Liquid Fire
  • Velocity
  • Impulse

See demo @ https://github.com/ef4/ember-animation-demo

Addons

  • i18n
  • Pagination
  • Auto-properties
  • Date helpers
  • Notify
  • Data factory
  • Validations
  • Moment

Uploaders

  • Uploader
  • Droplet
  • Upload (experimental)

Full stack integrations

  • Sails
  • Famo.us

Design

Uses an aid object found in lib\aid for much of the functionality. Needs major refactoring!

TODO: - Make use of User Config, pass options between generators - Create Project stats object, which collects info about the project (what is currently used/installed)

User config (TODO)

Would be awesome to take advantage of Yo User Config:

From the "yo generator authoring" site:

"Storing user configuration options and sharing them between sub-generator is a common task. For example, it is common to share preferences like the language (does the user use CoffeeScript?), style options (indenting with spaces or tabs), etc."

"These configuration can be stored in the .yo-rc.json file through the Yeoman Storage API. This API is accessible through the generator.config object."

License

MIT