1. steal
Gets JavaScript.
steal
Package: steal
Created by: stealjs
Last modified: Mon, 27 Jun 2022 00:14:11 GMT
Version: 2.3.0
Downloads: 5,719
Repository: https://github.com/stealjs/steal

Install

npm install steal
yarn add steal

steal

Join our Slack
Join our Discourse
License: MIT
npm version
Travis build status
Greenkeeper badge

Sauce Test Status

In addition to a collection of plugins, StealJS is comprised of two main components:

  • steal: an extensible, universal module loader.
  • steal-tools: utilities for building, transforming, and exporting module formats.

This is the steal repository. For the tools, see https://github.com/stealjs/steal-tools.

Module Loading with steal

steal is unique because it can load JavaScript modules defined in ES6, AMD, and CommonJS formats (unlike most other module loaders, which only support one of these formats at a time).

In JavaScript, the word "modules" refers to small units of independent, reusable code. They are the foundation of many JavaScript design patterns, and can look like this in ES6:

 export function hello() {
  console.log('hello');
}
export function goodbye() {
  console.log('goodbye');
}

Or like this in AMD:

 define([], function() {
  return {
    hello: function() {
      console.log('hello');
    },
    goodbye: function() {
      console.log('goodbye');
    }
  };
});

Or like this CommonJS:

 function hello() {
  console.log('hello');
}
function goodbye() {
  console.log('goodbye');
}
module.exports = {
  hello: hello,
  goodbye: goodbye
}

All of these formats are supported by steal, so you can mix and match modules in your project:

 // ES6
import { hello, goodbye } from  "greetings";

// AMD
define(["greetings"],function(greetings){ ... });

// CommonJS
var hello = require('greetings').hello;
var goodbye = require('greetings').goodbye;

Additionally, plugins make it possible to load ANY module type you might come up with, such as Less or CSS. Anyone can write a plugin for steal to extend it's core module-loading functionality.

Extending steal with Plugins

The StealJS organization maintains popular plugins that extend and enhance the module-loading capabilities of steal (and, subsequently, steal-tools) such as:

For example, the Less plugin allows Less files to be loaded similarly to JavaScript modules:

 // ES6
import "style.less";

// AMD
define(["style.less"],function(){ ... });

// CommonJS
require("style.less");

// steal
steal("style.less")

Looking to create a plugin for another format? See Writing Plugins.

For more information on StealJS, visit StealJS.com.

Contributing

For information on contributing and developing, see the Contributing Guide on StealJS.com.

RELATED POST

10 Must-Know Windows Shortcuts That Will Save You Time

10 Must-Know Windows Shortcuts That Will Save You Time

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Arrays vs Linked Lists: Which is Better for Memory Management in Data Structures?

Navigating AWS Networking: Essential Hacks for Smooth Operation

Navigating AWS Networking: Essential Hacks for Smooth Operation

Achieving Stunning Visuals with Unity's Global Illumination

Achieving Stunning Visuals with Unity's Global Illumination

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code

Nim's Hidden Gems: Lesser-known Features for Writing Efficient Code