private async Task <MainViewModel> GetViewModel() { //TODO: Add caching var model = _storage.GetBlob <MainViewModel>(); var user = await _gitHub.GetUser("JhonnyLi").ConfigureAwait(false); var result = await _gitHub.GetReposFromUser(user).ConfigureAwait(false); model.avatar_url = user.avatar_url; model.OwnerName = user.name; model.GitHubUrl = user.html_url; model.LinkedInUrl = _linkedIn.GetLinkedInProfileLink(); model.Repositorys = result.Select(r => new RepositoryViewModel { Name = r.name, CreatedDate = r.created_at, Description = r.description, UpdatedAt = r.updated_at, Url = r.html_url }).OrderByDescending(d => d.UpdatedAt).ToList(); model.Words = new Models.Words.Sentences(); return(model); }