dynamic min/max version on homepage and minor refactoring