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

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

user1245: https://github.com/colinrgodsey/scalaminer
Written in scala, mostly just mining device control for connecting with pools

user9: Phoenix 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.

user10: 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.

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

user26: 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


user8: 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

user22: The official list is on The Wiki 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 and Phoenix 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.

12: <p>What open source miner applications are there? Especially to see how the mining process works.</p>
 54: <p>CPU miner in PHP - <a href="https://github.com/codler/Bitcoin-phpMiner" rel="nofollow">https://github.com/codler/Bitcoin-phpMiner</a></p>
 1245: <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>
 9: <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>
 10: <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>
 54: <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>
 26: <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>
 8: <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>
 22: <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>
