Zero configuration development server for *nix
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
adapters
bin
doc
ext
initscripts
libexec
src
sysconfigs
test
.envrc
.gitignore
.nvmrc
.travis.yml
Cakefile
LICENCE
MANUAL.md
README.md
build.sh
index.js
install.sh
package.json
uninstall.sh

README.md

josh - http server for developers. Build Status

josh (with lower case j) is a minimal configuration http(s) server for developers which responds to all *.dev domains and after a simple symlink it can start serving your application myapp at myapp.dev.

It,

  • automatically starts the server when you first access myapp.dev
  • works with any.depth.of.subdomains.you.want.at.myapp.dev
  • can serve multiple projects at the same time on different *.dev domains

josh is a fork of Pow rack server for Mac OS X.

How does it work?

josh takes advantage of Linux's Name Server Switch and ships with a NSS service which forwards all *.dev domains to 127.0.0.1 where it is listening on port 80.

Supported web server interfaces

Web server interfaces are supported in josh using adapters. Adapters currently included in core are:

  • ruby_rack - implements Rack interface which serves pretty much all Ruby frameworks (including Ruby on Rails).

Support for more interfaces & languages is planned.

Supported platforms

  • Upstart based operating systems (Ubuntu family).

Support for systemd is in works.

Installation

git clone https://github.com/webstream-io/josh.git
cd josh
./install.sh

Usage

To serve application myapp

cd ~/.josh
ln -s /path/to/myapp

That's it! Access myapp.dev in a browser to start the application.

TODO

About name

TODO