node package manager

cimarron

Cimarron is a zero-configuration http server. It's ideal for development and testing.

Cimarron is a zero-configuration http server. It's ideal for development and testing.

Directly from NPM

npm install cimarron -g

You can clone it from Github too:

git clone https://github.com/fcingolani/cimarron.git
cd cimarron
npm install . -g

cd into a directory, then run cimarron; a browser window will be open pointing to your recently started Web Server.

cd DIRECTORY
cimarron

cimarron does not require any configuration to start serving your content. That doesn't mean it's not possible to configure it.

Configuration is done using a Cimarronfile, which can be one of two flavours:

  1. Static configuration. Using JSON, YAML, or XML.
  2. Dynamic configuration. Via JavaScript or CoffeeScript.

Create a Cimarronfile.json inside the directory you want to serve:

{
    "host": "0.0.0.0",
    "port": 8000,
    "enable_header": true,
    "enable_logging": true,
    "routes": {
      "/": "."
    },
    "browse": [
        "/"
    ]
}

In fact those are the default values used when you don't create a Cimarronfile!

In case you want to add more routes, just add them to the routes array:

{
    "routes": {
      "/": "./public",
      "/assets/": "./bower_components"
    }
}

Remember, it's not required to define every property, forementioned defaults will be used.

Hostname which cimarron will listen to. Default: 0.0.0.0.

Port number which cimarron will listen to. In fact, it will search for a free port incrementally until it finds one, starting in the selected port. Default: 8000.

If false, won't show the cimarron banner on start. Default: true.

If false, won't log requests to stdout. Default: true.

An object to define the mountpoints of your application.

For example:

{
    "routes": {
      "/": "./public",
      "/assets/": "./bower_components"
    }
}

An array of URLs to open automatically in your browser when cimarron starts. It will open each URL in a browser tab!

For example:

{
    "browse": [
      "/",
      "/docs/",
      "http://phaser.io/examples/"
    ]
}