You can develop very powerful custom resource types that you can drop into a component dialog. This is done via JS. We have an example of creating a custom resource type here: Adobe Experience Manager Help | Creating a custom Experience Manager 6.4 sling:resourceType for Touch UI
If you look at the Weekend tutorial, which is a great guideline for AEM development, there is no mention of using this framework. Adobe recommends HTL for component development. Core components are all HTL based.