{"id":30499113,"url":"https://github.com/keepworks/kwverificationcodeview","last_synced_at":"2025-10-08T19:09:31.491Z","repository":{"id":56549478,"uuid":"79117596","full_name":"keepworks/KWVerificationCodeView","owner":"keepworks","description":"A customisable verification code view to capture OTPs","archived":false,"fork":false,"pushed_at":"2023-07-13T05:11:36.000Z","size":851,"stargazers_count":86,"open_issues_count":2,"forks_count":30,"subscribers_count":4,"default_branch":"master","last_synced_at":"2025-09-29T07:49:13.611Z","etag":null,"topics":["otp","otpauth","otpview","swift","verification","verification-code"],"latest_commit_sha":null,"homepage":"","language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/keepworks.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-01-16T12:47:43.000Z","updated_at":"2025-08-20T06:55:23.000Z","dependencies_parsed_at":"2024-06-19T05:15:59.920Z","dependency_job_id":"6c6cdcde-7423-414b-84aa-d76e1cbbed68","html_url":"https://github.com/keepworks/KWVerificationCodeView","commit_stats":{"total_commits":67,"total_committers":9,"mean_commits":7.444444444444445,"dds":0.5373134328358209,"last_synced_commit":"9556739aae59865e37e2d9981e680ae8288a5c1e"},"previous_names":[],"tags_count":14,"template":false,"template_full_name":null,"purl":"pkg:github/keepworks/KWVerificationCodeView","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keepworks%2FKWVerificationCodeView","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keepworks%2FKWVerificationCodeView/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keepworks%2FKWVerificationCodeView/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keepworks%2FKWVerificationCodeView/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/keepworks","download_url":"https://codeload.github.com/keepworks/KWVerificationCodeView/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/keepworks%2FKWVerificationCodeView/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279000701,"owners_count":26082805,"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-10-08T02:00:06.501Z","response_time":56,"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":["otp","otpauth","otpview","swift","verification","verification-code"],"created_at":"2025-08-25T05:41:49.254Z","updated_at":"2025-10-08T19:09:31.462Z","avatar_url":"https://github.com/keepworks.png","language":"Swift","readme":"# KWVerificationCodeView\n\n[![Build Status](https://app.bitrise.io/app/df05a5313a9741ef/status.svg?token=NNC-GCKiEh6G4w7MJ6bM5Q\u0026branch=master)](https://app.bitrise.io/app/df05a5313a9741ef)\n[![Version](https://img.shields.io/cocoapods/v/KWVerificationCodeView.svg?style=flat)](http://cocoapods.org/pods/KWVerificationCodeView)\n[![License](https://img.shields.io/cocoapods/l/KWVerificationCodeView.svg?style=flat)](http://cocoapods.org/pods/KWVerificationCodeView)\n[![Platform](https://img.shields.io/cocoapods/p/KWVerificationCodeView.svg?style=flat)](http://cocoapods.org/pods/KWVerificationCodeView)\n\nA customisable verification code view with built in validation. Can be used for one time passwords (OTPs), email verification codes etc.\n\n![Screenshot](Screenshots/KWVerificationCodeView.gif)\n\n## Example\n\nTo run the example project, clone the repo, and run `pod install` from the Example directory first.\n\n## Requirements\n- iOS 12 or later\n- Swift 5.0\n- Latest Xcode\n\n## Installation\n\nKWVerificationCodeView is available through [CocoaPods](http://cocoapods.org). To install\nit, simply add the following line to your Podfile:\n\n```ruby\npod \"KWVerificationCodeView\"\n```\n\nOr for `Swift 4.2` support use\n```ruby\npod \"KWVerificationCodeView\", '0.3.0'\n```\n\nOr for `Swift 4` use:\n```ruby\npod \"KWVerificationCodeView\", '0.2.0'\n```\n\n\n## Usage\n\nAdd a `UIView` in your *Storyboard* and change the class to `KWVerificationCodeView`. You can set the properties in the *Attributes Inspector* and see a live preview:\n\n![Interface Builder Screenshot](Screenshots/interfacebuilder.png)\n\nThe properties which can be directly set in the *Attributes Inspector* and their default values are as follows:\n\n- `Underline Color` - Dark Gray Color\n\n- `Underline Selected Color` - Black Color\n\n- `Text Color` - Dark Text Color\n\n- `Digits` - 4\n\n- `Text Size` - 24.0\n\n- `Text Font` - System Font\n\n- `Text Field Background Color` - Clear Color\n\n- `Text Field Tint Color` - Blue Color\n\n- `Dark Keyboard` - Default Keyboard Appearance\n\nCustomizable properties\n\n- `keyboardType` - Sets the keyboard type (Defaults to Number Pad when not set)\n\n\t  verificationCodeView.keyboardType = UIKeyboardType.emailAddress\n\n\n### Variables\n\nThe `KWVerificationCodeView` has the following variables:\n\n    isTappable: Bool\n\nMakes the KWVerficationCodeView tappable. Default value is `false`\n\n### Methods\n\nThe `KWVerificationCodeView` has the following methods:\n\n\thasValidCode() -\u003e Bool\n\nReturns true when the entered code is valid.\n\n\tgetVerificationCode() -\u003e String\n\nReturns the validation code.\n\n\tset(code: String)\n\nSet verification code programatically by passing code as a string\n\n\tfocus()\n\nFocus on First Text Field\n\n\tclear()\n\nClears the verification code view and first field becomes first responder\n\n### Protocols\n\n#### KWVerificationCodeViewDelegate\n\nKWVerificationCodeViewDelegate protocol has the following method:\n\n\tdidChangeVerificationCode()\n\nNotifies that the text in `KWVerificationCodeView` has been changed. This is especially useful in situations where you have to enable the submit button only if the verification code is valid.\n\n## Author\n\nKeepWorks, ios@keepworks.com\n\n## Credits\n\nKWVerificationCodeView is owned and maintained by [KeepWorks](http://www.keepworks.com/).\n\n[![N|Solid](./logo.png)](http://www.keepworks.com/)\n\n## Contributing\n\nBug reports and pull requests are welcome on GitHub at https://github.com/keepworks/KWVerificationCodeView.\n\n## License\n\nKWVerificationCodeView is available under the [MIT License](http://opensource.org/licenses/MIT). See the [License](https://github.com/keepworks/KWVerificationCodeView/blob/master/LICENSE) file for more info.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeepworks%2Fkwverificationcodeview","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkeepworks%2Fkwverificationcodeview","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkeepworks%2Fkwverificationcodeview/lists"}