Giter VIP home page Giter VIP logo

collider's Introduction

Collider

A High-Performance, Open-Source FT Mint Tool for the Atomicals Protocol

Make Atomicals Great Again

License Release GitHub tag (latest by date) GitHub code lines GitHub last commit

Telegram

Collider is a fast and efficient FT (Fungible Token) Mint tool designed for the Atomicals protocol. It harnesses the power of GPU parallel computing to significantly boost the computational performance of the FT Mint process.

In the past, we have seen many FT Mint tools being monopolized by a few individuals or organizations, which is detrimental to the healthy development of the Atomicals ecosystem. To promote the prosperity of the Atomicals community, we have created Collider as an open-source project.

By open-sourcing Collider, we aim to:

Provide a high-performance FT Mint tool that benefits all users of the Atomicals protocol.

Foster openness and inclusivity within the Atomicals community, preventing tool monopolization.

Encourage more developers to participate in building the Atomicals ecosystem, driving its growth together.

Continuously optimize and enhance Collider through the power of the community, making it the standard FT Mint tool for the Atomicals protocol.

We sincerely invite everyone interested in the Atomicals protocol to join the Collider project. Whether you are a developer, designer, or general user, your contributions will be invaluable. Let us work hand in hand to strive for a brighter future for Atomicals!

Mine Mine the Infinity (888888888.14) within 3 minutes (Lucky)

Features

  • Customizable verbosity level for detailed logging
  • Support for both mainnet and testnet environments
  • Configurable base fee for transactions
  • Primary wallet and funding wallet management
  • Ticker symbol specification
  • Choice of mining algorithm (CPU or GPU or custom by your self)

Getting Started

Prerequisites

  • Rust programming language (latest stable version)
  • Cargo package manager

Installation

Option 1: Using Pre-compiled Binaries

  1. Download the pre-compiled binary for your operating system from the releases page.

  2. Extract the downloaded archive to a directory of your choice.

  3. Open a terminal and navigate to the directory where you extracted the binary.

Option 2: Building from Source

  1. Clone the repository:

    git clone https://github.com/yourusername/collider.git
  2. Change to the project directory:

    cd collider
  3. Build the project:

    cargo build --release
  4. The compiled binary will be located at target/release/collider.

Usage

To run the Collider, use the following command:

./collider [OPTIONS]

Usage

Collider 0.2.8
A collider for atomicals.

USAGE:
    collider [FLAGS] [OPTIONS] --funding-wallet <funding-wallet> --miner <miner> --primary-wallet <primary-wallet>

FLAGS:
        --benchmark    
    -h, --help         Prints help information
    -V, --version      Prints version information
    -v, --verbose      Sets the level of verbosity

OPTIONS:
    -a, --api-url <api-url>                   [env: API_URL=]
    -b, --base-fee <base-fee>                 [env: BASE_FEE=]  [default: 50]
    -f, --funding-wallet <funding-wallet>     [env: FUNDING_WALLET=]
    -m, --miner <miner>                       [env: MINER=]  [default: cpu]  [possible values: cpu, gpu]
    -p, --primary-wallet <primary-wallet>     [env: PRIMARY_WALLET=]
        --testnet <testnet>                   [env: TESTNET=]
    -t, --ticker <ticker>                     [env: TICKER=]

Do not use any wallet containing inscriptions or other assets as a funding wallet !!!!!

You can set these environment variables in a .env file in the project root directory. The Collider will automatically load the variables from this file.

Example .env file:

API_URL=https://api.example.com
TESTNET=true
BASE_FEE=100
PRIMARY_WALLET=your_primary_wallet_address
FUNDING_WALLET=your_funding_wallet_private_key
TICKER=YOUR_TICKER
MINER=cpu

Performance

The following table shows the performance benchmarks

CPU Name: Apple M3 Max
GPU Name: Apple M3 Max (OpenCL Version: 1.2)
+--------+------------------------+------------------------+
| Device | Commit Hash Rate (M/s) | Reveal Hash Rate (M/s) |
+--------+------------------------+------------------------+
| CPU    | 91.41M/s               | 150.45M/s              |
+--------+------------------------+------------------------+
| GPU    | 462.07M/s              | 604.54M/s              |
+--------+------------------------+------------------------+
CPU Name: AMD Ryzen 7 7800X3D 8-Core Processor
GPU Name: NVIDIA GeForce RTX 4090 (OpenCL Version: 3.0)
+--------+------------------------+------------------------+
| Device | Commit Hash Rate (M/s) | Reveal Hash Rate (M/s) |
+--------+------------------------+------------------------+
| CPU    | 69.96M/s               | 97.92M/s               |
+--------+------------------------+------------------------+
| GPU    | 1.16B/s                | 1.49B/s                |
+--------+------------------------+------------------------+

