<p>The official list is on <a href="https://en.bitcoin.it/wiki/Software#Mining_apps" rel="noreferrer">The Wiki</a> and is constantly being modified since new software shows up fairly often, but here's the quick breakdown:</p>

<ul>
<li>Poclbm - Python/OpenCL GPU miner (GUI)</li>
<li>DiabloMiner - Java/OpenCL GPU miner (MAC OS X GUI)</li>
<li>RPC Miner - remote RPC miner (MAC OS X GUI)</li>
<li>Phoenix miner - miner</li>
<li>Cpu Miner - miner</li>
<li>Ufasoft miner - miner</li>
<li>Pyminer - Python miner, reference implementation</li>
<li>Remote miner - mining pool software</li>
<li>Open Source FGPA Bitcoin Miner - a miner that makes use of an FPGA Board</li>
</ul>

<p><a href="https://github.com/m0mchil/poclbm/archives/master" rel="noreferrer">Poclbm</a> and <a href="https://xp-dev.com/svn/phoenix-miner/files/" rel="noreferrer">Phoenix</a> are probably the most popular (links go to the sources) though that's based more on my opinion than any facts or studies. In either case, both should shed some light on the mining process.</p>

CC BY-SA 3.0
2011-08-30T21:48:32.413Z
Thanks for the edit, Codler. I copied and pasted way too quickly and didn't check my output carefully enough :)
David Perry
CC BY-SA 3.0
2011-08-31T12:10:32.827Z
You shouldn't mention poclbm-mod. It's long outdated and is no longer maintained.
Artefact2
CC BY-SA 3.0
2011-09-01T21:19:25.190Z
poclbm-mod has been removed, thanks.
David Perry
CC BY-SA 3.0
2011-08-30T21:17:45.367Z
2015-07-28T08:25:34.603Z
2015-07-28T08:25:34.603Z
David Perry
<p>jzgarzik wrote a very basic miner in Python. It is slow on purpose, because it shows how a simple miner works (and the mining process). It can also be reused as boilerplate code (the getwork JSON-RPC command).</p>

<p><a href="https://github.com/jgarzik/pyminer/blob/master/pyminer.py">https://github.com/jgarzik/pyminer/blob/master/pyminer.py</a></p>

CC BY-SA 3.0
2011-08-30T21:46:57.497Z
Why the downvote? This tutorial miner was *especially* done to show how the mining process works. That answers the question perfectly.
Artefact2
CC BY-SA 3.0
2011-08-30T21:18:15.337Z
2011-08-30T21:18:15.337Z
Artefact2
<p>GPU Miners</p>

<pre><code>DiabloMiner - https://github.com/Diablo-D3/DiabloMiner

poclbm      - https://github.com/m0mchil/poclbm

hashkill    - 64-bit http://www.gat3way.eu/poc/hashkill-0.2.4-x86_64.tgz 

              32-bit http://www.gat3way.eu/poc/hashkill-0.2.4-x86.tgz   

Phoenix     - https://github.com/jedi95/Phoenix-Miner
</code></pre>

<p>CPU Miners</p>

<pre><code>Jgarzik     - https://github.com/jgarzik/cpuminer.git

Ufasoft     - http://ufasoft.com/open/bitcoin/

FPGAminer   - https://github.com/progranism/Open-Source-FPGA-Bitcoin-Miner
</code></pre>

CC BY-SA 3.0
2011-08-30T21:45:21.437Z
2011-08-30T21:45:21.437Z
Buckhead_Comp_Ser_Co
<p>The most obvious open-source mining application is the official Bitcoin client itself, available at: <a href="https://github.com/bitcoin/bitcoin" rel="nofollow">https://github.com/bitcoin/bitcoin</a></p>

<p>The source code is well written and shows quite clearly the way that hashing is performed in order to mine new blocks. It is however a CPU-only algorithm, and doesn't use some of the more advanced mechanisms for accelerating the hashing process.</p>

<p>Despite this, it definitely offers a good introduction into how the generation of blocks, hashing etc. works, without the added overhead of having to deal with potentially unfamiliar GPU-based mining code, which is intentially highly optimised and as a result will likely to be more difficult to understand, and make the basic concepts more difficult to follow.</p>

