compfest
Inspired from TextMate grammar for syntax highlighting And based on UML component diagram
Extract the manifest file from the sources by providing a specific grammar.
grammar: [svelte.rpl]
components:
- svelte.htmltag.component.name
providers:
- svelte.EventDispatcher
connectors:
- require: svelte.directive.bind.property
provide: svelte.directive.bind.variable
sockets:
- svelte.export.let.Unassigned
- svelte.export.let.Assigned
- How many component framework we have in the ecosystem? 3~4?
- What if we include another programming language? ~7?
- What if we not limit it only to front-end or mobile? 9~15?
- What if we include not so popular framework too? >40?
Having many choices is good and utilizing all of them in the organization make several projects faster to deliver. However, what if we want to analyze that? Maybe we want to reuse or rewrite some component from other projects. Well, good luck with that 😅
$ compfest gen 'src/**/*.svelte' --grammar svelte.rosie.yml --as yaml
version: '1'
connections:
- provide: # no connection
component: MyComponent
property: error
type: IError
- provide: # because <MyComponent on:hear={hear}/>
component: MyComponent
property: hear
type: string
require: # used in <YourComponent bind:talk={hear}/>
component: YourComponent
property: talk
type: string
- socket: # no connection
component: MyComponent
property: accept
type: IResponse