๐ Upgrading Hive Onboarding: From Snail Speed ๐ to Lightning Fast โก๏ธ with API Magic
Hello Hive Community Members! ๐๐
Letโs dive into the latest happenings from the CheckinWithXyz project and how we've transformed the onboarding experience like a boss! ๐
๐ Earlier Implementation: Snail Speed Mode
Before our API glow-up:
- Onboarding approvals were comment-based ๐จ๏ธ
- Onboarders dropped comments on intro posts
- A cronjob on the server gobbled them later ๐ก
- Result? Long wait time โฑ๏ธ... like 2-3 minutes!
- Not very Hive-like when blocks are born every 3 seconds โณ
Thatโs like delivering pizza with pigeons when drones are available! ๐
๐ New Flow: API-Driven Approvals for the Win!
To fix the delays, we moved to API-based approvals ๐ก
- Whitelisted onboarders can now approve directly via the app
- It fires off approval comment ๐ฌ + instant reward ๐ฐ
- We now store approval details too (fancy, huh?) ๐ง
๐งโ๐ป Shoutout to @starkerz, @meno, @ecoinstant, @eddiespino & all the onboarders โ they loved the upgrade! ๐
๐ Onboarding Reports: Data is the New Oil!
Now that weโre storing data, reports are possible ๐
- Changes took effect from July 2025
- But wait! We did onboardings before that too ๐ฎ
- For example, at TalentLand, many Hive souls joined ๐ฑ
- Sent reports to @starkerz, but they said, โHey, some juicy details are missing!" ๐ต๏ธ
๐ค Let's Write a Script & Hunt Down That Data!
Buckle up, itโs time for detective coding with Node.js! ๐ต๏ธโโ๏ธ๐ป
โ Step 1: Get Transfers
const dhive = require("@hiveio/dhive");
async function getTransfers(client, author, limit, start) {
const op = dhive.utils.operationOrders;
const operationsBitmask = dhive.utils.makeBitMaskFilter([op.transfer]);
const records = await client.database.getAccountHistory(
author,
start,
limit,
operationsBitmask
);
return records;
}
exports.getTransfers = getTransfers;
This gets us the juicy transfer records from Hive ๐ฏ
โ Step 2: Fetch Transfers for threespeakselfie
async function updateCheckinRecords() {
let transfers = await getTransfers(
dhiveClient,
"threespeakselfie",
1000,
-1
);
Boom! ๐ฅ Pulling the latest 1000 transactions ๐ฏ
โ Step 3: Filter the Right Kind of Transfers
Look for transfers that:
- Are outgoing ๐ธ
- Have memos ๐งพ
- Contain blog links ๐
let onboardings = transfers
.filter((r) => {
return (
r.op.from === "threespeakselfie" &&
r.op.memo.length > 0 &&
r.op.memo.includes("Your blog (https://hive.blog/@")
);
})
โ Step 4: Shape the Data to Our Needs
Transform raw memos into onboarding records ๐ฆ
.map((r) => {
const memo = r.op.memo;
const regex = /Your blog $$https:\/\/hive\.blog\/@(.+)\/(.+)$$/;
const match = memo.match(regex);
return {
username: match,
memo: r.op.memo,
dateOfApproval: r.timestamp,
permlink: match,
status: "approved",
}
})
Now we have:
- โ Username
- โ Memo text
- โ Approval timestamp
- โ Permlink
Smells like reporting gold ๐ชโจ
โ Step 5: Find Out Who Did the Onboarding
Since transfer doesnโt tell us who approved, we gotta extract it from the postโs title ๐ฏ
for (const item of onboardings) {
try {
const postDetails = await dhiveClient.database.call('get_content', [item.username, item.permlink]);
const title = postDetails.title || "No Title";
const regex = "by @(.+)";
const match = title.match(regex);
const onboarder = match ? match : "unknown";
Boom! ๐งโโ๏ธ We got their names from the shadows (aka post titles).
๐ฏ Wrapping Up
Thanks to this script, we were able to recover all missing onboarding data ๐ ๏ธ
Itโs now updated in our backend database, making reporting & tracking future-proof! โ
๐
Next up: Work on the front-end! ๐จ๐ฅ๏ธ
๐ Thank You!
That's it for now, folks! Thanks for scrolling all the way down ๐
๐ More power to the Hive Blockchain ๐
๐ช More power to all our community members
๐ Until next time, Happy Coding! ๐ปโจ
๐ Final Note
- I asked Perplexity to help optimize this post to make it more readable and viewer-friendly.
- Here is the link where you can find both original content & improvements made by AI
- https://www.perplexity.ai/search/4125659a-303b-46d9-8565-9d91cb298b1a
๐ My Contributions to โฆ๏ธ Hive Ecosystem
Contribution | To | Hive | Ecosystem |
---|---|---|---|
Hive Witness Node | Hive API Node (in progress) | 3Speak Video Encoder Node Operator (highest number of nodes) | 3Speak Mobile App Developer |
3Speak Podcast App Developer | 3Speak Shorts App Developer | 3Speak Support & Maintenance Team | Distriator Developer |
CheckinWithXYZ | Hive Inbox | HiFind | Hive Donate App |
Contributed to HiveAuth Mobile App | Ecency โ 3Speak Integration | Ecency โ InLeo Integration | Ecency โ Actifit Integration |
Hive Stats App | Vote for Witness App | HiveFlutterKit | New 3Speak App |
๐ Support Back
โค๏ธ Appreciate my work? Consider supporting @threespeak & @sagarkothari88! โค๏ธ
Vote | For | Witness |
---|---|---|
sagarkothari88 | @sagarkothari88 | |
threespeak | @threespeak |
Awesome news, and you are programing on lightning speed โก
This post has been manually curated by @bhattg from Indiaunited community. Join us on our Discord Server.
Do you know that you can earn a passive income by delegating to @indiaunited. We share more than 100 % of the curation rewards with the delegators in the form of IUC tokens. HP delegators and IUC token holders also get upto 20% additional vote weight.
Here are some handy links for delegations: 100HP, 250HP, 500HP, 1000HP.
100% of the rewards from this comment goes to the curator for their manual curation efforts. Please encourage the curator @bhattg by upvoting this comment and support the community by voting the posts made by @indiaunited..
This post received an extra 7.51% vote for delegating HP / holding IUC tokens.
Please stop downvoting my original content with your alt account @letusbuyhive and you can tell your friends to fuck off as well
๐๐๐๐๐
Blocktrades can you please stop downvoting my original content with your alt accounts thanks ๐๐พ
๐๐๐๐๐๐๐๐๐๐๐๐๐
Don't be jealous So sad @themarkymark aka @theycallmemarky Aka @marky @gogreenbuddy Aka @usainvote @buildawhale Aka @punkteam Aka @ipromote
@letusbuyhive Aka @sagarkothari88
please explain why you keep downvoting my original content and comments ๐ค
Please explain to everyone why ๐ค
@meno @steevc @crimsonclad @azircon let's not forget blocktrades ๐ please tell your racist friend to stop downvoting my original content
How can we we allow a mentally ill person to have so much control on Hive ๐
It's unbelievable you downvoted this Goodbye Auntie R.I.P ๐๐พ You fucked up big time it's clear blocktrades is in control ๐
If nothing can be done about your downvote abuse then Hive is a dead project ๐๐พ
It's crazy that the person doing the downvoting is also farming the shit out of Hive ๐๐๐๐
If anyone wants to speak to me privately send me a message on Instagram @kgakakillerg
You can never stop the truth with lies ๐๐๐๐๐๐
It's crazy we have a man who pretends to be a millionaire running around Hive downvoting people for fun ๐ค and nothing has been done ๐ค
It's crazy that someone is trying to bully me on Hive ๐๐๐๐๐๐๐๐
It's unbelievable that no one has came to help as people are afraid to say anything or they get downvoted too ๐๐๐๐๐๐
There's no real freedom on Hive if one person can cause so much harm
I feel sorry for you ๐๐พ
One thing you need to remember you can't take anything with you ๐๐๐๐
Go and enjoy your life have a bit of fun let your hair down go out and meet some real people in the flesh ๐
Your actions show that you must own Hive Blockchain ๐ค why do your actions go unchallenged ๐ค
You are now stalking me ๐๐๐๐
Are you jealous about the DHF ๐๐๐๐
Aren't you farming enough rewards ๐๐๐๐
I heard you were into very young girls ๐๐๐๐๐๐
Is that why you are always online ๐ค
Stalking people
No one is scared of you ๐๐๐๐๐๐๐
You are bad for Hive
Power down and go away get a life
https://hive.blog/hive-135178/@crimsonclad/re-kgakakillerg-sxllhv
https://hive.blog/hive-148441/@hivewatchers/svftu9
https://hive.blog/hive-148441/@hivewatchers/svdjjz
https://hive.blog/hive-176853/@steevc/re-kgakakillerg-syyy4x
https://hive.blog/dev/@howo/re-kgakakillerg-szhax7
https://hive.blog/hive/@steevc/follow-friday-respect
https://hive.blog/hive-127022/@shmoogleosukami/re-kgakakillerg-t0hcxc
It's unbelievable that they downvoted this Goodbye Auntie R.I.P ๐๐พ
It's clear you need help ๐๐พ
Hive is being held down by downvoting whales
Do you get a buzz out of downvoting people ๐ค
You should really try to get outside more spend some time in the real world ๐๐
Why are you pushing people away to blurt and steemit
You are all definitely going to hell ๐๐๐๐๐๐๐๐
Why do you want to make enemies all over the world ๐ค
Blocktrades stop making a fool of yourself ๐๐๐๐๐๐
Steevc please explain to your friend they have been exposed ๐๐๐๐๐
Downvotes are weak like you ๐๐๐๐๐๐๐
Why don't you go and spend your millions of dollar's you have ๐๐๐๐๐๐๐๐๐๐๐๐
Blocktrades please explain why you keep downvoting my original content with your alt accounts ๐ค
You are so sad it's unreal ๐๐๐๐๐
You must know that you can't hide on Hive ๐๐๐๐๐๐๐
If you want everyone to leave Hive keep doing what you are doing ๐๐๐๐๐๐๐๐๐๐
Just remembered who started this
I'll be here to turn the lights off ๐๐๐๐๐๐
You are still stalking me ๐๐๐๐๐ it proves you have no life outside of Hive ๐๐๐๐๐๐๐๐๐พ๐๐พ๐๐พ๐๐พ๐๐พ๐๐พ๐๐พ๐๐๐๐๐
Blocktrades please can you stop downvoting my original content with your alt accounts ๐ค
Also is bullying people ok on Hive ๐ค
You are only making Hive look like a big scam
Why do you keep stalking me I'm not gay sorry I can't help you ๐๐พ
Just tell me what the issue is ๐ค
You are that stupid you set up an account called letusbuyhive to downvote people and support your farming Hive friend's ๐๐๐๐๐ and @buildawhale
Please get some help ๐๐พ
It's clear who has mental health issues that's why you should really stop pointing fingers at others ๐๐๐๐๐๐๐๐๐
It's clear blocktrades is behind this ๐๐๐๐๐
Can you please explain why you keep downvoting my original content I don't want to hear it's because disagreement of rewards I don't make any ๐๐๐๐๐
Please move on with your life blocktrades and leave me alone thank you ๐๐พ
Please tell everyone why you keep downvoting my original content ๐ค
Still stalking me ๐๐๐๐๐๐
The way you are stalking me it's clear you have no Life outside of Hive ๐๐๐๐๐๐๐
Keep downvoting people away ๐๐๐๐๐
Some people never learn ๐๐๐๐๐๐๐๐คฃ๐คฃ๐คฃ๐คฃ๐คฃ
Is life that bad ๐๐๐๐๐
You can't win this ๐๐๐๐๐๐๐๐๐
Congratulations @sagarkothari88! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)
Your next target is to reach 650 posts.
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 our last posts:
It may appear to be like the gif you've shared
but in reality it is as follows
ye comment ne pizza bot trigger kar diye!
and main apne aap ko hi pizza de diye
abhi comment delete kiye
One question for you, why do you get these spam comments under your post only?