{"id":19311666,"url":"https://github.com/possen/contactsbrowser","last_synced_at":"2025-08-09T01:54:40.203Z","repository":{"id":52344185,"uuid":"93076573","full_name":"possen/ContactsBrowser","owner":"possen","description":"Simple App that Displays the Contacts on a User's Device","archived":false,"fork":false,"pushed_at":"2017-06-02T19:32:36.000Z","size":60,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-24T03:44:24.834Z","etag":null,"topics":["contacts","ios","swift","tableview"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/possen.png","metadata":{"files":{"readme":"Readme.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-06-01T16:17:21.000Z","updated_at":"2022-08-03T14:48:31.000Z","dependencies_parsed_at":"2022-09-06T19:12:31.495Z","dependency_job_id":null,"html_url":"https://github.com/possen/ContactsBrowser","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/possen/ContactsBrowser","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/possen%2FContactsBrowser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/possen%2FContactsBrowser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/possen%2FContactsBrowser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/possen%2FContactsBrowser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/possen","download_url":"https://codeload.github.com/possen/ContactsBrowser/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/possen%2FContactsBrowser/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":269518669,"owners_count":24430640,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-08-08T02:00:09.200Z","response_time":72,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["contacts","ios","swift","tableview"],"created_at":"2024-11-10T00:29:43.525Z","updated_at":"2025-08-09T01:54:40.170Z","avatar_url":"https://github.com/possen.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"Contact Browser\n---------------\nAn simple app that displays the user’s contacts in a table view. Each cell displays first name, last name, and image. Tapping a contact should push a view controller that shows the contact’s home address on a map view.\n\n* Doesn't' use Interface Builder, Story Boards, or UITableViewController.\n\n* For fun I put the model in a separate library. I find it keeps the model clean but was not required for this project. This will also make it easier to add more third party code from swift package manager.\n\n* The search for items defaults to displaying the default contents items.\n\n* TableViewAdaptor is very flexible, reusable, and type safe, due to generics, piece of code. It allows different cell types\nfor each section. This class does not know anything about the specific Cell or specific Model, but generically routes the\ninformation to the supporting classes. This may be a bit more complicated than was required for this specific use, but\nI think this is a very cool class. One addition, I made was to add clicking. Notice how, I was able to handle the click\nvery cleanly in the select method, and the configure method is responsible for the updating the checkmark.\n\n* Recommend running it on a real device. As the Simulator data does not have images.\n\n* Some records on my device did not have values for the requested properties.\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpossen%2Fcontactsbrowser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpossen%2Fcontactsbrowser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpossen%2Fcontactsbrowser/lists"}