[STEEM DIP] Development Progress Report #1
Hello Steemian, this is the @upvu.witness team. Over the past few weeks, our team has been quite busy with various development tasks. We've made a lot of progress, and we think it's time to share some of our progress with the community.
You can check out our past proposals and posts related to DIP development work through the links below.
Week No. | Item | Progress |
---|---|---|
Week 1 | API Endpoint #1 | Local development environment setting, Condenser source analysis, Source modification and deploy test |
Week 2 | API Endpoint #2 | Collect and organize all available API Endpoint data, Analysis of selectable options related to API list management method, API list operation test |
Week 3 | API Endpoint #3 | Valid RPC Node List-up, steemit/steemitwallet front-end UI update, PR completed |
Week 4 | Loading Comments | Condenser source analysis, Source modification and deploy test, Loading Comments UI update and testing in progress |
1. Select API List management method
A. How to manage the API List
At first, we thought that the best way to manage the API List would be to use the Steemit Team (foundation) DB, but we received an answer that sharing was not possible for security reasons. So we had two options to choose from:
- Manage with own DB (Cloud DB managed by our team)
- Recording in the default.json file of the Condenser source (github))
We analyzed the pros and cons of the two available options as follows.
① Managing with own DB
- PROS: Very easy to manage RPC Node List (can be reflected immediately when adding or deleting to DB)
- CONS: If a problem occurs in the Cloud DB, a problem may occur in the condenser (unlikely, but it can occur)
② Recording in the default.json file of the Condenser source
- PROS: Anyone can view, and as an open source, anyone can update the list with a PR
- CONS: In order to be reflected in the Condenser, the Foundation (Steemit Team) needs to deploy
We put a lot of thought into the pros and cons of the two available options. In the end, we decided to manage it as a source (github) because distribution is cumbersome, but anyone can update it and there are few exceptions.
2. Valid RPC Node Testing
- Over the past two weeks, we've been testing it by adding both our existing lists and additional lists we've acquired through comments.
- Some API endpoints of the nodes in this list failed to fetch posts and comments.
- First of all, Nodes with issues were removed from default.json, and only APIs that worked well without problems were added to the list.
- Valid RPC Nodes added to the current basic list are as follows.
3. Frontend UI Update
We've updated the UI to view and select RPC Node Lists in the following locations:
steemit.com : https://steemit.com/@account/settings
steemitwallet.com : https://steemitwallet.com/@account/settings
As mentioned above, you can select the RPC Node list that is currently added by default, and the screen is implemented as follows.
4. Functional testing and error checking requests
All of the features described above have been completed as pull requests, and anyone can check them out at the source link below.
- Github source link:
We would appreciate it if everyone, including community developers and the Witness team, would do functional testing and error checking.
Plan for the next
Our team started working on the next development item, "Loading Comments" feature implementation and "Templates & Drafts". The "Loading Comments" feature is expected to be available as a Pull Request next week.
Now we have the most important, but also the most difficult to implement and operate, development item: "Templates & Drafts", and we are working on it with developers outside the Steem ecosystem.
Stay tuned for our next development progress report.
Best Regards
UPVU witness team
Would you like to add https://api.pennsif.net to your list ?
I think this is the api problem(call bridge ...)
You can test like this.
Perfect, thanks :)
Yes, your node( https://api.pennsif.net) exists in my original node list.
But your node does not work well for getting post/comments like under image.
Case of https://steemd.steemworld.org
There are no error in posting rpc node list.
I don't know why this situation.
Anybody who know about this problem, please tell me know.
Thanks.
Hi! I'm the @pennsif.witness Team Technical Lead.
Could you share the full call which is failing on api.pennsif.net?
Please refer to under my comment.
Thanks.
Thanks for this.
We will investigate.
Well done! I will test the new code in the next few days. This comment is already sent via your branch :-))
Thanks for the update, great job!
Great job! !thumbup
Hello @upvu.witness! You are excellent!
command: !thumbsup is powered by witness @justyy and his contributions are: https://steemyy.com
More commands are coming!
Have you thought about a WEb 3.0 or DeFi off ramp development for steam...
US users are losing trading platforms for steam...🙄
@happyberrysboy
I checked your code a little (first only the condenser).
I found a bug and have some suggestions on top of that :-)
In parallel, I would also comment this in your PR. I don't know whether I could commit to your PR, but I could commit the solution to your branch if you want.
Bug
The selection of a node is saved in localstorage but overwritten the next time the page is openend.
Row 96 in Main.js must be changed to:
if (!steemSelectedRpc) {
Suggestions:
I would suggest that when a node is selected, the label is also updated. For this, it would be better to save the selected node
rpcNode
in the state of the component, so that an update can be rendered automatically by React.Furthermore, I would like to see an error message if the url of the selected node is invalid.
Hi @moecki ,
Oh my.. bug.. You're right. I missed that. Really thanks.
And updated all your comments.(git pushed)
Really thanks for your kindly review. 👍👍👍
I would have solved it almost exactly like this :-)
This node is missing "https://steem.senior.workers.dev/" !bing
Credit: Bing Wallpapers
command: !bing is powered by witness @justyy and his contributions are: https://steemyy.com
More commands are coming!
This post has been featured in the latest edition of Steem News...