Initial commit
Ignore assets
Implementation with lots of duplicated code