update gitignore
add component
use punch's thirdparty snippet