You can test your device by running the following command:

./collider --benchmark

Contributing

Contributions are welcome! If you find any issues or have suggestions for improvements, please open an issue or submit a pull request.

Roadmap

[] Add multi mint feature - it will allow user use one utxo to mint 100 times in less gas and time.

[] Improve the performance - The high performance version is currently closed source, if you are interested you can contact me.

[] Add pure mode - By using public rpc for higher speed calculations, pure mode will not recognize any assets of the funding wallet.

License

This project is licensed under the GNU AFFERO GENERAL PUBLIC LICENSE.

Acknowledgements

Atomicals - The Atomicals protocol

Atomicalsir - For providing the foundation and inspiration for this project

Contact

For any inquiries or questions, please contact [email protected].

collider's People

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

collider's Issues

apple m1 不知道是什么问题求解答谢谢🙏

./collider --base-fee 11 --funding-wallet xxx --miner cpu --primary-wallet xxx --ticker infinity

INFO Starting collider...
INFO Using mainnet
INFO Primary wallet address: xxx
INFO Funding wallet address: xxx
INFO Bitwork info:
Ft Into
Ticker: infinity
Max mints: 3333
Max supply: -1
Mint amount: 9999
Mint bitworkC current: 888888888.14
ERROR failed to parse response into JSON due to error decoding response body: invalid type: string "0d5exxxxxxxxxxxxxxxxxxbi0", expected unit at line 1 column 14680
ERROR failed to parse response into JSON due to error decoding response body: invalid type: string "0d5exxxxxxxxxxxxxxxxxxbi0", expected unit at line 1 column 14680
ERROR failed to parse response into JSON due to error decoding response body: invalid type: string "0d5exxxxxxxxxxxxxxxxxxbi0", expected unit at line 1 column 14680
ERROR failed to parse response into JSON due to error decoding response body: invalid type: string "0d5exxxxxxxxxxxxxxxxxxbi0", expected unit at line 1 column 14680
ERROR failed to parse response into JSON due to error decoding response body: invalid type: string "0d5exxxxxxxxxxxxxxxxxxbi0", expected unit at line 1 column 14680
thread 'main' panicked at src/main.rs:205:10:
wait until utxo error: ExceededMaximumRetries
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

commit hex的前缀不对导致打废

日志如下:
Commit mining: [00:10:45] Hash rate: 363.66M/s
INFO 🔍 Commit hex: 010000000001010b1820e8547b1a32010f069bbca9088207b621f86fc3b18edd2fa530864d24e100000000000000000002442c000000000000225120ec15264aab628b110ce0b93950b0842d298e27c702f49089e121ff8601aa0fb28a9100000000000022512031eb12727fd16b9c41d40270999ee74b12fdf7918052ec12865771d5af37cb090140582dfdf0bf66f95934f510e54d227dac3c85c7b81eb777048e67040772e5ffa1e29743938b3718648d777c013593ee4f11fede58edf547f12eaacf4dbac4223f00000000
ERROR the request to https://ep.nextdao.xyz/proxy/blockchain.transaction.broadcast failed due to error sending request for url (https://ep.nextdao.xyz/proxy/blockchain.transaction.broadcast?params=%5B%22010000000001010b1820e8547b1a32010f069bbca9088207b621f86fc3b18edd2fa530864d24e100000000000000000002442c000000000000225120ec15264aab628b110ce0b93950b0842d298e27c702f49089e121ff8601aa0fb28a9100000000000022512031eb12727fd16b9c41d40270999ee74b12fdf7918052ec12865771d5af37cb090140582dfdf0bf66f95934f510e54d227dac3c85c7b81eb777048e67040772e5ffa1e29743938b3718648d777c013593ee4f11fede58edf547f12eaacf4dbac4223f00000000%22%5D): error trying to connect: unexpected EOF
INFO 🔍🎺 Commit tx broadcasted successfully! 🚀 https://mempool.space/tx/a5bc74f171e737a1a211b81e27e930e04128219e55dc3cf3b67aa68ad34158cc
INFO 🔓 Reveal hex: 01000000000101cc5841d38aa67ab6f33cdc559e212841e030e9271eb811a2a137e771f174bca50000000000fdffffff010f27000000000000225120dc2f46c62768c6977b586825af2906ce8bf8c37f1312b54874330b2baad668660341c440dfcaac60c51d4e45ac339c44921bd4bbec88d02f5ecd25b61e3457e1b1473fcac18adabf7131aa408e4bcaa557ec9a554af411f98b38f4f28ebcff9bfa41834b20029179c6d6bc7a6bb362f050a26eec52a49924151e3fd784a43f406d6e32d23aac00630461746f6d03646d741ca16461726773a16b6d696e745f7469636b657268696e66696e6974796821c0029179c6d6bc7a6bb362f050a26eec52a49924151e3fd784a43f406d6e32d23a00000000
INFO 🔓🎺 Reveal tx broadcasted successfully! 🚀 https://mempool.space/tx/4c9a899d7b8fd5614eae3c994840ed8309b2a70796368d9dca20eeace368d370
INFO 🎉 Eureka! 💥 The Collider has successfully smashed the problem and computed the result! 🧪✨

