What is OpenSteem.org
OpenSteem is an open source steem metadata standard founded by AskSteem to encourage cross compatibility between applications built on top of the steem blockchain. Anybody can propose changes and additions to the standard on our Github page, and we encourage steem developers to join the project.
Why does Steem need this?
There is currently no documented standard for JSON metadata attached to users and posts on the blockchain. Because of this, every application that uses the blockchain to power their backend (Steemit.com, Busy.org, eSteem, Zappl, AskSteem, etc) is forced to implement their own metadata schemas which over time may create redundant data, clutter, and conflicts between clients. Each of which has the potential to cause immense complications in scaling from tens to hundreds to thousands of apps.
At AskSteem we feel it's better to create a well documented public standard to solve this problem before major issues arise, which is why OpenSteem exists.
Features
While OpenSteem.org is not yet complete and will continue to develop new functionality in perpetuity, right now there are a few nifty features.
Native Media on the Blockchain
The standard supports embedding the following types of media directly onto the steem blockchain:
- Images
- Videos
- Audio
This means that applications that are OpenSteem compliant will no longer need to use a separate HTTP hosting service for serving these types of content, although the current technology only supports small media files, and may struggle for media such as long/high-resolution video files because it uses base64 encoding.
Nested Metadata
Not necessarily a feature specific to OpenSteem.org, but I haven't seem very much metadata on the steem blockchain that takes advantages of JSONs nesting capabilities.
For example:
Current app metadata:
{
"app":"appname/1.0"
}
OpenSteem app metadata:
{
"app":{
"name":"appname",
"version":1.0
}
}
As you can see the OpenSteem version is much easier to extract specific pieces of metadata from.
AskSteem Compatability
Alongside the AskSteem search engine, we launched a set of metadata that could be used to modify the way steem posts appeared in search results, today, we're going to be discontinuing our proprietary custom metadata in favor of using the OpenSteem.org standard.
How can I help?
We all want to keep the blockchain clear of useless and redundant clutter, and OpenSteem.org is one way of doing that, here's what you can do to help.
Developers
If you develop applications on top of the steem blockchain we encourage you to take OpenSteem.org into consideration when building new functionality into your apps, and if you like the idea of a documented open metadata standard for the blockchain you may even want to retrofit your existing code to meet the OpenSteem.org specifications. If you ever need to add functionality to your app that doesn't exist in the standard you are free to submit a pull request on GitHub.
Regular Users
I know it seems like non-developers can't assist in the technical workings of the blockchain, but you can. By spreading the word about OpenSteem.org to new people interested in developing for steem, and letting the devs behind the steem apps that you already use know that this project exists you can greatly assist in spreading this open standard, and keeping the blockchain clean of clutter.