• This repository has been archived on 29/Mar/2023
  • Stars
    star
    647
  • Rank 69,579 (Top 2 %)
  • Language
    JavaScript
  • License
    MIT License
  • Created over 8 years ago
  • Updated almost 2 years ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

OpenBazaar 2.0 Desktop Client (talks to openbazaar-go server daemon)

OpenBazaar Client v2

This is the reference client for the OpenBazaar network. It is an interface for your OpenBazaar node, to use it you will need to run an OpenBazaar node either locally or on a remote server.

For full installable versions of the OpenBazaar app, with the server and client bundled together, go to the OpenBazaar download page.

Build Status

Getting Started

To create a local development copy of the reference client, clone the client repository into a directory of your choice:

  • git clone https://github.com/OpenBazaar/openbazaar-desktop

Make sure you have Node.js and NPM installed. Node versions older than 8.9.2 or NPM versions older than 5.5.1 may not work.

This client uses Babel to compile ES6 JavaScript. You should be familiar with ES6 before modifying its code.

Installation

  1. Navigate to the directory you cloned the repo into.
  2. Enter npm install

Running

npm start will:

  • compile your Sass / re-compile on changes
  • run BrowserSync in watch mode so the app automatically refreshes on JS and HTML changes and dynamically injects any CSS / Sass changes**.
  • launch the Electron app

** At this time, the app will not refresh on main.js (or other root folder JS changes). This would require the entire Electron app to refresh and BrowserSync is only refreshing our browser.

Linux Troubleshooting

If you see an ENOSPC error after trying npm start and you are using Linux, you may need to do the following:

  1. Enter this on the command line: echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf && sudo sysctl -p

For Arch Linux add this line to /etc/sysctl.d/99-sysctl.conf: fs.inotify.max_user_watches=524288

  1. Execute: sysctl --system

This will prevent your system from having errors due to too many files being watched.

Linting

npm run lint will run eslint on the JS files.

npm run lint:watch will run eslint on any JS file changes.

Testing

npm run test will execute test files in the test folder.

npm run test:watch will execute the tests on any file changes.

Built With

Contributing

We welcome contributions to the reference client. The best way to get started is to look for an issue with the Help Wanted label.

You can also look for issues with the bug label. These are confirmed bugs that need to be fixed.

Contributions are expected to match the coding style already present in this repo, and must pass es-lint with no errors.

Contributions that make visual changes are also expected to match the repo's current style.

If you want to help with translations, please request to join the translation team at https://www.transifex.com/ob1/openbazaar.

You can request new languages there, and contribute to the translation of existing languages.

New languages are usually added when they reach 80% or more completion, and not removed from the client unless they fall below 60% for several releases.

License

This project is licensed under the MIT License. You can view LICENSE.MD for more details.

More Repositories

1

openbazaar-go

OpenBazaar 2.0 Server Daemon in Go
Go
994
star
2

OpenBazaar-Server

(Deprecated) OpenBazaar 1.0 Server daemon for communication with OpenBazaar-Client
Python
608
star
3

OpenBazaar-Client

(DEPRECATED) Front-end Electron application for talking with the OpenBazaar-Server daemon
JavaScript
414
star
4

OpenBazaar-Installer

Process for building the OpenBazaar 1.0 executables on OSX, Linux and Windows
Python
124
star
5

go-onion-transport

Tor onion transport for IPFS
Go
110
star
6

spvwallet

P2P SPV Wallet/Library in Go used in OpenBazaar 2.0
Go
107
star
7

multiwallet

API based multi-cryptocurrency wallet
Go
73
star
8

smart-contracts

Collection of OpenBazaar smart contracts
JavaScript
65
star
9

openbazaar3-rust

Rust implementation of OpenBazaar 3.0
Rust
61
star
10

haven

JavaScript
31
star
11

libsignal

Custom implementation of the signal messaging protocol in Go
Go
27
star
12

openbazaar-awesome

Useful resources for using OpenBazaar and building things on top of it
20
star
13

docs

OpenBazaar documentation
19
star
14

wallet-interface

Interfaces for the openbazaar-go wallet
Go
18
star
15

go-ethwallet

Ethereum wallet used in OpenBazaar
Go
18
star
16

PressKit

This repository contains information for the media about the OpenBazaar project.
PostScript
12
star
17

official_site

OpenBazaar.org official site code
HTML
12
star
18

openbazaar-web

OpenBazaar 2.0 browser-based client.
JavaScript
10
star
19

obips

OpenBazaar Improvement Proposals
9
star
20

openbazaar.com

Browse only UI
HTML
9
star
21

wns

Worldwide OpenBazaar resource finder naming service (WorfNS)
JavaScript
6
star
22

tickerproxy

Price data feed for the OpenBazaar network
Go
6
star
23

webrelay

Relay node to bridge the browser and desktop networks
Go
5
star
24

mobile-server

Repo to store iOS framework and Android libraries for development; official releases are in the openbazaar-go repo.
4
star
25

feeproxy

Serve Bitcoin fee via standardized API
Go
3
star
26

ob2-importer

CSS
3
star
27

leveldb-repair

Repairs a corrupted leveldb instance.
Go
3
star
28

bitcoind-wallet

OpenBazaar plugin for a bitcoind based wallet
Go
2
star
29

go-blockstackclient

Resolve blockchainIDs to OpenBazaar IDs
Go
2
star
30

Teflon

p2p marketplace on Optimism Layer 2 leverage stablecoin and NFTs
1
star
31

official_docs

HTML
1
star
32

downloadcounter

It counts downloads
Go
1
star
33

jsonpb

Modified Protobuf to JSON serializer in Go
Go
1
star