{"id":29038013,"url":"https://github.com/teamsolutionanalysts/ios-snippet","last_synced_at":"2025-06-26T13:07:04.131Z","repository":{"id":40624437,"uuid":"507777718","full_name":"teamSolutionAnalysts/iOS-snippet","owner":"teamSolutionAnalysts","description":null,"archived":false,"fork":false,"pushed_at":"2022-06-30T05:59:17.000Z","size":1243,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2023-03-08T18:27:13.204Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"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/teamSolutionAnalysts.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":"2022-06-27T05:43:13.000Z","updated_at":"2022-06-27T05:45:07.000Z","dependencies_parsed_at":"2022-09-15T09:12:36.877Z","dependency_job_id":null,"html_url":"https://github.com/teamSolutionAnalysts/iOS-snippet","commit_stats":null,"previous_names":[],"tags_count":null,"template":null,"template_full_name":null,"purl":"pkg:github/teamSolutionAnalysts/iOS-snippet","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teamSolutionAnalysts%2FiOS-snippet","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teamSolutionAnalysts%2FiOS-snippet/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teamSolutionAnalysts%2FiOS-snippet/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teamSolutionAnalysts%2FiOS-snippet/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/teamSolutionAnalysts","download_url":"https://codeload.github.com/teamSolutionAnalysts/iOS-snippet/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/teamSolutionAnalysts%2FiOS-snippet/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262072811,"owners_count":23254320,"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","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":[],"created_at":"2025-06-26T13:07:02.691Z","updated_at":"2025-06-26T13:07:04.098Z","avatar_url":"https://github.com/teamSolutionAnalysts.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"Read Me \n\n\nThis sample project is created to showcase architecture, environment setup, use of customer configurable and reusable components, how we make api calls, how we handle data , how we map data.  To demonstrate above mentioned purpose we have create simple Login , signup screen flow .\n\n\t▪\tEnvironment Setup : This sample project is configured for three environment: development, stage and production , this will help us to manage single code for all three different env.  \n\n\t▪\tLogin/Signup UI : in this project we have created login and signup screen using Auto layout. Which is compatible with all mobile iOS devices.\n\n\t▪\tCustom configurable components: we are using our own create custom configurable components to create UI . So that with minimum line of code we can have different ui with single component. Ex. CustomTextField: this is a custom object using which we can crate different text filed UI .\n\n\t▪\tProject Architecture: we are using MVVM architecture so that we can make viewcontroler thiner. We can manage code in different separate area so that it is easy to manage and debug code.\n\n\t▪\tExtensions for Native Component : for all native components like Button, textField, Label, String, we have created extensions to provide UI level and logic level functions. Make code reusable and easy to use \n \n\t▪\tAPI Call : we have also done setup for api call, which include how to make call, how to handle response . This reusable utility is easy to use whenever its needed.\n\n\t▪\tData Mapping: we are using apple’s default Codable class protocols to make data models to map data, which is secure way to handle data \n\n\t▪\tData storing : we are using apples user  Default  to store login user data \n\n\t▪\tUser define Build setting : for providing app level  constant like base urls, api keys we are using user defined build setting , using plist we ar accessing data from build setting . Which allow us to set this kind of properties based on environment . Without doing any code level change we can access same parameter for different environment.\n\n\t▪\tHelper Class : To use all above mentioned utilities we have created helper class for easy and centralise use. \n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteamsolutionanalysts%2Fios-snippet","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fteamsolutionanalysts%2Fios-snippet","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fteamsolutionanalysts%2Fios-snippet/lists"}