Skip to content

Latest commit

 

History

History
298 lines (217 loc) · 10.9 KB

javascript.md

File metadata and controls

298 lines (217 loc) · 10.9 KB

JavaScript Resources

Below, you will find:

  • Expert Guidance
  • Books & Reference
  • Coding:   Debugging ・ Documenting ・ Optimizing ・ Sharing ・ Testing
  • Core Libraries:   Full Featured ・ Lightweight ・ Mobile ・ MVC Frameworks ・ Templating
  • Other Libraries:   Charting ・ Dynamic Loading ・ Feature Detection ・ Mapping ・ Messaging ・ Touch Interface
  • Server-side JS

Expert Guidance

These sites are the best of the best at providing compelling, current content on the JavaScript language, patterns, coding techniques, sample code, and/or interesting libraries.

Highest Recommendation

Other Recommended Options

Articles & Discussions


Books & Reference

These resources are more static in nature and provide a great foundation for your JavaScript learning.

Highest Recommendation

Other Recommended Options


Coding: Debugging

These tools help you find problems in your code.

Highest Recommendation

Other Recommended Options


Coding: Documenting

These tools help document your code

Highest Recommendation

Other Recommended Options


Coding: Optimizing

Everyone wants a high performing site or app. These libraries will assist you in that quest.

Highest Recommendation

Other Recommended Options

Articles & Discussions


Coding: Sharing

These sites make it easy to test out, demonstrate, or just share your code with others.

Highest Recommendation

Other Recommended Options


Coding: Testing

From unit tests to regression tests to code coverage tests and everything inbetween, these tools have you covered.

Highest Recommendation

Other Recommended Options

Articles & Discussions


Core Libs: Full Featured

These libraries have been around forever and are very desktop centric. The highest recommendation will be no surprise to anyone.

Highest Recommendation

Other Recommended Options


Core Libs: Lightweight

These libraries were created with mobile in mind, as they are very lightweight and give you all the features that most people use the full featured libraries for.

Highest Recommendation

  • None - at this point, I see no reason not to use jQuery in lieu of any of these libs. After compression and gzipping, there is not a sizable difference in size. And zepto.js has shown to be brittle in the past with various os and browser upgrades.

Other Recommended Options


Core Libs: Mobile

These libraries may rely on their desktop counterparts (e.g., jQuery Mobile), or are mobile-only replacement libraries (e.g., Sencha Touch)

Highest Recommendation

  • None - there are no solutions that I would give the highest recommendation to at this point.

Other Recommended Options


Core Libs: MVC Frameworks

These frameworks offer the basics (e.g., backbone.js), or are extensive and prescriptive (e.g., ember.js). Regardless, all exist to provide a clean separation between the interface, its interactions, and the data model.

Highest Recommendation

Other Recommended Options


Core Libs: Templating

These libraries enable client-side templating.

Highest Recommendation

Other Recommended Options


Libraries: Charting

Whether you need a basic pie chart, or a complex financial graph, one of these libraries is likely to fit the bill.

Highest Recommendation

Other Recommended Options


Libraries: Dynamic Loading

These libraries are used to dynamically load JavaScript modules, CSS files, or other web assets.

Highest Recommendation

Other Recommended Options


Libraries: Feature Detection

These libraries determine device/browser capabilities based on their feature support. In addition, they provide polyfills (fallback support) for many cases where features are not natively supported.

Highest Recommendation

Other Recommended Options


Libraries: Mapping

Whether you need a basic pie chart, or a complex financial graph, one of these libraries is likely to fit the bill.

Highest Recommendation

Other Recommended Options


Libraries: Messaging

These libraries give you the plumbing you need to implement client-side messaging methodologies, such as pubsub.

Highest Recommendation

Other Recommended Options


Libraries: Touch Interface

These libraries enable support for touch devices by handling taps, double taps, swipes, gestures, and more.

Highest Recommendation

Other Recommended Options


Server-side JS

There really is just one platform you need to know about: Node.js. The other links are either node modules or module loaders.

Highest Recommendation

Other Recommended Options