can DRY up in the future as we webserver more components