Created ViewModel to decouple from Site