Refactored three variants: added a app, site, and api application