Code Monkey home page Code Monkey logo

stitchup's Introduction

Browser-side require(), minifier & packager for CommonJS modules

Easily use Javascript & Coffeescript CommonJS modules in the browser using this handy commandline tool, even for non-NodeJS projects.

A directory of CommonJS modules is minified into a single javascript file, and each module can be exposed on demand in the browser via synchronous require().

StitchUp wraps the amazing stitch library https://github.com/sstephenson/stitch Thanks heaps sstephenson.

Minification is provided by the uglify library https://github.com/mishoo/UglifyJS/

Installation

$ npm install -g stitchup

Usage

Stitch up CommonJS modules located in app to public/bundle.js

$ stitchup -o public/bundle.js app

Compile in development (uncompressed) mode

$ stitchup -o public/bundle.js -m DEVELOPMENT app

Load modules via synchronous require()

# Stitch up modules in the ./app directory as ./public/bundle.js:          
$ stitchup -o ./public/bundle.js ./app     
      
# Load the bundle on your website:
<script src="/bundle.js"></script>
<script>
    $(function() {
        var app = require('controllers/app');
        app.init();
    })
</script>

# Use require() to reference modules from modules:
module.exports = {
    init: function() {
        var myCar = require('models/cars');
        myCar.drive();
    }
}

Run the provided example:

$ git clone git://github.com/secoif/StitchUp.git
Cloning into StitchUp...
$ cd StitchUp
$ cd example
$ stitchup -o ./public/app.js ./app
Compiled ./public/app.js.
$ cd public/
$ python -m "SimpleHTTPServer"
Serving HTTP on 0.0.0.0 port 8000 ...
Navigate to 0.0.0.0:8000 via your web browser and you should see that stitchup is working

Future

  • Ability to watch a directory and automatically recompile

stitchup's People

Contributors

timoxley avatar twe4ked avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.