ausbitbank cross-posted this post in hive.ausbit.dev news 3 years ago


hive.ausbit.dev - An open source hive block explorer, post viewer and more

in #dev3 years ago (edited)

I'm terrible at promoting my projects, and this has been live and usable for months without getting an actual announcement post.. So ..

Announcing

An open source hive block explorer, post viewer, and more.

It's not polished, I'm still not completely happy with it but it's functional enough to be useful in a few ways. Lets take a tour:

Here's the home page (for now) , displaying modules for:

  • Recent posts shared by me, trending and "hot" posts
  • A listing of all current working public API nodes for hive, sorted by performance with test results provided by @fullnodeupdate
  • The minimalist witness list, with all info available by hovering
  • A market view of Hive, Hive Dollars and Bitcoin with data provided by @coingecko
  • An expandable/browsable view of the most recent irreversable block

Account View /@username :

  • Has all the usual account meta information expected from a block explorer
  • Shows raw view of all transactions on your account since creation
  • Shows recent posts shared by a user
  • Attempts to use all available metadata to customize users header

  • Contains a simple posting_json_metadata editor, so users can point to whatever outside services or coin donation addresses they want saved on a public immutable censorship resistant blockchain.


Pro Tip - don't make your home address public if you don't like visitors.
Play Smart Kids ;)

If there's interest from other UI developers in adding a similar feature please see this code, and this folder of svg logos to save yourself a bunch of time.

I plan to keep expanding to support new services/coins/things , feel free to suggest more in the comments or dm me on discord.

Wallet View @username/wallet

A basic wallet for transferring, viewing balances and account history for both Hive and Hive-Engine tokens.


Uses market rates to also show prices in USD for transfers.



All hive-engine tokens can be expanded to show descriptions and supply stats with a link to their market


Transfer all the tokens!

Hive Dollar Monitor /hbd

A basic tool to monitor Hive Dollar market and haircut conditions.


Post Viewer @username/permlink

Basic post and comments viewer, also shows other recent posts from that user. Read only (for now)


Block Viewer /b/blocknumber

View a specific block, can be viewed in a minimal version as used on the homepage

Or at the bottom you can click "Show Raw Block Data" to access the raw json of the whole block

Transaction View /tx/TransactionId

View a raw transaction, like this little bit of history above.

Nodes /nodes

Direct access to the API nodes viewer widget ( I just wanted to show off my node in the fastest spot again :P)

If you hover your mouse over a node, it shows the full report from the account metadata of @fullnodeupdate . Each dot from left to right represents an overall ranking of this node for different areas, that are explained in more detail in posts by @fullnodeupdate .

I sort servers using a score created by just adding up all their ranks. A rank of -1 signifies an error (and the overall sorting score for that server is heavily penalised for errors).

The colours are a just a gradient representing scores/ranks from light green (best) to dark orange (worst) with red for errors.

Witnesses /witnesses

Direct access to the witnesses widget, which can be expanded to show 200 witnesses and alert about issues with pricefeed age, abnormal witness parameters, highlight new witnesses etc .

Health /health

A dashboard view that's more suitable for witnesses and node operators during times like network hardforks.

IPFS

I regularly build a slightly modified version of the site (using hash routing) and host it on the Inter Planetary File System so it's accessible even if dns requests for ipfs.ausbit.dev are blocked.

You can find it by clicking this icon in my account header , or looking at the ipfs tag in my account metadata. This way once you've loaded any version of the site, you can use it to find and load the most recent version :) Simple, but powerful.

Anyone can link any hash from their account in the same way.

The current hash at time of writing is QmZC6k4F4zuUByhyfP3yfKyNST4YGzEd3n2pKtVMuZNLkK

It's also seeded with IPNS & dnslink at https://cloudflare-ipfs.com/ipns/ipfs.ausbit.dev/

Tech Stack / Notes


It's completely written in client-side JS using quasar framework (vue), hosted on netlify, with ipfs hosting provided by fleek + cloudflare.

As it's technically a Single Page Application , link previews sucked at first. I'm now using netlify's prerendering service to simplify things for common link preview agents (eg: discord, facebook, twitter etc). More work is planned there for SEO purposes.

I don't track user activity at all, and don't plan to.

For now all write calls are done with hive-keychain, reading with hive-js.

Summary

I'm aware we have other block explorers, but to my knowledge none are open sourced so I made this. It's becoming a sort of hybrid between a block explorer and a traditional frontend, as well as a testing ground for me to experiment with ideas. There are other pages not linked here, incomplete modules and a lot more to come in time.

I plan to update it more until it's a complete polished package with all of the views you get in other frontends - and eventually taking parts of that code to develop hivelive.io .

Mobile support is terrible still, there may be bugs, and Pull Requests and Issues are welcome.

I don't include any traditional advertising, but I do include relevant, useful affiliate links in the top left menu. It's a free tool not a business, but tips are always appreciated ;)

Enjoy, I'll finish with some wise words from someone that left us way too soon.

image.png