Skip to content
A REST-based system for building web applications.
Branch: develop
Clone or download
Pull request Compare This branch is 10 commits ahead, 18 commits behind webmachine:develop.
Latest commit 1beeeaf Dec 1, 2016
Type Name Latest commit message Commit time
Failed to load latest commit information.
demo Merge pull request webmachine#165 from voila/file-upload Nov 21, 2014
docs initial import Mar 15, 2009
ebin Replace static file with Jan 4, 2013
include Change some webmachine include_lib statements to includes Aug 16, 2013
priv Updated WebMachine Template for 20th Century Jul 11, 2014
scripts Fix webmachine#229: make sure rebar searches for templates Dec 9, 2014
src Merge pull request #2 from seanmcevoy/ee-test-modifications Oct 5, 2016
test include webmachine.hrl locally... again Feb 11, 2015
www Document append_to_resp_body Oct 30, 2013
.gitignore Enhance rebar.config.script for dev only dependencies Dec 8, 2014
.hgignore use rebar's eunit support instead of scripts/run_tests.escript [bz 365] Jul 8, 2010
.hgtags Added tag webmachine-1.7.3 for changeset a2a83469ba58 Oct 21, 2010
.thumbs.yml Add thumbs. Dec 1, 2016
.travis.yml Update .travis.yml to use the most recent releases of Erlang OTP Dec 5, 2013
Emakefile initial import Mar 15, 2009
LICENSE initial import Mar 15, 2009
Makefile Ensure that developer can clone and run make with success by creating Mar 26, 2015 Fixed broken URLs in Jun 23, 2015
THANKS Update THANKS file. Jul 5, 2011
rebar Update rebar to version 2.5.1 Nov 19, 2014
rebar.config Set the ibrowse version to v4.3 Oct 11, 2016
rebar.config.script change otp version check to accommodate patched R15B01 releases Mar 17, 2016 re-added reloaded startup option Mar 26, 2009 initial import Mar 15, 2009 Add xref target Jan 29, 2014


This project began at Basho, the creators and maintainers of Riak. Due to the importance of webmachine to the broader Erlang community, a new organization was formed. Please contact @seancribbs to get involved.


Travis-CI ::

Webmachine is an application layer that adds HTTP semantic awareness on top of the excellent bit-pushing and HTTP syntax-management provided by mochiweb, and provides a simple and clean way to connect that to your application’s behavior.

More information is available here. You can also read past blog post about Webmachine here.

Quick Start

A shell script is provided in the webmachine repository to help users quickly and easily create a new webmachine application.

git clone git://
cd webmachine
./scripts/ mydemo

A destination path can also be passed to the script.

./scripts/ mydemo ~/webmachine_applications

Once a new application has been created it can be built and started.

cd mydemo

The application will be available at http://localhost:8080.

To learn more continue reading here.


We encourage contributions to webmachine from the community.

  1. Fork the webmachine repository on Github.
  2. Clone your fork or add the remote if you already have a clone of the repository.
git clone
# or
git remote add mine
  1. Create a topic branch for your change.
git checkout -b some-topic-branch
  1. Make your change and commit. Use a clear and descriptive commit message, spanning multiple lines if detailed explanation is needed.
  2. Push to your fork of the repository and then send a pull-request through Github.
git push mine some-topic-branch
  1. A Basho engineer or community maintainer will review your patch and merge it into the main repository or send you feedback.
You can’t perform that action at this time.