Giter Site home page Giter Site logo

docs's Introduction

MARKET Protocol

Build Status Coverage Status npm version

MARKET Protocol has been created to provide a secure, flexible, open source foundation for decentralized trading on the Ethereum blockchain. We provide the pieces necessary to create a decentralized exchange, including the requisite clearing and collateral pool infrastructure, enabling third parties to build applications for trading. Take a look at our FAQ or docs for a little more explanation.

Join our Discord Community to interact with members of our dev staff and other contributors.

Dependencies

This project uses Node.js version 8.10.0 - 8.11.3.

If you are running multiple versions of Node.js, consider using Node Version Manager (nvm). nvm is an easy way to configure and manage different Node.js versions to work with your projects.

Getting Started

A Makefile is provided for easy setup of the environment.

Some pre-requisites are required in order to utilize the Makefile.

$ git clone https://github.com/MARKETProtocol/MARKETProtocol.git  # clone this repository

From here you will be able to use make commands assuming npm is already installed.

Assuming you have npm already, Install truffle

$ make install_truffle

Clone this repository and use npm to install needed dependencies

$ git clone https://github.com/MARKETProtocol/MARKETProtocol.git
$ cd MARKETProtocol
$ make install_deps

If you get an error on the node-gyp rebuild line during make install_deps, node-gyp doesn't support Python v3.x.x; v2.7 is recommended. There are several solutions based upon your platform.

The easiest solution? Use make install_deps_python2.7 to use Python 2.7, see stack overflow or the npm node-gyp project for details.

Tests

Start truffle and its development blockchain with

$ make start_console

Run the example migrations as well as the accompanying tests inside the truffle console

truffle(develop)> migrate --reset
truffle(develop)> test

Running tests with coverage enabled

The most convenient way to run tests with coverage enabled is to run them with help of Docker orchestration. This ensures, that the coverage results will match the ones on Travis CI.

Prerequisites

Docker and docker-compose

Instructions on how to install both applications are available at docker and docker-compose websites. When the applications are installed please make sure that the current user is added to 'docker' group.

Environment variables

Docker images use four environment variables that point to host and port on test and coverage Ethereum networks, please export them to your shell environment:

TRUFFLE_DEVELOP_HOST=truffle TRUFFLE_DEVELOP_PORT=9545 TRUFFLE_COVERAGE_HOST=truffle-coverage TRUFFLE_COVERAGE_PORT=8555

Running tests

Start containers

docker-compose up

The first run will take a while since images will be pulled from Docker registry. After that images are cached and the start will be much faster. Make sure that all four environment variables are available in the second shell.

TRUFFLE_DEVELOP_HOST=truffle
TRUFFLE_DEVELOP_PORT=9545
TRUFFLE_COVERAGE_HOST=truffle-coverage
TRUFFLE_COVERAGE_PORT=8555

Start tests

To run tests:

docker-compose exec truffle truffle test

If you want to run test with coverage:

docker-compose exec truffle-coverage env CONTINUOUS_INTEGRATION=true scripts/coverage_run.sh

Solium

To run solium on the solidity smart contracts

ensure you have solium installed with solium -V if not install

$ npm install -g solium

and then

$ solium --dir ./

Contributing

Want to hack on MARKET Protocol? Awesome!

MARKET Protocol is an Open Source project and we welcome contributions of all sorts. There are many ways to help, from reporting issues, contributing code, and helping us improve our community.

Ready to jump in? Check docs.marketprotocol.io/#contributing.

Questions?

Join our Discord Community to get in touch with our dev staff and other contributors.

docs's People

Contributors

42piratas avatar akilburge avatar alejandro222 avatar andrecrt avatar arku avatar benwilhelm avatar bootstraponline avatar brettporter avatar chrissrogers avatar cryptomental avatar cvkef avatar djpowers avatar dlackty avatar dmvt avatar ecaron avatar eswarasai avatar justpixel avatar kevin-buttercoin avatar lord avatar maks3w avatar marcguyer avatar mfa avatar ohheyjosh avatar realityking avatar rezanachmad avatar rojosnow avatar styloa avatar travisdmathis avatar victorquinn avatar xoredg avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

