Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Summary
Right now, there are no built-in generators for building apps. Everything from component creation, to generating types and auto configuring the project for their usage, to creating widgets (iOS and Android boilerplate setup like the folder where it goes and supporting files like extension.json).
Generators help speed up development but can also help encourage best practices from naming things to even initial file setup.
@nativescript/nx and xplat come with generators to help project setup/creation/development however they come with other aspects that make them not as easy to pick up and just use right after setting up a NativeScript development machine.
Basic example
Swift/Kotlin generators for when wanting to drop in either and use with {N} apps, eg:
This would do several manual steps in one go:
org.my-company.custom-kotlin
)Integration generators, eg:
Motivation
Improve developer experience and speed up project development.
Drawbacks
Depending on implementation direction chosen, may introduce some maintenance. However there are steps which could be taken to minimize extra maintenance overhead like keeping the generation as minimal as possible reducing surface area of potential external environment changes (like if Solid syntax changed somewhere in a component generated).
The generators could become plug/play as well by other communities to allow easier self sustaining generation by interested communities to allow them to self govern what's generated.
Adoption strategy
Just documentation.
Unresolved questions
Whether various tools out there like builder.io Mitosis could/should be used for component interop with the generator.