How to create an extension
An extension is simply a Git repository that a user clones into their project. The repository should contain code that builds on core code to expose new functionality.
Because the user's project will already be a git repository. They'll install your git repo as a Git submodule. A Git submodule is simply a repo in a repo.
As Kickstart is maintained primarily as a Gulp project, this guide will show you how to make extensions by cloning Kickstart itself.
Because of there is some overlap, this guide documents how to create both a component and a theme.