GithubHelp home page GithubHelp logo

tmorin / cryptonote-universal-pool-list Goto Github PK

View Code? Open in Web Editor NEW
14.0 6.0 33.0 1.75 MB

The most comprehensive list of cryptonote-universal-pool's instances.

Home Page: http://intensecoin-pools.morin.io

License: GNU General Public License v3.0

Shell 3.46% JavaScript 45.21% HTML 37.40% CSS 13.92%

cryptonote-universal-pool-list's Introduction

cryptonote-universal-pool-list

The most comprehensive list of cryptonote-universal-pool's instances. Highly inspired by www.sumopools.com.

Basic features

  • Customizable per currency
  • Server configuration based on file system, one file === one server
  • coinmarket.com integration
  • Exchange integrations
  • GitHub issue integration
  • Google Analytic support (optional)
  • Donation list (optional)
  • docker image

Customization

In order to run you own cryptonote-universal-pool-list, you have to fork this repository. Then from your own repository, follow the documentation below and override stuff which sould be overridden.

Main configuration

The file src/config/main.json is containing the main configuration. The configuration is split by domains.

currency

It is about the mined currency. i.e. the name, symbol etc.

{
  "currency": {
    "name": "Intense Coin",
    "short_name": "Intense",
    "tech_name": "intensecoin",
    "symbol": "ITNS",
    "difficultyTarget": 120
  }
}

tech_name is used to locate the config directory (src/config/<tech_name>) as well as the domain name (.circleci/config.yml). difficultyTarget is used to estimate the network hashrate.

links

From the front page, links can be displayed just below the site's tile. Those links are configurable under the links domain, like below:

{
  "links": {
    "intensecoin.com": {
      "icon": "fa fa-home",
      "url": "https://intensecoin.com"
    }
  }
}

The icon value is in fact the content of a class attribute related to an empty tag <i></i>. So, the content is dedicated for library like fontawesome.io.

exchanges

From the front page, there is a block dedicated to exchanges web-site. The content of this block is related to the exchanges domain. Each exchanges is be described with a logo and a URL. The key, there stocks.exchange, will be the alt attribute of the img element.

{
  "exchanges": {
    "stocks.exchange": {
      "logo": "images/logo.stocks.exchange.png",
      "url": "https://stocks.exchange/trade/ITNS/BTC"
    }
  }
}

coinmarket

From the front page, on the right of the site's title, a coinmarket widget can be displayed according to the coinmarket domain. Please refer to coinmarketcap's documentation for more information.

{
  "coinmarket": {
    "currency": "intensecoin",
    "base": "USD",
    "secondary": "BTC",
    "ticker": "true",
    "rank": "true",
    "marketcap": "true",
    "volume": "true",
    "stats": "USD",
    "statsticker": "false"
  }
}

donations

Before the footer of the front page, a donations block can be displayed according to the donations domain.

{
  "donations": {
    "ITNS": "iz4gonVSZ1AiaxqBy9FZwFLu671VhTcfAjRfWUvmNjNV2K1xSrzr6WCRJHG8ib92rKDWMYLqq8jbU7LZMqbavGir1aCRWLnw4",
    "BTC": "13jXtnauRQf4eqXUQmH2MnAHLSp5Wefmjd"
  }
}

administrator

The administrator domain is there to setup the administrator details like the email. request_user and request_repo are used to configure the form creating the GitHub issues.

{
  "administrator": {
    "email": "[email protected]",
    "request_user": "tmorin",
    "request_repo": "cryptonote-universal-pool-list"
  }
}

analytic

To activate Google Analytic, the

{
  "analytic": {
    "ga": "XX-XXXXXXXX-X"
  }
}

worker

The domain worker is dedicated to the back part. interval_ms is interval between to refresh of the stats. By default the value is 5 minutes.

{
  "worker": {
    "interval_ms": 300000
  }
}

Icons

The icons of the front page has to be customized there: src/front/images/icons.

Servers

The server definitions are located in src/config/servers. There is one file per servers. The name of the file is the key of the server from the front ent point of view. The content of a file is a JSON document describing:

  • the name of the server
  • the URL of the front
  • the URL of the back
  • the location
  • the implementation: nodejs-pool or cryptonote-universal-pool, by default it's cryptonote-universal-pool
  • the boolean disabled

For instance:

{
  "name": "intensecoin.com",
  "front": "http://intensecoin.com/pool",
  "back": "http://45.32.171.89:8111",
  "location": "US"
}

Deployment

cryptonote-universal-pool-list is ready to be deployed over docker. There is script doing the stuff: scripts/deploy.sh. The script is expecting to be run in a docker environment where nginx-proxy and docker-letsencrypt-nginx-proxy-companion are ready. To customize the domain name and SSL configuration, the following environment variables have to be customized:

  • ENV_NAME
  • VIRTUAL_HOST
  • LETSENCRYPT_HOST
  • LETSENCRYPT_EMAIL

Development tasks

Install the dependencies

npm run build

Start the back in development mode

npm run watch:back:<currency symbol lower case>

Start the front in development mode

npm run watch:front

Build the production sources

npm run build

Call the deploy script to build and start the updated container.

npm run deploy <tech_name> <GITHUB_CLIENT_ID> <GITHUB_CLIENT_SECRET>

Donations

  • BTC: 13jXtnauRQf4eqXUQmH2MnAHLSp5Wefmjd

License

Released under the GNU General Public License v3

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.