Repository
https://github.com/steemdocs/steemdocs
Details
SteemDocs now has a new "platform" section, which is gonna house most of the technical documentation.
The tricky thing when you work on a project like this is that there needs to be a lot of information available for it to even be useful at all. This is why I decided to pick a topic to build documentation around. This way someone with a particular question would be able to find everything they need while they are working on a specific task.
I decided to pick the topic of subsidized account creation because that's a part of the platform I'm working with right now with @TokenBB, and hey, #HF20 was not even a month ago and this is a shiny new feature.
So here's a bit about what was involved in this update.
First, I had to identify which topics are involved in creating a subsidized account. Then I had to decide how to divide up the content for the platform section. This came through trial and error. I had to spend a good amount of time digging into the blockchain source code to identify relevant parts.
I then came up with a categorization scheme:
- Properties: These are variables or constants that are involved in different algorithms, like the fee required to create accounts, or the number of subsidized accounts that a user has claimed.
- Operations: These are actions that can be used to operate on the blockchain.
- Primitives: These are building blocks that often end up as parameters passed when broadcasting operations. They're subdivided into 'struct' and 'type', and usually refer to data structures that exist in the blockchain code.
- Plugins: These are the different modules of the system.
- Methods: Procedures that are exposed by some plugins, usually to get some kind of information about the underlying data.
Here's a list of the new topics that now have a page:
Properties:
- available_account_subsidies
- account_creation_fee
- pending_claimed_accounts
Structs:
- operation
- transaction
- authority
- asset_type
Types:
- account_name_type
- extension_type
- public_key_type
- signature_type
Methods:
- broadcast_transaction
- claim_account
- find_rc_accounts
Operations:
- create_claimed_account_operation
Plugins:
- Resource Credits Plugin
After writing the documentation and adding links between pages, I needed an index of the topics discussed. This would allow the user to understand at a glance how the platform section is organized and navigate to the item they are looking for.
So I wrote a basic Vue component (we're using Vuepress at the moment to build SteemDocs) that takes a list of topics and generates lists of links. The relevant code can be found here. It's nothing fancy but it's it gonna do the job for now!
Last but not least, I added a link to the new section in the navbar, otherwise you wouldn't be able to find the new content.
And that's it! We now have a section for technical documentation.
Links
https://steemdocs.net/platform/
GitHub Proof of Authorship
- GitHub Account: https://github.com/kareniel
- Pull Request: https://github.com/steemdocs/steemdocs/pull/24