RSS3
RSS3

RSS3 is an information dissemination protocol for Web3 with the core elements of feed and search.

#27 Introducing PreGod

PreGod is RSS3’s next major product which is the foundation of a fully decentralized implementation of the RSS3 Protocol v0.4.0. Today we are thrilled to announce that the beta version of PreGod is available to everyone.

Checkout the endpoint ⬇️ and feel free to replace the account to urself’s wallet address

https://pregod.rss3.dev/v0.4.0/account:[email protected]/notes

Background

Previously for rapid prototyping, we chose to build our first version in JavaScript with Node.js. As our user base grows, our network quickly witnessed 100 million network requests per month (some real-time stats are shown here) and we knew this day was coming. So right after the release of our RSS3 Whitepaper on 19 Jan 2022, we immediately launched the plan to upgrade PreNode.

Initially named PreNode v2, the crew decided to call it PreGod since it will be written in Golang (so PreRod for rust, and PrePod for python). The reason behind this is obvious, we needed our server-side to be robust enough to support RSS3 Network, no sweat: compared to a dynamically typed and single-threaded environment, Golang offers concurrency with excellent memory management and scalability. We also wanted to build something that will be elegant to extend and maintain in the future.

After having numerous discussions and making numerous decisions, the development officially kickstarted on 25 Jan 2022. PreGod strictly follows the RSS3 Network architecture proposed in our Whitepaper and implements the core subset.

Major Improvements

As the successor to PreNode, PreGod has been completely rebuilt from scratch in Golang and will offer incredible performance and stability boosts and deliver a much smoother user experience to products built upon it: Existing products that run on our RSS3 Network will be migrated to PreGod as the backend. To our end users, the process will be seamless. The performance is going to be significantly faster and more responsive compared to PreNode. We were aware of the existence of certain bugs in PreNode, which annoyingly affect the user experience. As the team was focusing on PreGod, non-critical bugs were left behind. Most of these bugs were inherently caused by PreNode’s implementation of the legacy Protocol version. The good news is, that PreGod will get rid of them. If you manage to catch some bugs, or have any suggestions, please come to our Discord and talk to the dev team directly. Alternatively, you can open an issue on our GitHub. Additional features are made available in PreGod, this preliminarily includes popular features requested by the developers and community. We have updated our Protocol to accommodate them. While not all of them are available now, we are working on extending PreGod. So for now: RSS3URI is a new terminology introduced in the Protocol v0.4.0. This acts as the unique identifier for virtually everything in an RSS3 Network, and fundamentally changes how the Network operates. Instance is a collection of both cryptography and non-cryptography-based accounts owned by one cyber existence. Profile represents an instance’s information on the Web. PreGod will index all profiles for an instance, and an instance is able to switch between profiles easily. (Partially supported) Link was improved drastically thanks to the new version of Protocol and Network architecture. Asset and Note were unified into the same format and renovated to support even broader use-case scenarios. A series of RIPs were created to standardize the format and content of indexed third-party data. (Partially supported) All custom content was removed as we have them indexed from third parties now. This provides the flexibility for developers to release their creativity and imagination.

Future Work

This is not the end, but rather a new beginning of our adventure, we thank you all for your patience and continued support along the journey, we couldn’t have done this without you. We will continue to focus on delivering the best Web3 information distribution experience possible to not just the end-users but to all RSS3 Network participants including developers, content creators, and volunteers. As you read this, the dev team is working tirelessly on extending and polishing PreGod, we aim to add more components outlined in the Whitepaper and the Protocol, and together we march toward a fully decentralized RSS3 God!

The crew 🌀 RSS3

0 Comment