freenet-core
freenet-core copied to clipboard
Document app/component SDK
- [x] Change the node distributable crate to include the HTTP gateway and local development node
- [x] Add a publish-local option to the dev tool so users can check out their contracts easily.
- [x] Publish a new version of locutus with the executable, and stalone cli tool
- [x] Publish the locutus stdlib crate
- [x] Publish the locutus typescript std lib in npm
- [x] Make guide using mdbook and pin @sanity so he can check it.
Is Gitbook preferable to Github Wiki for this?
@sanity
Is Gitbook preferable to Github Wiki for this?
I think there are several advantages (I really dislike documentation on wikis, from my corporate experience I guess):
- Wiki: you are stuck with the vendor/service you are using. If you have to migrate your repository/web is not easy and basically you need to recreate everything.
- Documentation as code.
- Documentation can be versioned along with the code.
- Released/built with CI pipelines.
- Rendering and writing are 2 different processes (like with TeX) of assembling documentation which makes...
- Hosting and presenting in different styles/formats easier, modifying easier, etc.
- Easier or more natural to integrate with generated documentation (also from CI/publishing), which I hope we will have plenty and well documented eventually.
Sorry, I meant mdbook, not gitbook.
Sounds good, I assume doc generation can be automatic via Github Actions?
Sounds good, I assume doc generation can be automatic via Github Actions?
Yes, that's right.
Possible points to improve:
- Detail the configuration of the locutus.toml file, for example how to specify the file to use as initial state.
- Link to the application examples available in the repository.
- A page with the standard development flow could be fine (how to make changes in the frontend and backend, dependencies usage...)
Despite this, I have been able to create, compile, publish and execute the contracts with the documentation.
After talking with @netsirius I think we are good for now. As we improve the development workflow or add functionality we will update the documentation.