Tuesday, June 11, 2013

Development Tools

Javascript Frameworks :
  • EmberJS
    MVC+Router with Handlebars.js as template
  • BackboneJS
    MVP (Model View Presenter) Single page web application
  • MarionetteJS
    Backbone.Marionette is a composite application library for Backbone.js that aims to simplify the construction of large scale JavaScript applications. It is a collection of common design and implementation patterns found in the applications that we have been building with Backbone, and includes pieces inspired by composite application architectures, event-driven architectures, messaging architectures, and more.
  • Coffeescript
    is a programming language that transcompiles to JavaScript. The language adds syntactic sugar inspired by Ruby, Python and Haskell to enhance JavaScript's brevity and readability, adding sophisticated features like list comprehension and pattern matching. CoffeeScript compiles predictably to JavaScript and programs can be written with less code, typically 1/3 fewer lines, with no effect on runtime performance. Since March 16, 2011, CoffeeScript has been on GitHub's list of most-watched projects, and as of today is the eleventh most popular language on GitHub. [http://en.wikipedia.org/wiki/CoffeeScript]
  • Modernizr
    Modernizr is a JavaScript library that detects HTML5 and CSS3 features in the user’s browser. Modernizr runs quickly on page load to detect features; it then creates a JavaScript object with the results, and adds classes to the html element for you to key your CSS on. Modernizr supports dozens of tests, and optionally includes YepNope.js for conditional loading of external .js and .css resources.
  • CanJS
    Want to share code between a Zepto mobile app and a jQuery desktop app? No problem. CanJS code (especially models) can be shared across libraries, and so can skill sets! Working on a Dojo project today and a YUI one tomorrow? Don’t throw away all of your skills.
  • Underscore.js
    Underscore is a utility-belt library for JavaScript that provides a lot of the functional programming support that you would expect in Prototype.js (or Ruby), but without extending any of the built-in JavaScript objects. It's the tie to go along with jQuery's tux, and Backbone.js's suspenders.
  • AMD / RequireJS
    RequireJS is a JavaScript file and module loader. It is optimized for in-browser use, but it can be used in other JavaScript environments, like Rhino and Node. Using a modular script loader like RequireJS will improve the speed and quality of your code.
Javascript Test Frameworks :
  • Mocha
    Mocha is a feature-rich JavaScript test framework running on node and the browser, making asynchronous testing simple and fun. Mocha tests run serially, allowing for flexible and accurate reporting, while mapping uncaught exceptions to the correct test cases
  • Chai
    Chai is a BDD / TDD assertion library for node and the browser that can be delightfully paired with any javascript testing framework.
  • JSHint
    is a tool to detect errors and potential problems in JavaScript code and can be used to enforce coding conventions.
Build tools/ Automation Framework :
  • Apache Maven
    Build Automation
  • PHP Maven
    Build Automation for PHP
  • Grunt.js
    In one word: automation. The less work you have to do when performing repetitive tasks like minification, compilation, unit testing, linting, etc, the easier your job becomes. After you've configured it, a task runner can do most of that mundane work for you—and your team—with basically zero effort.
  • Travis-CI
    Focus on writing code. Let Travis CI take care of running your tests and deploying your apps.
Style (CSS) Tools :
  • LESS
    The dynamic stylesheet language. LESS extends CSS with dynamic behavior such as variables, mixins, operations and functions. LESS runs on both the server-side (with Node.js and Rhino) or client-side (modern browsers only).
  • SASS
    Sass is an extension of CSS3, adding nested rules, variables, mixins, selector inheritance, and more. It’s translated to well-formatted, standard CSS using the command line tool or a web-framework plugin.
  • Stylus
    Expressive, dynamic, robust CSS
Template System :
  • Handlebars
    Handlebars provides the power necessary to let you build semantic templates effectively with no frustration. Mustache templates are compatible with Handlebars, so you can take a Mustache template, import it into Handlebars, and start taking advantage of the extra Handlebars features.
  • Mustache
    "Logicless Templates" - Mustache can be used for HTML, config files, source code - anything. It works by expanding tags in a template using values provided in a hash or object. We call it "logic-less" because there are no if statements, else clauses, or for loops. Instead there are only tags. Some tags are replaced with a value, some nothing, and others a series of values. This document explains the different types of Mustache tags.
  • Jade 
    Node template - Jade is a high performance template engine heavily influenced by Haml and implemented with JavaScript for node.
UI Boilerplate :
  • Bootstrap
    Sleek, intuitive, and powerful front-end framework for faster and easier web development.
Database Alternatives :
  • Redis
    Redis is an open source, BSD licensed, advanced key-value cache and store. It is often referred to as a data structure server since keys can contain strings, hashes, lists, sets, sorted sets, bitmaps and hyperloglogs.


No comments: