### πŸ‘‹ **Hey Hive Legends!** Hope you all had an *awesome* weekend! 😎 In my last post, I shared the woes of integrating aioha into our project. TL;DR: it was a bumpy ride! Soβ€”in classic developer fashionβ€”I decided to cook up my **own** package... just for fun (and the memes). Today, I’m serving you all the juicy details πŸ• plus my blunders, breakthroughs, and a sprinkle of open source goodness! --- ### πŸŽ‰ **Stage 1: Creating an Open Source Repo** ![step-01.png](https://files.peakd.com/file/peakd-hive/sagarkothari88/23swe9dSNxVvg471kWQPZ26SWrVBjZsWdu3UfzTA3DLzHmPce78h6NhGVaxVDvrsXwnaS.png) First up, big moves: public repo time! Dashed to GitHub and birthed a shiny new home for my ideas. --- ### ⚑️ **Stage 2: Project Kickoff with Vite** ![step-02.png](https://files.peakd.com/file/peakd-hive/sagarkothari88/Eo44LD9bfDZkuLGy3ryXYcSaHvBuq1bqGN5EFFga5LqFkJA8KgBmo4RsXofmMMQxdf6.png) Next stop: project scaffolding with Viteβ€”the real MVP. Seriously, Vite + ReactJS + typescript = productivity BOOST! πŸ’ͺ --- ### πŸ“¦ **Stage 3: The Essentials – Package Install Party** Packages I embraced in my project: - `"hive-auth-wrapper": "^1.0.0"`, - `"keychain-sdk": "^0.9.4"`, - `"buffer": "^6.0.3"`, - `"tailwindcss": "^4.1.12"`, - `"@tailwindcss/vite": "^4.1.12"`, **Why? Curious? Here’s the scoop:** - `hive-auth-wrapper`: 🐝 HiveAuth login power! - `keychain-sdk`: πŸšͺ Unlocks HiveKeychain in-app. - `@esbuild-plugins/node-globals-polyfill`, `@esbuild-plugins/node-modules-polyfill`, `buffer`: Make Keychain SDK play nice with React. --- ### 🎨 **Stage 4: Let's Build That Login-UI** ![step-03.png](https://files.peakd.com/file/peakd-hive/sagarkothari88/23tGVdQvjHL6KuWhs7mqYoxy8hZn7qeVqqiVXAaBcEPCQgFPiaM9F93ZayTsC5XExsCDN.png) Crafted a *fancy* modal: avatar? βœ”οΈ Username field? βœ”οΈ Plenty of buttons? βœ”οΈ Version 1 felt like assembling IKEA furniture... without instructions! πŸͺ›πŸ˜… --- ### 🎯 **Stage 5: UI Evolution – Login Options Arrive** ![step-04.png](https://files.peakd.com/file/peakd-hive/sagarkothari88/23tkfToo4nxcNf1ifhLtuUqfMR8PaiDwasvBCoZcgGD8RZsHYFVneVquGpuDBrBomzyme.png) Iteration 2: Dropped in login options galore: - Keychain - HiveAuth - Private posting key FYI: NON-functional buttons at this stage. UI firstβ€”logic after! πŸ€– --- ### πŸ“± **Stage 6: Iteration 3 – Icons & Mobile Friendliness** ![step-05.png](https://files.peakd.com/file/peakd-hive/sagarkothari88/23wq66iEgb7BfH6wkTbxEyEH5rwqFz6TGLS1CZ8NyZzQMnzXrGPazU6YaSNkwL96ZQQbC.png) Added icons before each login option, re-jigged buttons, andβ€”voilΓ β€”mobile-ready! Because, let’s be honest, we all code from our phones at some point. 🀳 --- ### πŸ” **Stage 7: Iteration 4 – Private Key UI & State Chaos** ![step-06.png](https://files.peakd.com/file/peakd-hive/sagarkothari88/23w276B6YSekJvs3BUuFDvRMH7mbhTeVHY4c5GdQweZiiMh35chwcuVH8kK7KgBTfhtL9.png) Added UI for β€œlogin with private posting key”. But here’s a meme to sum up the struggle: ![forced to use reactjs meme](https://media.tenor.com/xBN0gTnf1XMAAAAC/he-was-forced-react.gif) Managing React state? More like herding cats! 🐈 So many components: - Username field (now with *avatar action*) - Password field (plus key-image avatar) - Login options (icons + radio group) - Parent managing ALL state - Child hustling hard to update stats React newbies, I see you. Solidarity. 🀝 --- ### 🌈 **Open Source FTW!** ![Open source meme](https://media.tenor.com/smOFBj4VakkAAAAC/spongebob-rainbow-open-source-opensource-linux.gif) Everything here? 100% open source. Check it out: [https://github.com/sag333ar/hive-login-react](https://github.com/sag333ar/hive-login-react) Drop your feedback. Roast my UI. I dare you! πŸ˜‚ --- ### πŸ’ͺ **More Power to the Hive!** ![more power meme](https://media.tenor.com/-wgFdGIOcREAAAAC/vegeta-dragon-ball-z.gif) - To @keychain team: πŸš€ - To @hiveauth team: πŸ›‘οΈ - To *all* Hive community members: πŸ€— - To Hive blockchainβ€”the moon and beyond! πŸŒ• **Hive on, fam. Drop your thoughts, code critiques, memes, and suggestions below! 🐝✨** --- ### πŸ“ 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/296f3d7e-fb54-4509-af6b-d267bd649494 --- ### πŸš€ 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](https://distriator.com/) | | [CheckinWithXYZ](https://checkinwith.xyz/) | [Hive Inbox](https://hive-inbox.the-hive-mobile.app/) | [HiFind](https://hifind.the-hive-mobile.app/) | [Hive Donate App](https://donate.the-hive-mobile.app/) | | Contributed to HiveAuth Mobile App | Ecency ↔ 3Speak Integration | Ecency ↔ InLeo Integration | Ecency ↔ Actifit Integration | | [Hive Stats App](https://stats.the-hive-mobile.app/) | [Vote for Witness App](https://witness.the-hive-mobile.app/) | [HiveFlutterKit](https://hiveflutterkit.sagarkothari88.one/docs/intro) | [New 3Speak App](https://3speak.sagarkothari88.one/#/?tab=home) | --- ### πŸ™Œ Support Back ❀️ **Appreciate my work? Consider supporting @threespeak & @sagarkothari88!** ❀️ | Vote | For | Witness | |------|-----|---------| | [![](https://images.hive.blog/u/sagarkothari88/avatar)](https://witness.the-hive-mobile.app/#/witnesses/@sagarkothari88) | [sagarkothari88](https://witness.the-hive-mobile.app/#/witnesses/@sagarkothari88) | @sagarkothari88 | | [![](https://images.hive.blog/u/threespeak/avatar)](https://witness.the-hive-mobile.app/#/witnesses/@threespeak) | [threespeak](https://witness.the-hive-mobile.app/#/witnesses/@threespeak) | @threespeak | ---