In the process of implementing 2.x, we found there are lots of features we didn't think at the start and they are basically out from our original design, such as customize graphql, wildcard component, sync fetching, etc. We still implement these features in 2.x and they also work well. But it's caused the structure of Canner is hard to understand. So, next step, we will focus on the remaining few features and clear structure of Canner to make it more friendly for contributions.
Features
Complete Internationalization(i18n)
For now, we only support the i18n of UI, such as title, description and other texts in the schema. In the feature, we will support the i18n of the data which means you can specify the string fields, number fields, and editor to show different languages and values in different locales.
Role-based Access Control
Canner will support the users to pass the rule which defines the access right of each data so that it can block the render, routing, and also the requests of those specific components.
Real-time Collaboration
For big companies, there are probably several editors in the same CMS. When they deploy different data in the same field at the same time, the two data won't be merged. To prevent the situation, Canner will lock those fields that are updated by someone.
Improvement
Replacing HOCs with React Hooks
In Canner, there are lots of HOC handling the data fetching, caching, mutating and validation, etc. And they indeed cause the performance problem and hard to understand, so we will extract those logics and implement with React hook.
More Friendly for Contributions
We will extract more packages and define the layers of Canner more clear.
Decoupled Toolbar
Make the toolbar component more independent so that we can use it easier in Canner component, in UI components, and in relation implementation. Also, it let the customization of the toolbar is more flexible and powerful.
Any feedbacks are welcome! Let us know what features and improvements you would like to have in our next version!
Roadmap
In the process of implementing 2.x, we found there are lots of features we didn't think at the start and they are basically out from our original design, such as customize graphql, wildcard component, sync fetching, etc. We still implement these features in 2.x and they also work well. But it's caused the structure of Canner is hard to understand. So, next step, we will focus on the remaining few features and clear structure of Canner to make it more friendly for contributions.
Features
Complete Internationalization(i18n) For now, we only support the i18n of UI, such as title, description and other texts in the schema. In the feature, we will support the i18n of the data which means you can specify the string fields, number fields, and editor to show different languages and values in different locales.
Role-based Access Control Canner will support the users to pass the
rule
which defines the access right of each data so that it can block the render, routing, and also the requests of those specific components.Real-time Collaboration For big companies, there are probably several editors in the same CMS. When they deploy different data in the same field at the same time, the two data won't be merged. To prevent the situation, Canner will lock those fields that are updated by someone.
Improvement
Replacing HOCs with React Hooks In Canner, there are lots of HOC handling the data fetching, caching, mutating and validation, etc. And they indeed cause the performance problem and hard to understand, so we will extract those logics and implement with React hook.
More Friendly for Contributions We will extract more packages and define the layers of Canner more clear.
Decoupled Toolbar Make the toolbar component more independent so that we can use it easier in Canner component, in UI components, and in relation implementation. Also, it let the customization of the toolbar is more flexible and powerful.
Any feedbacks are welcome! Let us know what features and improvements you would like to have in our next version!