Skip to main content Accessibility Feedback


A set of templates to help you kick-start your next JavaScript project.

🚀 Want to learn more about when and how to use these? Check out my Writing Plugins Pocket Guide or Mini Course.


An Immediately Invoked Function Expression (or IIFE) is used when you want your code to run immediately, but want to keep all of your variables and functions out of the global scope to avoiding conflicts.

Revealing Module Pattern

A revealing module pattern allows you to keep most of your variables and functions out of the global scope, but make some of them publicly available.


If you want your plugin to work with RequireJS, Node, or Browserify, you should use a Universal Module Definition (UMD) pattern. This wrapper for your plugin provides support for AMD and CommonJS modules, as well as global variables (like you would use with a revealing module pattern).