一个巨大的前端开发资源集合
Frontend Development
- Guides </li>
- Architecture
- BEM: Methodology aimed at achieving fast to develop long-lived projects, team scalability, and code reuse.
- Atomic Design
- GitHub
- Video + Slides
- Atomic Design: Some Thoughts and One Example
- Atomic Design Makes Me Feel Like a Chemist
</ul> </li> - Polymer Project: Polymer is a new type of library for the web, built on top of Web Components, and designed to leverage the evolving web platform on modern browsers.
- Video: Web Components: A Tectonic Shift for Web Development + Slides
- Video: Web Components in Action
</ul> </li> - Aura is an event-driven architecture for developing scalable applications using reusable widgets.
- Hydra is an easy-to-use framework that provides you with the necessary tools to create scalable applications using modules and widgets.
- Terrific.js provides you a Scalable Javascript Architecture, that helps you to modularize your jQuery/Zepto Code in a very intuitive and natural way
- Patterns For Large-Scale JavaScript Application Architecture
- Video: Nicholas Zakas: Scalable JavaScript Application Architecture
- Book: Learning JavaScript Design Patterns
- Book: Single page apps in depth
- Book: Scalable and Modular Architecture for CSS
- jQuery Application Architecture Chart
- How To Manage Large jQuery Apps
- Comparison between different Observer Pattern implementations
</ul> </li> - Workflow
- Video: Javascript Development Workflow of 2013 by Paul Irish + Slides
- Yeoman is a robust and opinionated set of tools, libraries, and a workflow that can help developers quickly build beautiful, compelling web apps.
- Grunt is a task-based command line build tool for JavaScript projects.
- Web development is getting complex. Let's go shopping.
- GruntStart: A Grunt-enabled head-start with the H5BP, jQuery, Modernizr, and Respond. The building blocks to quickly get started with Grunt to create an optimized website.
- A beginner’s guide to Grunt
- Grunt - Synchronised Testing Between Browsers/Devices
</ul> </li> - Brunch is an assembler for HTML5 applications. It‘s agnostic to frameworks, libraries, programming, stylesheet & templating languages and backend technology.
- Front-end Process - Flat Builds and Automation
- Introduction
- Environment Setup & Yeoman
- Grunt Tasks
- CSS Framework (Inuit)
</ul> </li> - CSSCSS: A CSS redundancy analyzer that analyzes redundancy.
- Helium: JavaScript tool to scan your site and show unused CSS.
- JSLint for detecting errors or problems by static analysis of JavaScript programs.
- JSHint for more flexible static analysis of JavaScript programs.
- JSLint Error Explanations for explanations of the warnings given by JSLint and JSHint.
- ImageOptim-CLI: Make lossless optimisation of images part of your automated build process.
- jpegoptim: Utility to optimize/compress JPEG files.
- Pngcrush is an optimizer for PNG (Portable Network Graphics) files.
- Glue is a simple command line tool to generate CSS sprites.
- Roots A light, super fast, and intuitive build system meant for rapid advanced front end development.
- Sparky.js is a client-side application scaffold which helps those who want to have organized structure in their app, but don't want to subscribe to a particular client-side MVC framework.
- Mimosa is a batteries included web development workflow tool that will get you coding in seconds rather than hunting down plugins and wrangling config for hours.
- Automaton: Task automation tool built in JavaScript.
- Cartero: A modular client side asset manager.
- Mod is a task-based workflow tooling for web, it help developers quickly build robust and high-performance web applications.
- Wraith is a screenshot comparison tool.
</ul> </li> - Weekly & Daily Resources
- HTML5 Weekly
- HTML5 Bookmarks
- CSS Weekly
- JavaScript Weekly
- Sidebar.io The 5 best design links, everyday
- Web Design Weekly
- Web Development Reading List
- Webdev Newsletter
- Open Web Platform Daily Digest
- Responsive Design Newsletter
- echo.js: Reddit-like Website for JavaScript Resources
- Web Tools Weekly
- A Drip of JavaScript
</ul> </li> - Programming & Markup Languages
- CSS
- Understanding border-image
- What No One Told You About Z-Index
- Principles of writing consistent, idiomatic CSS
- Github CSS Styleguide
- Wordpress CSS Coding Standards
- Wizardry CSS Guidelines
</ul> </li> - JavaScript
- Book: Eloquent JavaScript
- JavaScript Study Guide
- Javascript Closures
- OOP In JavaScript: What You NEED to Know
- Combinator Recipes for Working With Objects in JavaScript
- Part II
</ul> </li> - Prototypes and Inheritance in JavaScript
- ECMA 262-3 in detail
- JavaScript Garden
- Google JavaScript Style Guide
- Github JavaScript Styleguide
- Wordpress JavaScript Coding Standards
- Extensions
- RubyJS is a JavaScript implementation of all methods from Ruby classes like Array, String, Numbers, Time and more.
- Mout is a collection of modular JavaScript utilities that can be used in the browser as AMD modules or on node.js (without any overhead).
- bacon.js: A small functional reactive programming lib for JavaScript.
</ul> </li> - Flow Control
- Coroutine Event Loops in Javascript
- How To Node Article on promises describing both sides: node.js and browser
- Video by Douglas Crockford on monads which is touching Promises
- Не надо давать обещания, или Promises наоборот
- Promises are the monad of asynchronous programming
- A Study on Solving Callbacks with JavaScript Generators
- What's The Point Of Promises?
- Promises/A+ Spec
- Callbacks vs Coroutines
- This document is intended to explain how promises work
- Video: Monads and Gonads (YUIConf Evening Keynote)
- Libraries
- Standalone-Deferred
- Standalone-Deferred
- Flowy
- Step
- kew is a lightweight promise library optimized for node.js
- jQuery Timing
- RSVP.js
- q
- Watch.js
</ul> </li> </ul> </li> </ul> </li> - HTML
- Book: Dive into HTML5
- Principles of writing consistent, idiomatic HTML
- Google HTML/CSS Style Guide
- Wordpress HTML Coding Standards
</ul> </li> - Higher Level Languages
- Dart: Typed language compiled to JavaScript. By Google.
- 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.
- Less extends CSS with dynamic behavior such as variables, mixins, operations and functions.
- Roole is a language that compiles to CSS.
- Stylus: Expressive, dynamic, robust CSS
- TypeScript is a typed superset of JavaScript that compiles to plain JavaScript (by Microsoft)
</ul> </li> </ul> </li> - Frameworks
- JavaScript
- Choosing a framework
- Angular
- Github
- Learning
- AngularJS-Learning: huge list of Angular learning resources
- AngularJS Screencasts
- Building Huuuuuge Apps with AngularJS
- What are the nuances of scope prototypal / prototypical inheritance in AngularJS?
- AngularJS from Basics to Dependency Injection
- AngularJS To Do List App
- AngularJS vs Ember
- The Hitchhiker’s Guide to the Directive
- Frontend Workflows with Grunt and Angular JS
</ul> </li> - Integration
- angular-requirejs-seed: this is a fork of Angular Seed but with changes needed for requireJS support.
- Writing Reusable AngularJS Components with Bower
- Native AngularJS directives for 推ter's Bootstrap.
- Automating AngularJS With Yeoman, Grunt & Bower
- Optimizing Angular Templates with Grunt on Heroku
- Building Offline Applications With AngularJS and PouchDB
</ul> </li> </ul> </li> - jQuery
- Github
- jQuery Wiki Page "Plugins/Authoring"
- 30 Days to Learn jQuery - A free Tut+ Premium course
- jQuery Plugin Development Boilerplate
- The Ultimate Guide to Writing jQuery Plugins
- Book: jQuery Fundamentals
- Pragmatic jQuery Style
- Handpicked jQuery Plugins
</ul> </li> - dojo
- Github
- Documentation
- Writing Your Own Widget
- 10 Reasons Why Your Projects Should Use the Dojo Toolkit by David Walsh
</ul> </li> - Backbone
- Github
- Book: Developing Backbone.js Applications
- Unsuck your backbone
- A Visual Guide to Marionette.js Views
- Building a Backbone.js app tutorial series.
- Migrating an existing app to Backbone
- Chaplin.js: An architecture for JavaScript applications using the Backbone.js library.
</ul> </li> - Meteor: An open-source platform for building top-quality web apps in a fraction of the time.
- Github
- Best Learning Resources for Meteor.js
</ul> </li> - Zepto.js: A minimalist JavaScript library for modern browsers with a largely jQuery-compatible API.
- Github
</ul> </li> - Minified.js: Minified.js is a client-side JavaScript library, comparable to jQuery and MooTools in scope. Its features include DOM manipulation, animation, events, cookies and HTTP requests.
- Github
</ul> </li> - React by 非死book
- Github
</ul> </li> - Qooxdoo is a universal JavaScript framework for building rich, interactive application, native-like apps for mobile devices, light-weight single-page oriented web applications or even applications to run outside the browser.
- jQWidgets is jQuery based framework and set of widgets for building web-based applications that work on PC, Touch and Mobile devices
- Flight is an event-driven web framework, from 推ter
- Singool.js Lightweight JavaScript framework for developing single-page web applications
- Knockout: Simplify dynamic JavaScript UIs by applying the Model-View-View Model (MVVM) pattern
- Sammy.js is a tiny JavaScript framework developed to ease the pain and provide a basic structure for developing JavaScript applications.
- Ember.js: A framework for creating ambitious web applications.
- Let’s Learn Ember - A free Tut+ Premium course
</ul> </li> - Maria: The MVC framework for JavaScript applications. The real MVC. The Smalltalk MVC. The Gang of Four MVC.
- Terrific Composer is a Frontend Development Framework specifically designed for building deluxe frontends based on the Terrific concept
- Rivets.js: Lightweight and powerful data binding + templating solution for building modern web applications.
- Synapse: Data Binding For The Rest Of Us
- A Comprehensive Collection Of Javascript Application Frameworks
- JavaScript Data Binding Frameworks
- Underscore.js
</ul> </li> - CSS
- A collection of best frameworks
- 推ter Bootstrap
- Home Page
- Github
- Download
- Bootstrap Hero List: The big badass list of bootstrap resources
- Widgets
- Color and Date Picker
- WYSIHTML5 RTE for Bootstrap
- Bootstrap Image Gallery
- jQuery UI Bootstrap
- Pines Notify: JavaScript notifications for Bootstrap or jQuery UI.
- fuelUX: Fuel UX extends 推ter Bootstrap with additional lightweight JavaScript controls.
- A date range picker for 推ter Bootstrap
- Bootbox.js: alert, confirm and flexible dialogs for 推ter's Bootstrap framework
- Time Picker
- Date/Time Picker
- ReCaptcha
- Bootstrap Modal: Extends Bootstrap's native modals to provide additional functionality.
- SelectBoxIt
- File Upload
- BootPag: BootPag - dynamic pagination jQuery plugin for 推ter bootstrap
- Bootstrap Arrows: A simple jQuery plugin and add-on to the popular 推ter Bootstrap framework to include the use of arrows at any angle in your UI designs.
- X-editable: In-place editing with 推ter Bootstrap, jQuery UI or pure jQuery
- Pagination
- Slider
- Application Wizard
</ul> </li> - Themes
- Bootswatch: Theme catalog.
- Jumpstart UI: Another catalog for paid themes
- Darkstrap: A dark theme.
- jQuery Mobile Boostrap: A jQuery Mobile theme based on 推ter Bootstrap
- Wrapbootstrap
- Flat UIFree Web User Interface Kit that Rocks!
- Wordpress
- BootstrapWP
- Roots Theme
- Bootstrap
- Bootstrap for Wordpress
- Bootstrap for WP
- StrapPress
- WPBS
</ul> </li> - CSS3 Microsoft Modern Buttons
- BootMetro: Metro style web framework
- Cosmo: Windows 8 inspired theme
- Inspiritas
- 非死book
- Google+
- Flatstrap
- Pinstrap
</ul> </li> - Misc
- Boilerstrap: A blank slate for the modern web. Just add creativity.
- Bootstrap GUI PSD: a toolkit designed to kickstart webdesign of webapps and sites.
- Font Awesome: The iconic font designed for use with 推ter Bootstrap
- Fontello: Icon fonts generator to get only the required fonts.
- Typo3 Extension
- Bootstrap CDN Free CDN for 推ter Bootstrap
- Bootstrap Tour Quick and easy way to build your product tours with 推ter Bootstrap Popovers.
- Bootsnipp: Design elements and code snippets for Bootstrap HTML/CSS/JS framework
- Form Builder
- PaintStrap: Generate beautiful 推ter Bootstrap themes using the Adobe kuler / COLOURlovers color scheme
- TODC: A Google-styled theme for 推ter Bootstrap.
- Layoutit!
</ul> </li> </ul> </li> - Responsive Grid System
- Responsive Grid System (2)
- Golden Grid System
- Compass: An open-source CSS Authoring Framework.
- Pondasee: Front-end starter kit combined with the power of SCSS & Compass.
- Centurion: A responsive web framework that scales with your device.
- Foundation by Zurb: The most advanced responsive front-end framework in the world. + Foundation 3 Documentation + Foundation 4 Documentation + Stylus based port
- Gumby
- ProfoundGrid
- Groundwork: GroundworkCSS's flexible grid system enables you to do rapid development and scales to fit any screen size, from handheld devices to large format televisions.
- skelJS
- Ink: Ink is a set of tools for quick development of web interfaces.
- neat: A lightweight semantic grid framework for Sass and Bourbon.
- Kube
- rwdgrid
- Simple Grid
- One% CSS Grid
- Workless
- inuit.css - a powerful, scalable, Sass-based, BEM, OOCSS framework.
- Kraken is a lightweight, mobile-first boilerplate for front-end web developers.
- Axis - clean Stylus-based foundation to build your styles upon
- Jeet next gen responsive grid
- Susy - Responsive grids for Compass
- Pure - Minimal, flat, responsive CSS modules.
- Topcoat is a CSS library evolved from the Adobe design language developed for Brackets, Edge Reflow, and feedback from the PhoneGap app developer community.
</ul> </li> </ul> </li> - Cross Browser
- Normalize.css
- HTML5 Cross Browser Polyfills
- Viewport Component
- Can I Use - Compatibility tables for support of HTML5, CSS3, SVG and more in desktop and mobile browsers.
- HTML5 Please - Collective recommendations for polyfills and implementation of HTML5 and CSS3 features.
</ul> </li> - Cross Device
- Responsive
- Responsive Boilerplate: A starting point to responsive web design!
- Video: Responsive Design Workflow by Stephen Hay + Slides
- Responsive Patterns
- Responsive Navigation Patterns
- Complex Navigation Patterns for Responsive Design
</ul> </li> - Responsinator
- How to make a Responsive Newspaper-like layout
- The State Of Responsive Web Design
- Facing The Challenge: Building A Responsive Web Application
- This repo contains techniques and concepts to build responsive & hybrid web applications.
</ul> </li> - Tables
- Responsive Data Tables
- stacktable.js
- FooTable
</ul> </li> - Events
- Breakpoints.js
- Harvey.js
- Enquire.js
</ul> </li> - Images
- Fluid Images
- How to Use Responsive Images to Make Your Site Shine on Any Platform
- Adaptive Images
- Why We Need Responsive Images
- Riloadr: A cross-browser framework-independent responsive images loader.
- jQuery Picture
- Picturefill
- Clown Car Technique for Responsive Images
- imgLiquid jQuery plugin to resize images to fit in a container.
- lazy load images lazy load images with out jquery.
</ul> </li> - Text
- FitText: A jQuery plugin for inflating web type
- Out Of Words!: The responsive typography framework behind Words App
- Responsive Font Sizing: Making your font size respond to your screen size, easy & maintainable.
- Responsive Measure
</ul> </li> </ul> </li> - E-Mail
- Responsive Email Design: A great guide to create Responsive Email Design
- Responsive Email Templates: Some responsive templates for email
- HTML Email Boilerplate
- CSS Support in Email
</ul> </li> - Mobile
- Frameworks
- jQuery Mobile: Touch-Optimized Web Framework for Smartphones & Tablets
- jQTouch is a Zepto/jQuery plugin for mobile web development on the iPhone, Android, iPod Touch, and other forward-thinking devices.
- Junior
</ul> </li> - Emulators
- thumbs.js
- Phantom Limb
- Touché
</ul> </li> - Scrolling
- jSwipeKinetic is a jQuery plugin that enables you to add kinetic scrolling on your touch optimized projects. jSwipeKinetic is build on top of jGestures (jgestues.codeplex.com).
- jQuery.pep.js: A lightweight plugin for kinetic-drag on mobile/desktop.
- Overscroll is a jQuery plug-in that mimics the iphone/ipad scrolling experience in a browser.
- Zynga Scroller
- pull-to-refresh.js
- Overthrow
- Antiscroll
- iscroll
</ul> </li> - Gestures
- jGestures jQuery plugin enables you to add gesture events such as ‘pinch’, ‘rotate’, ‘swipe’, ‘tap’ and ‘orientationchange’ just like native jQuery events.
- hammer.js is a focused, standalone JavaScript library, only for multi-touch gestures.
- Touchy: is a highly configurable jQuery plugin. It exposes event data (velocity, etc.) for longpress, drag, pinch, rotate and swipe.
- TouchSwipe
- TipTap
- jQuery.event.swipe
- toe.js is a tiny library based on jQuery to enable sophisticated gestures on touch devices.
- Jester
- JS Touch Layer
- Touch Events and Abstractions
</ul> </li> - DOM Objects Manipulation
- jQuery.event.move
- WKTouch: A JavaScript plugin for touch-capable devices, enabling multi-touch drag, scale and rotate on HTML elements.
</ul> </li> - Tap Acceleration
- Energize
- Tappable is a simple, standalone library to invoke the tap event for touch-friendly web browsers.
- Fastclick is a simple, easy-to-use library for eliminating the 300ms delay between a physical tap and the firing of a click event on mobile browsers.
- Lightning Touch
- Creating Fast Buttons for Mobile Web Applications
</ul> </li> - Layout
- Snap.js A Javascript Library for creating beautiful mobile shelfs in Javascript (非死book and Path style side menus)
- Flickable.js allows you to make any element touchable; useful for flicking between sections, or sliding elements around the page.
- PageSlide is a jQuery plugin which slides a webpage over to reveal an additional interaction pane.
- Swipe is a lightweight mobile slider with 1:1 touch movement, resistant bounds, scroll prevention, and completely library agnostic.
- Swiper: Mobile touch slider with hardware accelerated transitions.
- jQuery Mobile Pagination Plugin
- SwipeSlide: A Zepto Plugin for iOS like swipe navigation.
- stackable.js is an invaluable jQuery plugin that stacks your tables for small screens. It’s a huge advantage in terms of usability on mobile devices.
</ul> </li> - Reacting to Device Sensors
- lenticular.js is a jQuery plugin for creating image animations that response to tilting or mouse events.
- This End Up: Using Device Orientation
</ul> </li> - iOS
- Safari Image Delivery Best Practices
- Safari Graphics, Media, and Visual Effects Coding How-To's
- Safari CSS Visual Effects Guide
- Safari Web Content Guide
- Getting Started with iOS Web Apps
- The iPad Web Design & Development Toolbox
- Targeting the iPhone 4 Retina Display with CSS3 Media Queries
- How do I lock the orientation to portrait mode in a iPhone Web Application?
- jQuery Retina Display Plugin
- retina.js
- Retina Images
</ul> </li> </ul> </li> - Printers
- Tips And Tricks For Print Style Sheets
</ul> </li> </ul> </li> - Patterns & Snippets
- Responsive Patterns
- CSS3 Code Snippets
- The Blueprints are a collection of basic and minimal website concepts, components, plugins and layouts with minimal style for easy adaption and usage, or simply for inspiration.
</ul> </li> - DOM Manipulation
- xui: a super micro tiny dom library for authoring html5 mobile web applications.
- Tire offers a more lightweight alternative to libraries such as jQuery, Prototype and Zepto.
</ul> </li> - Typography
- Quick guide to webfonts via @font-face
- How To Achieve Cross-Browser @font-face Support
- Google Fonts
- Adobe Edge Web Fonts: Get started with free web fonts.
- Edge Web Fonts Website
</ul> </li> - Typekit: easy way to use commercial web font on your site.
- Matrix of fonts bundled with Mac and Windows operating systems, Microsoft Office and Adobe Creative Suite
- Typeset.css
- typecast
- CSSTypography
- SO: @font-face fonts only work on their own domain
- FitText: A jQuery plugin for inflating web type
- TypeButter
- slabText
- Baseline.js
- jKerny
- Lettering.js
- Trunk8 is an intelligent text truncation plugin to jQuery. It will cut off just enough text to prevent it from spilling over
- bacon is a jQuery plugin that allows you to wrap text around a bezier curve or a line.
- CSS Typography cheat sheet: Small roundup on CSS features that will enhance your web typography.
</ul> </li> - Services (Free & Commercial)
- TheToolbox
- colourco
- Color Scheme Designer: find resonate colors for a great design.
- Adobe Kuler: create and share color schemes.
- HTML Entity Character Lookup
- SpritePad
- Responsinator
- HTML Shell
- Form Builder
- Zen BG
- What Font Is identifies fonts from an image.
- Prepros
- Browser Shots tests compatibility in almost every browser.
- CSS3 Media Query Builder
- CSSArrowPlease Simple tooltip arrows with CSS
- jsFiddle
- codepen is an HTML, CSS, and JavaScript code editor right in your browser with instant previews of the code you see and write.
- site44 turns Dropbox folders to websites
- Backlift: Work in your Dropbox using your favorite editor. When you save your files, your website will automatically refresh.
- Smush.it uses optimization techniques specific to image format to remove unnecessary bytes from image files.
- JPEGmini Photo Server is an image optimization server which runs on Amazon EC2 (commercial).
- TinyPNG: Advanced lossy compression for PNG images that preserves full alpha transparency.
- Website Builders
- Squarespace
- BaseKit
- Doomby
- Edicy
- IM Creator
- Jimdo
- Moonfruit
- uCoz
- Webnode
- Webs
- Weebly
- Wix
- Wordpress.com
- Yola
- 1&1 Homepage
</ul> </li> </ul> </li> - Animation
- Stylie
- animate.less, is a bunch of cool, fun, and cross-browser animations converted into LESS for you to use in your Bootstrap projects. Great for emphasis, home pages, sliders, and general just-add-water-awesomeness.
- Canvas Advanced Animation Toolkit is an scene graph director-based animation framework for javascript based in the concept of a timeline.
- tween.js: Super simple, fast and easy to use tweening engine which incorporates optimised Robert Penner's equations.
- Janis is a lightweight Javascript framework that provides simple animations via CSS transitions for modern browsers on the web as well as mobile devices.
- Rekapi: A keyframe animation library for JavaScript
- CanvasScript3 is a Javascript library for the new HTML5 Canvas with an interface similar to ActionScript3. This library enables Sprite Groups, Layers, Mouse Events, Keyboard Events, Bitmap Effects, Tween Animations etc.
- Shifty is a tweening engine built in JavaScript. It is designed to fit any number of tweening needs.
- emile.js is a no-frills stand-alone CSS animation JavaScript framework.
- Firmin: a JavaScript animation library using CSS transforms and transitions.
- $fx(): A compact, lightweight Javascript Library for animation.
- Keanu is a micro-lib for animation on Canvas/JS.
- jsAnim is a powerful, yet easy to use library for adding impressive animations to websites, without sacrificing standards or accessibility. Weighing in at just under 25 kilobytes, jsAnim packs a lot of punch for such a little application.
- GreenSock Animation Platform is a suite of tools for scripted animation.
- Learning Resources
- Examples
- Codepen Repository: Codepen repository with examples of Greensock usage and code
</ul> </li> - scripty2 is an open source JavaScript framework for advanced HTML-based user interfaces. Or simply put, scripty2 helps you build a more delicious web.
- Animator.js: JavaScript animation library.
- Processing.js: is the sister project of the popular Processing visual programming language, designed for the web. Processing.js makes your data visualizations, digital art, interactive animations, educational graphs, video games, etc. work using web standards and without any plug-ins.
- jQuery Transit: Super-smooth CSS3 transformations and transitions for jQuery.
- Move.js is a small JavaScript library making CSS3 backed animation extremely simple and elegant.
- Collie is a Javascript library that helps to create highly optimized animations and games using HTML 5.
- Year Of Moo: Angular.js Animations
- animate.css is a bunch of cool, fun, and cross-browser animations for you to use in your projects. Great for emphasis, home pages, sliders, and general just-add-water-awesomeness.
- Approach
- Magic is a CSS3 framework with many animations, it's simple to use and many animations are cross-browser compatible.
</ul> </li> - Widgets
- Kits
- AlloyUI
- Kendo UI
- jQuery UI Bootstrap
- Zebra: JavaScript library that follows easy OOP concept, provides HTML5 Canvas based Rich UI and includes Java to JavaScript converter tool
</ul> </li> - File Upload
- jQuery File Upload
- tus fileupload
- Fine Uploader
</ul> </li> - Sitemap
- SlickMap CSS
</ul> </li> - Table Of Contents
- Tocify
- MagicNav.js
- jQuery TOC
</ul> </li> - Modals
- Avgrund
- Timeout Dialog
- Magnific Popup
</ul> </li> - Notifications
- Pines Notify
- notifier.js
- noty
- Toastr
- alertify.js
- Apprise
</ul> </li> - Gallery Sliders
- Sequence
- Rhinoslider
- Awkward Showcase
- Revolver.js
- Responsive CSS3 Slider
- Roundabout
- Slid.es
- Galleria
</ul> </li> - Pagination
- jPages
</ul> </li> - Selects
- jQuery Recurrence Input
- Select2
- jquery.selectable.js
- chosen is a library for making long, unwieldy select boxes more friendly.
</ul> </li> - Progress Bars
- Percentage Loader
- progress.js
</ul> </li> - Trees
- Nestable
</ul> </li> - Navigation
- jPanelMenu
</ul> </li> - Tooltips
- opentip
</ul> </li> - Misc
- jQuery Knob
- DopelessRotate
- jQuery Addresspicker
- Fangle: create interactive documents from plain text.
</ul> </li> </ul> </li> - Visualization
- Photon
- CSS3 shapes
- Morris.js
- Cube
- Cubism.js
- D3.js
- Introduction to D3
- Interactive D3 Tutorial
- NVD3
</ul> </li> - Crossfilter
- Datavisualization.ch
- jQuery.Gantt
- easy pie chart
- JointJS JavaScript Diagramming Library
- Gauge.js
- Google Chart Tools
- Piecon
- Viskit.js
- jStat
- CHAP Links Library
- bonsai
- Smoothie Charts
- DataMaps
- mxgraph
- Paper.js is an open source vector graphics scripting framework that runs on top of the HTML5 Canvas.
- Timeline.js: A Storytelling Timeline built in JavaScript.
- xCharts is a JS library for creating attractive, custom data-driven chart visualizations. It uses HTML, CSS, and SVG to create dynamic, fluid charts that can be easily customized and integrated.
- jQuery Gantt editor
- amCharts is a robust charting tool that will suit any dataviz need.
- Responsive vertical timeline
- Raphael.js Easy vector graphics for the web.
- three.js Javascript 3D library.
- Highcharts: Interactive JavaScript Charts for your web projects.
- Flot: Attractive JavaScript plotting for jQuery
- Chart.js: Easy, object oriented client side graphs for designers and developers
</ul> </li> - Validation & Forms
- Mention.js Lightweight wrapper for adding @user mention functionality to 推ter Bootstraps Typeahead plugin
- ALAJAX
- Parsley.js: Validate your forms, frontend, without writing a single line of javascript!
- mailcheck.js: A jQuery plugin that suggests a right domain when your users misspell it in an email address.
- one-validation is a collection of regular expressions for general validation purposes.
- nextVal is an easy-to-use, flexible and robust form validation plugin for jQuery.
- Fields.js creates collections of fields. Each field is constantly evaluated for validity, and is accessible through the collection.
- IV.js was created to provide a intutive way to provide validation filters that are useful in processing user input.
- Ladda: A UI concept which merges loading indicators into the action that invoked them.
- jQuery Super Labels
</ul> </li> - Transitions
- Quicksand
- Isotope
- flippant.js
- Meaningful Transitions
</ul> </li> - Numbers
- numeral.js: A javascript library for formatting and manipulating numbers.
- accounting.js
- numbers.js
</ul> </li> - Time and Dates
- moment.js: A 5.5kb javascript date library for parsing, validating, manipulating, and formatting dates.
- XDate
- Pikaday
</ul> </li> - Search
- Fullproof
- lunr.js is a simple full text search engine for your client side applications.
</ul> </li> - Testing
- FiveUI Extensible/open browser extension & headless system for testing UI Consistency guidelines (or anything else you can test with injected JS).
- Writing Testable JavaScript
- Writing Testable Frontend Javascript Part 1 – Anti-patterns and their fixes
- Introduction to BDD
- cucumber
- cucumber.js
- Gherkin is the language that Cucumber understands.
- Feature Introduction
- Given when then
</ul> </li> </ul> </li> - Jasmine - JavaScript BDD testing framework with Rspec-like syntax
- QUnit - JavaScript unit testing framework
- PhantomCSS - for automating visual regression testing of website styling to support refactoring of CSS
- Karma - Spectacular Test Runner for JavaScript
- Chai Assertion Library - Chai is a BDD / TDD assertion library for node and the browser that can be delightfully paired with any javascript testing framework.
- Sinon.JS - Standalone test spies, stubs and mocks for JavaScript.
- sinon-chai - Extends Chai with assertions for the Sinon.JS mocking framework.
- PhantomJS - PhantomJS is a headless WebKit, scriptable with a JavaScript API
- SlimerJS - A scriptable browser for Web developers that runs on Gecko
</ul> </li> - Template Engines
- ICanHaz.js
- Hogan.js
- Handlebars.js: Minimal Templating on Steroids
- Mustache: Logic-less templates
- Transparency
- doT.js
- Walrus
- Chibi
- Templayed.js
- ECT: Fastest JavaScript template engine with CoffeeScript syntax
- pithy: An internal DSL for generating HTML in JavaScript
- T: T.js is a template engine that uses simple Javascript data structure to represent html/xml data.
- Nunjucks is a full featured templating engine for javascript.
- Jade
- Linked.in Dust.js
- The client-side templating throwdown: mustache, handlebars, dust.js, and more
- Leaving JSPs in the dust: moving LinkedIn to dust.js client-side templates
- Tutorial
- Testing Console
</ul> </li> </ul> </li> - Routing And URLs
- Crossroads.js
- Hash.js
- director
- Davis.js
- path.js
- URI.js
- Roadcrew.js
- jQuery Address
- page.js
- speakingurl: generate a so called "static", "Clean URL", "Pretty URL" or "slug" from a string.
</ul> </li> - Rich Text Editors
- Mercury
- Redactor
- WYSIHTML5
- MarkItUp
- Hallo
- Substance Composer
- Proper
- SnapEditor
- Create.js
- MDMagick
- X-editable
</ul> </li> - Code Viewers & Editors
- SublimeText
- Rainbow.js
- Intelligist
- Prism.js
- Brackets: An open source code editor for the web, written in JavaScript, HTML and CSS by Adobe.
- CodeMirror
- Scripted
- tabIndent.js
- Behave.js is a lightweight library for adding IDE style behaviors to plain text areas, making it much more enjoyable to write code in.
</ul> </li> - Refactoring
- Refactoring Javascript with kratko.js
</ul> </li> - Performance
- General Information
- Video: DOM, HTML5, & CSS3 Performance by Paul Irish
- Video: High Performance Javascript by Nicholas Zakas
- Video: Building A Performant HTML5 App with Trunal Bhanse and Akhilesh Gupta (LinkedIn)
- Writing Fast, Memory-Efficient JavaScript
- JavaScript Performance Best Practices by Nokia
- Improving the performance of your HTML5 App
- Best Practices for a Faster Web App with HTML5
- Front-end performance for web designers and front-end developers
- Let's Make the Web Jank-free!
</ul> </li> - Memory
- Memory 101
- Memory leak patterns in JavaScript
- Understanding and Solving Internet Explorer Leak Patterns
- Finding memory leaks
- How to write low garbage real-time Javascript
- JScript Memory Leaks
- Tracking Down Memory Leaks in Node.js
- Effectively Managing Memory at Gmail scale
- Writing Fast, Memory-Efficient JavaScript
</ul> </li> - Tools
- jsPerf, the JavaScript performance playground
- Chrome Developer Tools
- Heap Profiling
- Profiles Panel
- JavaScript Profiling With The Chrome Developer Tools
- Introduction to Chrome Developer Tools, Part One
- Revolutions 2013
</ul> </li> - V8
- Optimizing for V8 - very technical series on the V8 engine
- I-want-to-optimize-my-JS-application-on-V8 checklist
- Performance tips for JavaScript in V8
</ul> </li> - JavaScript Leak Finder
- Introduction Article
</ul> </li> - Navigation Timing
- Firebug Paint Events
- Locache: JavaScript caching framework for client side caching in the browser using localStorage
- Caliper is a web service for performance monitoring of your web app.
</ul> </li> - DOM Manipulation
- Rendering: repaint, reflow/relayout, restyle
- Reflows & Repaints: CSS Performance making your JavaScript slow?
- The new game show: "Will it reflow?"
- When does reflow happen in a DOM environment?
- Speeding up JavaScript: Working with the DOM
- Efficient JavaScript on dev.opera.com
- When Does JavaScript trigger reflows and rendering
- How (not) to trigger a layout in WebKit
</ul> </li> - Animation
- requestAnimationFrame for smart animating
- Leaner, Meaner, Faster Animations with requestAnimationFrame
- Collie - high performance Animation library
- Using requestAnimationFrame to Optimize Dragging Events
- requestAnimationFrame API: now with Sub-Millisecond Precision
- Why moving elements with translate() is better than pos:abs top/left
</ul> </li> - Hardware Acceleration
- Visualizing WebKit’s hardware acceleration
- List of Chromium Command Line Switches
</ul> </li> - Browser Internals
- Video: Google I/O 2012 - Breaking the JavaScript Speed Limit with V8 by Daniel Clifford
- Video: Faster HTML and CSS: Layout Engine Internals for Web Developers: by David Baron of Mozilla
- How Browsers Work: Behind the scenes of modern web browsers
- How Browsers Work - Part 1 - Architecture
- Know Your Engines at O’Reilly Velocity 2011
- Video: GDC 2012: From Console to Chrome
- Fast CSS: How Browsers Lay Out Web Pages
- Video: What Browsers Really Think of Your App
- WebKit blog five-part series on rendering
- Video: Alex Russell - Life Of A Button Element
- How a web page loads
- Video: The Fundamentals, Primitives and History of HTML5
- The JavaScript engine family tree
- How JavaScript compilers work
- JavaScript compiler strategies
- The future for JavaScript
</ul> </li> - Images
- CSS-only: Load images on demand
- Clever JPEG Optimization Techniques
- Clever PNG Optimization Techniques
- How to Optimize PNG and JPEG without Quality Loss + Part 2
</ul> </li> - HTTP Transport
- Fantastic front-end performance: Concatenate, Compress & Cache
- Video: Cache Is King! by Steve Souders
- Best Practices for Speeding Up Your Web Site by Yahoo
</ul> </li> </ul> </li> - Modularity & Loaders
- Lazy Module Declaration: JavaScript Module-Assembler for building better web applications
- UMD (Universal Module Definition) patterns
- Browserify
- require.js
- Plugins
</ul> </li> - sea.js A Module Loader for the Web
- CrapLoader
- Writing Modular JavaScript With AMD, CommonJS & ES Harmony
- Путь JavaScript модуля
- Modular JavaScript with RequireJS
- LABjs & RequireJS: Loading JavaScript Resources the Fun Way
- JavaScript Inheritance and Public/Private members
- Deep dive into the murky waters of script loading
- Terminology: Modules
</ul> </li> - Package Management
- bower
- volo
- parcel is easy package management using a file server and path conventions, with built in support for Amazon S3. It is designed to encode package metadata, including name, version and OS within a path. The conventions allow this metadata to be queried, without the need for a database.
- jam.js
- component
</ul> </li> - Image Manipulation
- Paintbrush.js
- Obscura
- jCrop
- Pixastic
</ul> </li> - HTTP
- Specification
- Using CORS
- Cross-domain Ajax with Cross-Origin Resource Sharing
</ul> </li> - WebSocket
- Specification
- socket.io aims to make realtime apps possible in every browser and mobile device, blurring the differences between the different transport mechanisms.
- engine.io is the implementation of transport-based cross-browser/cross-device bi-directional communication layer for Socket.IO.
- SockJS is a browser JavaScript library that provides a WebSocket-like object. SockJS gives you a coherent, cross-browser, Javascript API which creates a low latency, full duplex, cross-domain communication channel between the browser and the web server.
</ul> </li> - Error Handling & Debugging
- Tracing.js - Javascript function tracing.
- JavaScript error handling anti-pattern
- Tattletale
</ul> </li> - Documentation
- DevDocs is an all-in-one API documentation reader with a fast, organized, and consistent interface.
- dexy is a free-form literate documentation tool for writing any kind of technical document incorporating code.
- docco is a quick-and-dirty, hundred-line-long, literate-programming-style documentation generator.
- styledocco generates documentation and style guide documents from your stylesheets.
- Ronn builds manuals. It converts simple, human readable textfiles to roff for terminal display, and also to HTML for the web.
- dox is a JavaScript documentation generator written with node. Dox no longer generates an opinionated structure or style for your docs, it simply gives you a JSON representation, allowing you to use markdown and JSDoc-style tags.
- YUIDoc is a Node.js application that generates API documentation from comments in source, using a syntax similar to tools like Javadoc and Doxygen.
- coddoc is a jsdoc parsing library. Coddoc is different in that it is easily extensible by allowing users to add tag and code parsers through the use of coddoc.addTagHandler and coddoc.addCodeHandler. coddoc also parses source code to be used in APIs.
- sphinx a tool that makes it easy to create intelligent and beautiful documentation
- Using JSDoc
</ul> </li> - Windows 8 Style