CC BY-SA 3.0
2011-08-30T21:20:27.893Z
2011-08-30T21:20:27.893Z
Iridium
<p><a href="https://bitcointalk.org/index.php?topic=6458.0" rel="nofollow">Phoenix</a> is a very good GPU miner. While I couldn't find the exact license, it's source is available on GitHub: <a href="https://bitcointalk.org/index.php?topic=6458.0" rel="nofollow">https://bitcointalk.org/index.php?topic=6458.0</a></p>

<p>Well, it's written in python, so you could see the source anyways. However, it's actually quite easy to understand and modify, e.g. to create your own logging interface.</p>

CC BY-SA 3.0
2011-08-30T21:18:00.607Z
2011-08-30T21:18:00.607Z
Mononofu
<p>You can see how mining process works here
<a href="https://github.com/bitcoin/bitcoin/tree/master/contrib/pyminer" rel="nofollow">https://github.com/bitcoin/bitcoin/tree/master/contrib/pyminer</a></p>

CC BY-SA 3.0
2011-09-01T21:10:51.723Z
2011-09-01T21:10:51.723Z
Codler
<p>CPU miner in PHP - <a href="https://github.com/codler/Bitcoin-phpMiner" rel="nofollow">https://github.com/codler/Bitcoin-phpMiner</a></p>

CC BY-SA 3.0
2013-05-23T08:13:12.010Z
Beware this is not a true "miner" it just use a curl call to the following server  http://api.bitp.it/work?
Sydwell
CC BY-SA 3.0
2013-05-23T10:53:02.843Z
@Sydwell, it is a true miner, it is connecting to a pool mining of your choice.
Codler
CC BY-SA 3.0
2011-08-30T22:10:28.057Z
2011-08-30T22:10:28.057Z
Codler
<p><a href="https://github.com/colinrgodsey/scalaminer" rel="nofollow">https://github.com/colinrgodsey/scalaminer</a></p>

<p>Written in scala, mostly just mining device control for connecting with pools</p>

CC BY-SA 3.0
2014-05-03T19:52:34.263Z
2014-05-03T19:52:34.263Z
Colin Godsey
<p><a href="https://github.com/m0mchil/poclbm" rel="nofollow">M0mchil's poclbm</a>, written in python, hosted on github.</p>

CC BY-SA 3.0
2011-08-30T21:18:17.153Z
2013-01-28T18:02:35.893Z
2013-01-28T18:02:35.893Z
Alex Waters
<p><a href="https://en.bitcoin.it/wiki/Poclbm" rel="nofollow">Poclbm</a>: An open source, python based GPU miner.</p>

<p><a href="https://bitcointalk.org/index.php?topic=9047.0" rel="nofollow">Open Source FPGA Miner</a>: The name says it all.  Hit the source for the project.</p>

CC BY-SA 3.0
2011-08-30T21:19:09.740Z
2011-08-30T21:19:09.740Z
RLH
<p>What open source miner applications are there? Especially to see how the mining process works.</p>

CC BY-SA 3.0
2013-09-14T19:02:21.243Z
This question appears to be off-topic because it is about the user is asking for a list that may not be complete, hence it is unlikely that an answer is found that is satisfying.
cdecker
<mining-setup><miner-configuration><mining-software>
What open source miner applications are there?
ilhan
# What open source miner applications are there?

(Asked by: username_0 on 2011-08-30)

What open source miner applications are there? Especially to see how the mining process works.

**Tags:** mining-setup, miner-configuration, mining-software

> **Comments:**
> **username_1**: This question appears to be off-topic because it is about the user is asking for a list that may not be complete, hence it is unlikely that an answer is found that is satisfying.  

---

## 10 answers

### Answer by username_2 on 2011-08-30. Score: 20

