GithubHelp home page GithubHelp logo

j4ym0 / burstcoin Goto Github PK

View Code? Open in Web Editor NEW

This project forked from signum-network/signum-node

0.0 0.0 0.0 69.9 MB

BRS - Burst Reference Software written in Java

License: GNU General Public License v3.0

Batchfile 0.01% Shell 0.54% C 0.76% CSS 3.35% HTML 9.19% JavaScript 20.25% Java 65.38% Perl 0.52%

burstcoin's Introduction

Burstcoin Reference Software (Burstcoin Wallet)

Build Status GPLv3 Get Support at https://discord.gg/ms6eagX

The world's first HDD-mined cryptocurrency using an energy efficient and fair Proof-of-Capacity (PoC) consensus algorithm.

This wallet version is developed and maintained by the Burst Apps Team (BAT). The two supported database servers are:

  • MariaDB (recommended)
  • H2 (embedded, easier install)

Network Features

  • Proof of Capacity - ASIC proof / Energy efficient mining
  • No ICO/Airdrops/Premine
  • Turing-complete smart contracts, via Automated Transactions (ATs)
  • Asset Exchange, Digital Goods Store, Crowdfunds (via ATs), and Alias system

Network Specification

  • 4 minute block time
  • Total Supply: 2,158,812,800 BURST
  • Block reward starts at 10,000/block
  • Block Reward Decreases at 5% each month

BRS Features

  • Decentralized Peer-to-Peer network with spam protection
  • Built in Java - runs anywhere, from a Raspberry Pi to a Phone
  • Fast sync with multithreaded CPU or, optionally, an OpenCL GPU
  • HTTP and gRPC API for clients to interact with network

Installation

Prerequisites (All Platforms)

NOTE: burst.sh is now deprecated and will not be included with the next release.

Java 8 (Required)

You need Java 8 installed. To check if it is, run java -version. You should get an output similar to the following:

java version "1.8.0_181"
Java(TM) SE Runtime Environment (build 1.8.0_181-b13)
Java HotSpot(TM) 64-Bit Server VM (build 25.181-b13, mixed mode)

The important part is that the Java version starts with 1.8 (Java 8)

If you do not have Java 8 installed, download it from Oracle's Website

MariaDB (Optional)

Download and install MariaDB

The MariaDb installation will ask to setup a password for the root user. Add this password to the brs.properties file you will create when installing BRS:

DB.Url=jdbc:mariadb://localhost:3306/brs_master
DB.Username=root
DB.Password=YOUR_PASSWORD

Installation

You can manually install using the following steps, or by using the pre-packaged options below.

Manually installing - All Platforms

Grab the latest release (Or, if you prefer, compile yourself using the instructions below)

In the conf directory, copy brs-default.properties into a new file named brs.properties and modify this file to suit your needs (See "Configuration" section below)

To run BRS, run java -jar burst.jar. On MacOS and Windows this will create a tray icon to show that BRS is running. To disable this, instead run java -jar burst.jar --headless.

Installation Packages

Windows

QBundle is a tool which will automatically download any required files and tools and manage BRS for you. This is recommended for users who do not want to learn how to setup BRS.

MacOS

BRS can be installed using a Homebrew formula.

A number of other Homebrew formulas written by Nixops are also available for plotters and miners.

Linux

Debian

A .deb package is available here.

Docker

Docker repository

latest : Latest tag of the BRS with H2 database
mariadb : Latest tag of the BRS with MariaDB database 2-h2 / 2-mariadb - Version 2.X.X (latest) with corresponding database 2.3-h2 / 2.3-mariadb - Version 2.3.X (latest) with corresponding database 2.3.0-h2 / 2.3.0-mariadb - Version 2.3.0 with corresponding database

Docker Compose for use with MariaDB database

version: '3'

services:
  burstcoin:
    image: burstappsteam/burstcoin:2-mariadb
    restart: always
    depends_on:
     - mariadb
    ports:
     - 8123:8123
     - 8125:8125
     - 8121:8121
  mariadb:
    image: mariadb:10
    environment:
     - MYSQL_ROOT_PASSWORD=burst
     - MYSQL_DATABASE=burst
    command: mysqld --character_set_server=utf8mb4
    volumes:
     - ./burst_db:/var/lib/mysql

Docker command for use with H2 database

docker run -p 8123:8123 -p 8125:8125 -p 8121:8121 -v "$(pwd)"/burst_db:/db -d burstappsteam/burstcoin:2-h2

Configuration

Running on mainnet (unless you are developing or running on testnet, you will probably want this)

Now you need to add the following to your conf/brs.properties (as a minimum):

DB.Url=jdbc:mariadb://localhost:3306/brs_master
DB.Username=brs_user
DB.Password=yourpassword

Once you have done this, look through the existing properties if there is anything you want to change.

Testnet

Please see the Wiki article for details on how to setup a testnet node.

Private Chains

In order to run a private chain, you need the following properties:

DEV.DB.Url=(Your Database URL)
DEV.DB.Username=(Your Database Username)
DEV.DB.Password=(Your Database Password2)
API.Listen = 0.0.0.0
API.allowed = *
DEV.TestNet = yes
DEV.Offline = yes
DEV.digitalGoodsStore.startBlock = 0
DEV.automatedTransactions.startBlock = 0
DEV.atFixBlock2.startBlock = 0
DEV.atFixBlock3.startBlock = 0
DEV.atFixBlock4.startBlock = 0
DEV.preDymaxion.startBlock = 0
DEV.poc2.startBlock = 0
DEV.rewardRecipient.startBlock = 0

Optionally, if you want to be able to forge blocks faster, you can add the following properties:

DEV.mockMining = true
DEV.mockMining.deadline = 10

This will cause a block to be forged every 10 seconds. Note that P2P is disabled when running a private chain and is incompatible with mock mining.

Building

Building the latest stable release

Run these commands (master is always the latest stable release):

git fetch --all --tags --prune
git checkout origin/master
mvn package

Your packaged release will now be available in dist/burstcoin-2.4.0.zip

Building the latest development version

Run these commands (develop is always the latest stable release):

git fetch --all --tags --prune
git checkout origin/develop
mvn package

Your packaged release will now be available in dist/burstcoin-2.4.0.zip.

Please note that development builds will refuse to run outside of testnet or a private chain

Developers

Main Developer: Harry1453. Donation address: BURST-W5YR-ZZQC-KUBJ-G78KB

For more information, see Credits

Further Documentation

burstcoin's People

Contributors

4nt1g0 avatar 6w3 avatar ac0v avatar almurik avatar beatsbears avatar billvp avatar blankey1337 avatar brabantian avatar braindeadone avatar burstproject avatar cgebe avatar chrulri avatar dannygreen avatar dcct avatar de-luxe avatar dependabot[bot] avatar felixbrucker avatar harryjph avatar heossacer avatar injectedpie avatar jake-b avatar lithmage avatar llybin avatar michaelmattig avatar naiduv avatar nixops avatar ohager avatar quibus-burst avatar rico666 avatar umbrellacorp03 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.