We should give better instructions for developers who are new to project to get started. Including our various style guides, how to go about claiming an issue, how to request feedback, etc.
There is a fix for this in the lord/slate master branch. @wanderingstan is there a convenient way to fast-forward our branch to include some of their changes, or would you like me to make a PR with the NestingUniqueHeadCounter class manually added? I've tested and it fixes our problem.
The docs currently have instructions for how to develop locally using the develop branch. They should be changed to use our new branching model, using master.
The word "javascript" seems to appear in the top left hand of the main page of the docs on mobile. Right next to the search box. http://docs.originprotocol.com
Seen on:
mobile Safari on Apple iPhone 6s running Version 11.4.1
We should clarify the significance of each of these properties. For reference, these are specified as part of ERC735.
We should keep in mind, and probably note in the docs, that an understanding of these properties is not required in order to use the API. They are simply used for validation and origin-js does all the validation behind the scenes. (Invalid attestations will never show up in the user object that is returned from the get method.) Our explanation should be provided simply to satisfy the curiosity of developers and provide transparency in our implementation. π
I think Slate won't scale as our documentation system. Slate is designed to generate a giant single page document, and maxes out at two levels of headings for navigation.
Our Origin docs need to document more than one origin system, which doesn't fit into Slate's navigation model, and having everything in one page is already unwieldy at the current size of our documentation.
We need to control the page hierarchy/navigation, and that's fundamentally not what Slate is about.
Here's what I'd like to see:
Multi page documentation
We control menu/navigation
Markdown based. We all speak it.
Prefer including arbitrary markdown files, vs one fixed directory that docs live in. With a monorepo this would let us keep docs with their own projects, and yet build a single documentation site from it.
Support for code highlighting
Nice to be Javascript or python based. (but speed and fewer dependencies are far more important)
Right now our origin.js API documentation is just mixed in with the rest of the docs. We have sections for things like Users and Listings, but these sections are at the same level as other sections such as Introduction. We really need a section called API that makes it clear what part of the docs pertains to the API. Either that, or we may eventually need separate documentation for the API. π€
Now that CodePen examples have been added, they need to be less fragile. They currently detect whether or not the reader has a web3-enabled browser and, if not, suggest MetaMask. They don't, however, detect whether or not a MetaMask user is signed in, or validate the currently-selected network. To resolve this issue, fork eachofour CodePens and add the following:
Move web3 detection into another Pen that is added as an "external resource" in each forked Pen
In the external Pen, detect that web3 is set to the Rinkeby network validation and serve an appropriate message if it is not
In the external Pen, detect that a web3 account is available and serve an appropriate message if it is not
Since we embedded CodePen examples, the page jumps after the first rendering. This causes a bad experience when someone arrives on the docs via a deep link or heading anchor. For example, click http://docs.originprotocol.com/#review and you will likely end up seeing something unexpected about purchase methods (depending on the size of your screen).