The official list is on [The Wiki](https://en.bitcoin.it/wiki/Software#Mining_apps) and is constantly being modified since new software shows up fairly often, but here's the quick breakdown:

* Poclbm - Python/OpenCL GPU miner (GUI)
* DiabloMiner - Java/OpenCL GPU miner (MAC OS X GUI)
* RPC Miner - remote RPC miner (MAC OS X GUI)
* Phoenix miner - miner
* Cpu Miner - miner
* Ufasoft miner - miner
* Pyminer - Python miner, reference implementation
* Remote miner - mining pool software
* Open Source FGPA Bitcoin Miner - a miner that makes use of an FPGA Board

[Poclbm](https://github.com/m0mchil/poclbm/archives/master) and [Phoenix](https://xp-dev.com/svn/phoenix-miner/files/) are probably the most popular (links go to the sources) though that's based more on my opinion than any facts or studies. In either case, both should shed some light on the mining process.

> **Comments:**
> **username_2**: Thanks for the edit, username_7. I copied and pasted way too quickly and didn't check my output carefully enough :)  
> **username_3**: You shouldn't mention poclbm-mod. It's long outdated and is no longer maintained.  
> **username_2**: poclbm-mod has been removed, thanks.  

---

### Answer by username_3 on 2011-08-30. Score: 19

jzgarzik wrote a very basic miner in Python. It is slow on purpose, because it shows how a simple miner works (and the mining process). It can also be reused as boilerplate code (the getwork JSON-RPC command).

<https://github.com/jgarzik/pyminer/blob/master/pyminer.py>

> **Comments:**
> **username_3**: Why the downvote? This tutorial miner was *especially* done to show how the mining process works. That answers the question perfectly.  

---

### Answer by username_4 on 2011-08-30. Score: 9

GPU Miners
DiabloMiner - https://github.com/Diablo-D3/DiabloMiner

poclbm      - https://github.com/m0mchil/poclbm

hashkill    - 64-bit http://www.gat3way.eu/poc/hashkill-0.2.4-x86_64.tgz 

              32-bit http://www.gat3way.eu/poc/hashkill-0.2.4-x86.tgz   

Phoenix     - https://github.com/jedi95/Phoenix-Miner

CPU Miners
Jgarzik     - https://github.com/jgarzik/cpuminer.git

Ufasoft     - http://ufasoft.com/open/bitcoin/

FPGAminer   - https://github.com/progranism/Open-Source-FPGA-Bitcoin-Miner


---

### Answer by username_5 on 2011-08-30. Score: 2

The most obvious open-source mining application is the official Bitcoin client itself, available at: <https://github.com/bitcoin/bitcoin>

The source code is well written and shows quite clearly the way that hashing is performed in order to mine new blocks. It is however a CPU-only algorithm, and doesn't use some of the more advanced mechanisms for accelerating the hashing process.

Despite this, it definitely offers a good introduction into how the generation of blocks, hashing etc. works, without the added overhead of having to deal with potentially unfamiliar GPU-based mining code, which is intentially highly optimised and as a result will likely to be more difficult to understand, and make the basic concepts more difficult to follow.


---

### Answer by username_6 on 2011-08-30. Score: 2

[Phoenix](https://bitcointalk.org/index.php?topic=6458.0) is a very good GPU miner. While I couldn't find the exact license, it's source is available on GitHub: <https://bitcointalk.org/index.php?topic=6458.0>

Well, it's written in python, so you could see the source anyways. However, it's actually quite easy to understand and modify, e.g. to create your own logging interface.


---

### Answer by username_7 on 2011-09-01. Score: 2

You can see how mining process works here
<https://github.com/bitcoin/bitcoin/tree/master/contrib/pyminer>


---

### Answer by username_7 on 2011-08-30. Score: 1

CPU miner in PHP - <https://github.com/codler/Bitcoin-phpMiner>

> **Comments:**
> **username_8**: Beware this is not a true "miner" it just use a curl call to the following server  http://api.bitp.it/work?  
> **username_7**: @username_8, it is a true miner, it is connecting to a pool mining of your choice.  

---

### Answer by username_9 on 2014-05-03. Score: 1

<https://github.com/colinrgodsey/scalaminer>

Written in scala, mostly just mining device control for connecting with pools


---

### Answer by username_10 on 2011-08-30. Score: 0

[M0mchil's poclbm](https://github.com/m0mchil/poclbm), written in python, hosted on github.


---

### Answer by username_11 on 2011-08-30. Score: 0

[Poclbm](https://en.bitcoin.it/wiki/Poclbm): An open source, python based GPU miner.

[Open Source FPGA Miner](https://bitcointalk.org/index.php?topic=9047.0): The name says it all. Hit the source for the project.


---

