skeleton based on https://github.com/DiscoverMeteor/Microscope