Proposal: Hardware Upgrade of the NEO Economy TradeHub Explorer Server and Explorer extensions



  • We would appreciate community comment & feedback on the following proposal before submitting for vote.

    Summary

    This proposal seeks to fund a hardware upgrade to the NEO Economy TradeHub Explorer for the following year and adds functionality to the Explorer via front-end and API development.

    It’s a collaboration between Vincent and Devel, both are validators and well known community members. The idea comes from their shared vision and will be coordinated under the umbrella of the "Mai Te Pora Dev-Hub”, a newly formed developer community with the founding goal of growing the Switcheo TradeHub ecosystem. https://github.com/Mai-Te-Pora/

    Description

    The current Neo Economy TradeHub Server and explorer (https://tradehub.neoeconomy.io) was deployed as a proof of concept. Since launch in September 2020, shortly after Mainnet genesis, it has proven to be an extremely useful tool for users, validators and developers alike. It also provides both an alternative and a complementary set of tools to the official switcheo.org explorer.
    In operation, the explorer has proven to be reliable, but is also underpowered, providing a laggy UX, with regular long delays between updates and errors loading pages.

    This proposal will allow the server to be upgraded to a high performance dedicated server and to fund rental for the following 12 months.

    Additionally, the TradeHub Explorer will be expanded to provide the following new features:
    -Richlist page
    -Miscellaneous improvement following recent code upgrade which broke a few things (decimals / new tokens), and future TradeHub specific features integration.

    The current explorer server will be repurposed as a dedicated explorer for the MaiTePora Devnet blockchain, a chain which will track the current Mainnet version as closely as possible and remain available to developers at all times.

    In addition, the explorer needs a dedicated TradeHub node to be able to sync properly and efficiently, so this would provide one more sentry node to TradeHub.

    Devel will be coding the backend API and database additions required for this work. These API’s will then become available for implementation and use on 3rd party Nodes and clients.
    Both the API extensions and the Explorer will be open-sourced on the MaiTePora Github https://github.com/Mai-Te-Pora/

    Ongoing support will be provided by the original developers via the Github repository and other developers & users can contribute by raising Issues and Pull requests.

    Risks and Benefits

    Other than the risk of non-delivery, we see no downside to this proposal.

    The benefits are the strengthening of an alternative explorer in the Switcheo TradeHub ecosystem, it will also provide visibility of the MaiTePora DevNet and additional API endpoints.

    Budget

    Costing for this proposal is as follows:

    • Server Costs for 1 year ~USD1200 (50k SWTH)

      Server short specification:

      • 128GB DDR4 RAM
      • 2 x 1 TB SSD NVMe Redundant System
      • High Unlimited Traffic BPS
        For security reasons, the server’s provider and location will remain confidential
    • 30k SWTH to Devel for API/Database development work.

    • 50k SWTH to Vincent for Explorer UI & database development work.

    Timing: Deployment of the server and code will be completed within 2 weeks of the proposal passing.

    Distribution schedule
    Upon approval of this proposal, 130k SWTH will be distributed directly to Born2Stake Validator as escrow.

    • 50k SWTH sent to Vincent and converted to USDC, (verified/approved by Intsol staking) - Released immediately on proposal passing.

    • 30k SWTH to Devel for API/Database development work.

    • 50k SWTH to Vincent for Explorer UI development work.
      Both released after verification by Escrow + 1 competent developer to validate deliverables (code and Explorer/API function).



  • Hi

    I am not sure we need so many explorers at this stage, we already have https://switcheo.org/ & https://swth.info/, later is in constant development with rich list as well as some other cool new features to be added there in the near future. If the community believes we need this extra one, fine with me, i will abstain on this vote if it goes to vote.

    As for API endpoints we better concentrate on upgrading and improving existing API (https://docs.switcheo.org/#/) and API docs and not create additional resources for that and trust me there are still things to improve, the best way for community developers is to work on that when the repository is open sourced - that is my view.



  • @acidbird Having multiple explorers ensures that we have multiple places to verify that what is happening on-chain is consistent. This is true for any blockchain and only having 2 explorers is not acceptable. Just look at the NEO ecosystem, different explorers provide different results Neoscan vs Neotracker vs O3 vs Neotube. We can't expect normal users to run their own Sentry to ensure their state is correct and having the ability to at a minimum triangulate (3) the correct state will be vital. It will also allow for different ways users could experience Tradehub if someone wanted to take it in that direction, which I believe is already under development.

    @intsol this seems like a very reasonable request, especially on the server upgrade, explorer for Devnet, and additional sentry, my only ask would be more info on the the API/Database work b/c its is somewhat vague. Meaning how will the deliverable be judged/deemed complete?



  • @Switcheolytics

    my only ask would be more info on the the API/Database work b/c its is somewhat vague. Meaning how will the deliverable be judged/deemed complete?

    The API Endpoint will be developed, or better said already is far advanced developed, as python program. FastAPI is used for handling API requests. The framework allows the documentation of the endpoints as well.

    Deliverables of the API:

    • Python Program to start additional API Endpoint. Can be seen here. WIP
    • API Documentation, first results can be seen here. WIP
    • Source Code documentation. WIP - Main file Done - module files Started
    • Automated tests for API endpoints(Request/Response). Not started yet
    • Automated deployment via docker + docker-compose. Done but will be optimized.

    As always I try to be compliance with code conventions. For this PyLint is used and a score bove 9 out of 10 is set as personal requirement to maintain readability.

    Both released after verification by Escrow + 1 competent developer to validate deliverables (code and Explorer/API function).

    One competent developer will be required as contract person for the escrow. As always every one is invited to give feedback, create github issues or test the code.



  • @Switcheolytics fair point, i will support this proposal. Thank you!



  • Is this going to be moved forward to an on-chain text proposal?





  • @ravenxce

    The additional API endpoint is already opensource.

    I added an additional API endpoint for current and historic pricing. It uses the Coingecko API in the background but this endpoint allows the usage of the tradehub denoms and timestamps.

    The server upgrade is WIP aswell as the visualisation of the rich list.



  • @acidbird I see - thanks!