Giter VIP home page Giter VIP logo

openmarket's Introduction

==================

OpenMarket โ€” A free, decentralized bitcoin-based marketplace.

Currently alpha testing on the bitcoin test network

OpenMarket is an open-source, decentrally-hosted marketplace, like amazon or etsy, where you can sell anything in exchange for bitcoin.

The network and website uses the raft protocol, and is hostable by any seller running software installed from this page. Buyers do not have to install anything; they can just type a URL into their browser.

It comes with a local-only, integrated BitcoinJ-based Bitcoin wallet so you can immediately start accepting payments for items without having to go through an intermediary service like coinbase or bitpay. This is the first fully decentralized bitcoin marketplace.

To see what its all about, check out a sample testing OpenMarket website.

Suggest features or post bugs here, or on the subreddit r/openmarket_net.

Features include

  • A complete web store akin to etsy including product reviews, ratings, wishlists, shipping tracking urls, feedback, categories, etc.
  • A decentralized raft-based database, built atop rqlite.
  • A fully portable webservice and website built with java Spark. No web server required
  • An offline bitcoin wallet that uses BIP70.

Screenshots:

Installation (only necessary for sellers)

Requirements

  • Java 8
  • Go (version at least 1.4)
    • GVM is the best way to install go.
  • If behind a router, make sure ports 4566-4570 are correctly forwarded to your local ip address.

Download the jar, located here

To help test, use this command to join an existing test node that uses the bitcoin testnet:

java -jar openmarket.jar -testnet -join 104.236.98.130:4570

General usage:

java -jar openmarket.jar [parameters]
parameters:
 -deleteDB     : Delete the sqlite DB before running.(WARNING, this deletes
                 your wallet)
 -join VAL     : Startup OpenMarket joining a master nodeIE, 127.0.0.1:4001
 -loglevel VAL : Sets the log level [INFO, DEBUG, etc.]
 -port N       : Startup your webserver on a different port(default is 4567)
 -rqlport N    : Startup rql on a different port(default is 4570)
 -testnet      : Run using the Bitcoin testnet3, and a test DB
 -uninstall    : Uninstall OpenMarket.(WARNING, this deletes your wallet)


A browser window will load the page at http://localhost:4567/, and make sure you complete the signup from there.

Building from scratch

To build OpenMarket, run the following commands:

git clone https://github.com/openmarket/openmarket
cd openmarket
chmod +x deploy.sh

# This script does a git pull, maven install, and java -jar command
./deploy.sh -testnet -join 104.236.98.130:4570

and access http://localhost:4567/

Support

If you'd like to help fund me to keep developing openmarket, you can either post bounties for desired features on BountySource, or donate directly here:

bitcoin:17N2wDi8Y6Cnrnrbzq5JsRcdjnW9DVyVhL

bitcoin:17N2wDi8Y6Cnrnrbzq5JsRcdjnW9DVyVhL

Bugs and feature requests

Have a bug or a feature request? If your issue isn't already listed, then open a new issue here.

Contributing

Start with getting familiar with the schema first, then create some issues and we can start working on them.

Thanks

  • Special thanks to Mike Hearn and Andreas Schildbach for their assistance with BIP70 and refunding orders.

Feature requests / todos

openmarket's People

Contributors

dessalines 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.