只有commit tex没有reveal tex

Commit hex: 0100000000010163343fba9f5865b5962d9bdf41804c55ad6b474b30b39fc3d5943d665777017601000000008513a2bd02102e0000000000002251209b3f4ab0e4902bb5b9156f00f346a68688a5f8d7897c8f31d944d40cbf20707d1a05000000000000225120c8d05f4129b6ece5a23cf7817e26913398b9ae24eb3d081ca0b28436763b41970140a6090f17d8af6ad64be1c47418cf0ec7d6e672511140f6f5497fbd8fa2c8b4a0118f41144ae8b525a01009720461537cc1c5f46cc0f2f675cf829f858967fb1d00000000

ERROR the request to https://ep.atomicalmarket.com/proxy/blockchain.transaction.broadcast failed due to error sending request for url (https://ep.atomicalmarket.com/proxy/blockchain.transaction.broadcast?params=%5B%220100000000010163343fba9f5865b5962d9bdf41804c55ad6b474b30b39fc3d5943d665777017601000000008513a2bd02102e0000000000002251209b3f4ab0e4902bb5b9156f00f346a68688a5f8d7897c8f31d944d40cbf20707d1a05000000000000225120c8d05f4129b6ece5a23cf7817e26913398b9ae24eb3d081ca0b28436763b41970140a6090f17d8af6ad64be1c47418cf0ec7d6e672511140f6f5497fbd8fa2c8b4a0118f41144ae8b525a01009720461537cc1c5f46cc0f2f675cf829f858967fb1d00000000%22%5D): error trying to connect: tcp connect error: 由于目标计算机积极拒绝,无法连接。 (os error 10061)

error: 由于目标计算机积极拒绝,无法连接。 (os error 10061)
thread 'main' panicked at src\main.rs:266:10:
broadcast commit tx error: ExceededMaximumRetries
note: run with RUST_BACKTRACE=1 environment variable to display a backtrace

之前好的可以打,但突然报错了

ERROR failed to parse response into JSON due to error decoding response body: invalid type: string "aabbcc7c57b8fdf3bcb9a876a56a9fd9d3a318ccfec6e3b98435c187e53f46adi0", expected unit at line 1 column 581

只要一运行,就报这个错误

Transaction Not Sending to Mempool

I'm encountering an issue where everything seems to function correctly with the GPU miner executing the bitwork, but when it comes to sending the transaction to the mempool, it fails to send. The transaction does not appear in the mempool as expected. I've attempted several troubleshooting steps without success, and I'm seeking assistance to resolve this issue.

Steps to Reproduce:

Start the GPU miner.
Execute bitwork to process transactions.
Attempt to send the transaction to the mempool.
Expected Result:
The transaction should be sent to and appear in the mempool without issues.

Actual Result:
The transaction does not send to the mempool, nor does it appear within it.

Changed the RPC link to see if it would resolve the issue, but there was no change.
Tried introducing the API key of the funding wallet in both WIF and HEX formats, neither of which resolved the issue.

Captura
Captura2

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.