Welcome to the Dash Forum!

Please sign up to discuss the most innovative cryptocurrency!

Which way to choose for 3rd party application integration (DAPI or bitcore-node-dash)?

Discussion in 'Development Tech Discussion' started by warriors, Oct 15, 2017.

  1. warriors

    warriors New Member

    Sep 29, 2017
    Likes Received:
    Trophy Points:
    I'm engaged in integration project which in technical aspect is aimed to migrate certain parts of the business logic of sports betting platform on Dash blockchain. At the feasibility study stage, where we're now, we have to explore and choose proper components to utilize.

    The most compact solution I see at the moment is to rely on bitcore-node-dash and create the add-on services upon it. Bitcore API seems enough to implement the business logic we need. (Need to say we're going to step further than just accept payments in Dash).

    But I have the following concerns I'd like to discuss here:

    1) I'm not sure this library is still maintained. The last commit in the master branch was on Feb 14, 2017.

    2) I'm not sure bitcore-node-dash will be useful after Evolution is released. Since the Evolution documentation is not yet published, I can only rely on my guesses, fueled by what is known from the white paper. That's my thoughts:

    With bitcore-node-dash, one has to run own MN which will be extended and play a role of the entry point for the 3rd party integrated application. Meanwhile, Evolution brings in DAPI which allows the 3rd party application operate with 'randomly' MN, chosen via round-robin DNS. The last seems more scalable and less expensive, but the situation raises the following questions:

    1) Will DAPI provide no less functionality than the bitcore-node-dash (I mean features listed here: https://bitcore.io/api/lib)?

    2) If no (or not in the first release), then would it be possible to use bitcore-node-dash after Evolution goes on the live net?

    I would appreciate any answers and thoughts.
  2. UdjinM6

    UdjinM6 Official Dash Dev
    Dash Core Team Moderator

    May 20, 2014
    Likes Received:
    Trophy Points:
    • Like Like x 1
  3. Obusco

    Obusco Member
    Core Developer

    Sep 23, 2016
    Likes Received:
    Trophy Points:
    Thank you Udjin for the ping !
    Hey warriors !

    1) As you can see here : https://github.com/dashevo/bitcore-node-dash last commit on master was 1months and a half ago, and we have pending P.R (on NPM, last version was 3.0.5, 2 months ago and we have 3.0.6 coming soon : https://www.npmjs.com/package/bitcore-node-dash).
    2) bitcore-node-dash, and insight-api-dash will be both useful and updated after Evolution.

    DAPI use in his transactionnal part bitcore-node-dash/insight-api-dash, so the round-robin part will be, at the end, requesting some informations using bitcore-node-dash (but not only, some other part are in DAPI itself).

    1) DAPI will provide AT LEAST, all the endpoints of insight-api-dash (see DAPI on this part as a proxy to insight-api-dash).

    Please tell me if I can help you more, some advice :

    - You might want to follow this little guide on how to install (the guide tells you how to make your first instantSend tx as an exemple) : medium.com/@Obusco/setup-instant-send-transaction-the-comprehensive-way-a80a8a0572e
    - I suggest some option in this guide, I suggest that, during your developement process, you :

    a) Use the branch "skip-dash-download" git clone https://github.com/dashevo/bitcore-node-dash -b skip-dash-download
    b) Use the branch 0.12.2.x : git clone https://github.com/dashpay/dash -b v0.12.2.x

    Soon, I will remove that download feature from bitcore-node-dash, and add documentation on how you can use bitcore-node-dash as a library of another node project.
    This "soon" should happen between 1 week and 1 months (depending on the load).
    • Like Like x 3