Chainsight is being developed on a daily basis, and there are some major structural changes that we would like to explain.
The latest Snapshot version of the CLI can be downloaded here.
This will be updated each time changes are merged into the main branch.
Currently, the Project package structure via the CLI looks like this sample.
The major change is that the user implementation and automatically generated code are separated into different cargo projects:
- src - logics ... User implementation to index/process data (the old `app.rs`) - bindings ... Generates interface types to use other canisters that the Component depends on. - accessors ... Generates functions for Lens to call other Canisters - canisters ... Logic is used to act as a chainsight component casniter on ICP
These directories and codes are automatically generated by the csx generate command based on the contents of chainsight manifest (project.yaml and components/*.yaml).
src/logics generates the implementation template only for the first time, after which the user is responsible for implementation.
The other directories are always regenerated by the
csx generate command and synchronized with the manifest definition.
This is the end of the development flow changes. Thereafter, modules are built, deployed, and initialized by
csx deploy, and
csx exec as before.
The process for maintaining and running Cycle on IC has also been updated, but we will not go into that here, so please inquire again when you are ready to deploy on IC.
You may be currently facing problems with the old version, please update to the latest, and ask us if you have any questions.
Good luck with your development!