Forkers

8001800

docs's Issues

Migrate docs deployment to AWS S3

Currently, the docs is being manually deployed to gh-pages. Automate the deployment of docs as well as migrate it to AWS S3 using Travis CI

Invalidate Cloudfront distribution

Description

Currently, we don't invalidate the cache of the Cloudfront. We need to copy the script and setup from website to docs repo

Customize slate docs to match new branding guidelines

We are in the process of re-branding and would like to update our docs page to match the new site when we roll it out. Currently our docs are hosted here

The branding guidelines can be found here

We would like someone to modify the docs (fonts, colors, images) using the branding elements file provided.

This includes :

  • fonts
  • colors
  • logos

Below is a screenshot of the dApp to help with the general theme and look we are heading towards.

screen_shot_2018-04-10_at_11 08 24_pm

Please use the full MARKET Protocol (white, teal on black dual tone logo) for both the header image and create a favicon that is just the M (white, on black).

If you have any questions, feel free to join our discord

Please expect 2 revisions on general color schemes before we accept the PR and pay out the bounty.

QTY_MULTIPLIER

There needs to be much better explanation of this in the docs

FAQ / help docs typos

Describe the bug

In the introduction:

"Welcome to MARKET Protocol documentation here you will find documentation for our smart contracts and APIs." -> "Welcome to the MARKET Protocol documentation! Here you will find documentation for our smart contracts and APIs."

In the Frequently Asked Questions section: "General FAQ" and "MARKET Protocol FAQ" are duplicative and both link to the introduction.

In the MPX section: "For interacting with MPX, you will need to use a browser that supports Web3." -> "To interact with MPX, you will need to use a browser that supports Web3."

In the Contributing section:

"There are many ways to help, from reporting issues, contributing code, and helping us improve our community." -> "There are many ways to help, from reporting issues, contributing code, to helping us improve our community."

"Please, start reading about our:" -> "Please start by reading about our:"

In Gitcoin and Bounties section:

"Please only 'start work' on an issue when your actually planning on working on it. Don't call dibs before you can allocate time to the issue" -> "Please only 'start work' on an issue when you are actually planning on working on it. Don't call dibs before you can allocate time to the issue"

"Once you have create a PR, please submit work on Gitcoin so we are able to pay you out once we have accepted the work" -> "Once you have created a PR, please submit work on Gitcoin so we are able to pay you out once we have accepted the work"

In Community Improvement: "'general' channel on Discord" -> "#general channel on Discord" (to match earlier "#engineering Discord channel")

Typo in MPX section of help docs

User Story

Found typo in help docs

Why Is this Needed?

Summary: Typo is here https://docs.marketprotocol.io/#mpx

Description

Type: Bug

Current Behavior

"The MARKET Protocol decentralized exchange, MPX, provides a simulated trading environment allows user to place test trades and participate in beta releases of the protocol.

Our MPX beta is currently running"

Expected Behavior

"The MARKET Protocol decentralized exchange (MPX) provides a simulated trading environment that allows user to place test trades and participate in beta releases of the protocol.

MPX is currently running"

Solution

Summary:

  • Change 'environment allows' to 'environment that allows'
  • Change 'Our MPX beta' to just 'MPX'
  • Change ', MPX,' to '(MPX)'

Add references and usage for mpx-api-client

User Story

  • As an <audience/user>: dev
  • I want to <action/task>: know about how to use mpx-api-client
  • so that <outcome/goal/benefit>: I can leverage the open source package

Type

  • Enhancement
  • Maintenance
  • Refactor

Definition of Done

  • add docs for mpx-api-client
  • add usage informationas well

[docs] Revise documentation to reflect only public repos and information

User Story

As a public user, I should not be able to see documentation on topics that I don't have access to so that we can reduce confusion.

Summary

https://docs.marketprotocol.io has references to projects and repos that should be removed. And, much of the documentation needs to be updated.

Todos

  • Determine if the entire docs site should be removed until we have time to update the repo.
  • If we decide to keep the repo online, remove references and verbiage to private projects, review/update the remaining text, and update the docs for the current version of our smart contracts.

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.