I’ve finished NCD program (which was great, I learned a lot, thanks!) and would like to share some thoughts on Near SDK & tools.
- Tooling could be heavily improved: generic syntax highlighting & autocompletion are already here, but if Near-specific plugin for vscode would exist, it could also provide code snippets and Near-specific warnings / optimization hints for inefficient / costly storage uses.
- Cost estimation for change methods would be also great.
- Debugging. Understood not possible in case of testnet, but should be absolutely possible with locally run node, right?
- Cleaning contract storage without introducing dedicated debug functions into contract. Vscode could have a button / menu item for explicit storage cleanup or it could be part of near-cli.
- From the other side, prepopulating contract with some data for debugging purposes could be also interesting feature.
- Viewing contract state/storage from vscode would be helpful too. Like 'storage-report ’ from near-account-utils can do, but integrated and interactive (allow expanding vectors /sets/maps)
- better docs, preferably offline. Something like Qt Assistant (which is the best docs viewer ever imo) & Qt docs… structured by classes, with ‘tutorials’ section & ‘best practices’
- highlighting functions which are ‘view methods’ vs ‘change methods’, just based on function content. going through the list of ‘special words’ like Context.predecessor etc
manually isn’t that fun - near create-app needs to be fixed for at least angular (doesn’t work out of box atm)
In general code-generation could provide more options, like creating ‘minimal’ project or fully functional with recommended structure.
Near is already very developer-friendly, with a bit more polishing it might become a golden standard of blockchain & tools made for human and not for robots