Lighthouse: a peer to peer crowdfunding app that uses Bitcoin
Java Kotlin CSS Protocol Buffer Other
Switch branches/tags
Nothing to show
Clone or download
Mike Hearn
Mike Hearn Merge pull request #201 from jonathancross/patch-1
Noting that project is no longer maintained
Latest commit 1b2c43f Sep 26, 2016
Failed to load latest commit information.
client Kotlin 1.0 beta. Fix bug revealed by type system improvements. Oct 27, 2015
common Kotlin 1.0 beta. Fix bug revealed by type system improvements. Oct 27, 2015
docs Add chain certificate configuration and Reverse Proxy using nginx Jan 28, 2015
i18n Big refactor / rewrite / convert to Kotlin of backend code, part two:… Jul 22, 2015
server Kotlin 1.0 beta. Fix bug revealed by type system improvements. Oct 27, 2015
.gitignore Add generated ISS file to .gitignore Jun 12, 2015
LICENSE Updated license date Jan 1, 2015 Noting that project is no longer maintained Feb 10, 2016
extract-strings.js i18n: Bug fixes and a gross hack for Kotlin Apr 2, 2015 Delete locale class files (I will generate them locally), commit po f… Apr 22, 2015
pom.xml Update to Guava 18 and disable enforcer plugin temporarily, as Update… Oct 6, 2015


Please note: this project is no longer maintained.

Lighthouse is a decentralised, peer to peer crowdfunding application that uses the smart contracts features of the Bitcoin protocol. It lets you create projects and pledge to those projects.

get involved

Mailing lists:

Or sign up for occasional email newsletters on

You can chat to us in the #lighthouse chatroom on Freenode IRC.

If you're a developer, build instructions are at the end of this README.

how to tweak the user interface

You can do some work on the UI without being a Java developer. If you have web design experience modifying the Lighthouse UI will seem quite familiar. Ask for a binary build if you don't want to compile the app yourself, and then run Lighthouse with the --resdir=/path/to/ui/files flag. It should point to the client/src/main/resources/lighthouse directory from this git repository. You can use the Shortcut+S key combination to reload the UI whilst the app is running. Shortcut is the Cmd key on a Mac and Control key on Windows/Linux. The UI is defined by the CSS files and FXML files (similar to HTML but different language).


You can also use the Scene Builder tool to do visual UI design. It can't load main.fxml but everything else should open just fine.

license and legal stuff

The Lighthouse code is under the Apache license, which allows for commercial derivatives.

However the Lighthouse logo and name are not open. In future the logo images and name may be taken out of this repository and put into a proprietary branch. This would be a similar arrangement to Firefox and Chrome. The purpose of this is to ensure that if someone downloads an app called "Lighthouse" they know what they are getting and that it is not, for example, a fork or patched version of the app that may be broken in some way. If someone were to distribute a fork of the app, they would have to create a new name and logo so users can tell the fork apart from the original.

Thus to avoid confusion if you'd like to distribute a version of the project that doesn't match the upstream sources, please invent a new name and logo for it first. Thanks.

building from source

Building Lighthouse from source requires the Maven build tool and the bitcoinj library.

The latest version of bitcoinj should be installed from source:

$ git clone
$ cd bitcoinj
$ mvn clean install

Compile Lighthouse with:

$ git clone
$ cd lighthouse
$ mvn clean package

Run Lighthouse with:

$ java -jar client/target/shaded.jar