Full Public Fake/Mirror API [WIP]

in Blockchain Wizardry2 years ago (edited)

IPA rorriM\ekaF cilbuP lluF | Full Public Fake/Mirror API

Here it is again - a post that is meant to serve the purpose of on-chain coordination on the progress of testing the upcoming upgrade of our ecosystem.

Yet another Hive logo reveal, special edition for the full Fake/Mirror API

RTFM

Please refer to my previous posts if you are not familiar with what the mirror/fakenet is.
I strongly recommend you read it before doing anything that involves Hive Mirrornet.

Dealing with rough edges

Before we turn the bleeding edge into cutting edge technology, let's deal with rough edges first.
Please make sure that this environment is set up properly. There might still be some minor issues in the environment itself. If you’ve found anything, make a comment here or come to OpenHive.Chat’s #dev channel to tell about your issues.

This post will be edited as we progress (as long as there’s [WIP] in the title), so please pay attention to the changelog.

Fake API endpoint: https://api.fake.openhive.network

Fake chain-id: 42

Previously I focused on the consensus nodes and their interaction in the mirrornet, but for app developers it was not enough to perform full scale testing. For that, nodes need to support not only the ability to broadcast transactions, but more API calls, which means more plugins in hived, especially the account_history, but also market_history, and transaction_status, etc.

Plugins

My reference hived node used for API endpoint have those plugins configured:

plugin = webserver p2p json_rpc
plugin = database_api condenser_api

plugin = witness
plugin = rc

plugin = market_history
plugin = market_history_api

plugin = account_history_rocksdb
plugin = account_history_api

plugin = transaction_status
plugin = transaction_status_api

plugin = account_by_key
plugin = account_by_key_api

plugin = reputation
plugin = reputation_api

plugin = block_api network_broadcast_api rc_api

plugin = wallet_bridge_api

plugin = state_snapshot

Hivemind

Such a full blown hived node is still not enough for many applications, especially those that deal with social aspects. For that hivemind is needed. Unfortunately it takes a lot of time before it can be sync from scratch, and since it’s a mirror/fake, I couldn’t use the mainnet snapshot to speed things up.

Jussi

And of course in order to route API calls properly between the hived and the hivemind there’s a jussi, preceded of course with other mundane stuff such as SSL termination.

Broadcaster

Currently, the same node that deals with incoming API calls (such as accoun_history calls), also serves as a source for hivemind and for any broadcast transactions.

Mainnet traffic

Please be aware that some of the mainnet traffic also comes to the mirrornet through a so-called “node based converter”. That means that accounts on the mirror net live their own life.

Mainnet lookalike but fake

Again, it's extremely important to understand that everything that's happening on the Fake/Mirror net is ... fake. Even if it looks real. All that stuff is for testing purposes only. Please make sure that you know what you are doing.

Changelog

  • API endpoint is up and running

Let the testing begin

”Should anyone present know of any reason that this mirror should not be joined in holy consensus, speak now or forever hold your peace”

Sort:  

Hello @gtg can you help in building a project on hive blockchain ?

Sure. That's what we do here.

Oh great @davidmaxwell is introducing Flipstarter to hive blockchain, but he needs support to make his version comes true we are looking for dev to work with us in building that i don't know if you are willing join us in building that

I don't think hiring me for that would make sense money-wise speaking. Is there anything Hive specific that you are struggling with?

Hiring am not hiring you, we still at the starting point we need as much as more support from everyone

Can a regular user use this? I tried to set the API node on hive.blog to it, but I don't think it worked.

Regular users are very welcome to use applications that are in their testing/fake/mirror mode but it MUST be done in a way that user is aware in any given moment that what they are seeing and doing is not true.
For this very reason I wouldn't recommend using mirror api by regular Hive apps, they should have their separate instances for the mirror.
Soon (hopefully) different apps will be available within the fake/mirror net for the testing purposes.

Hi @altleft, I just wanted to touch base with you to ask for a witness vote, I am a new witness but a long time hiver and am here for the long term, I own my hardware, hosted here in Adelaide. Thanks again mate


The rewards earned on this comment will go directly to the people( @johndieo ) sharing the post on Twitter as long as they are registered with @poshtoken. Sign up at https://hiveposh.com.

awesome. I like that

Congratulations @gtg! Your post has been a top performer on the Hive blockchain and you have been rewarded with the following badge:

Post with the highest payout of the day.

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Check out the last post from @hivebuzz:

The Hive community is in mourning. Farewell @erikasue!
Level up your NFTs and continue supporting the victims of war

I'm slightly late to post this but I got asked the question so I feel like this could be useful for someone, when gtg says the chain id is 42, it means in the js libraries you should input 4200000000000000000000000000000000000000000000000000000000000000

Dear, @gtg

May we ask you to review and support our @cryptobrewmaster GameFi proposal on DHF? It can be found here

If you havent tried playing CryptoBrewMaster you can give it a shot. Our @hivefest presentation available here on the YouTube with a pitchdeck of what we building in general

Vote with Peakd.com, Ecency.com, Hivesigner

Thank you!

interesting, thanks for the info.