Looks interesting similar to Troposphere (a python library for creating cf stacks) which until you create a lot of cloudformation templates you realise that it is easier to read and write native cloudformation templates (more of a gripe with troposphere). This does look like it improves on troposphere by using classes which is nicer. And allows you to harness the power of a programming language to construct complicated templates (for example a template with several of the same resources but slightly different). Thanks for sharing.
CloudFormation Modules also uses NPM for distributing pre-defined templates, but sticks to YAML/JSON.
I don't know what is the better approach.
CDK is easier for JS developers to use, cfn-modules are easier for CF developers to use.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.