{"id":29087171,"url":"https://github.com/groupeminaste/keychain.swift","last_synced_at":"2025-06-28T01:40:05.958Z","repository":{"id":63911615,"uuid":"262025087","full_name":"groupeminaste/Keychain.swift","owner":"groupeminaste","description":"The easiest way to securely store data in the keychain. It's implementation is really close to the UserDefaults.","archived":false,"fork":false,"pushed_at":"2021-07-21T10:19:55.000Z","size":31,"stargazers_count":7,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"master","last_synced_at":"2025-06-10T20:04:28.597Z","etag":null,"topics":["keychain","keychain-wrapper","spm","swift"],"latest_commit_sha":null,"homepage":null,"language":"Swift","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/groupeminaste.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}},"created_at":"2020-05-07T10:54:50.000Z","updated_at":"2024-01-24T11:13:55.000Z","dependencies_parsed_at":"2023-01-14T13:15:52.492Z","dependency_job_id":null,"html_url":"https://github.com/groupeminaste/Keychain.swift","commit_stats":null,"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"purl":"pkg:github/groupeminaste/Keychain.swift","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groupeminaste%2FKeychain.swift","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groupeminaste%2FKeychain.swift/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groupeminaste%2FKeychain.swift/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groupeminaste%2FKeychain.swift/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/groupeminaste","download_url":"https://codeload.github.com/groupeminaste/Keychain.swift/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/groupeminaste%2FKeychain.swift/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262361669,"owners_count":23299086,"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":["keychain","keychain-wrapper","spm","swift"],"created_at":"2025-06-28T01:40:01.063Z","updated_at":"2025-06-28T01:40:05.944Z","avatar_url":"https://github.com/groupeminaste.png","language":"Swift","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Keychain\n\nA swift package to easily implement Keychain on your iOS apps, with a UserDefaults-like implementation.\n\n## Installation\n\nAdd `https://github.com/GroupeMINASTE/Keychain.swift.git` to your Swift Package configuration (or using the Xcode menu: `File` \u003e `Swift Packages` \u003e `Add Package Dependency`)\n\n## Usage\n\n```swift\n// Import the package\nimport Keychain\n\n// When your need to access the Keychain, initialize it like this:\nlet keychain = Keychain()\n\n// If you want to use an access group for your Keychain, pass it as a String argument\n// let keychain = Keychain(accessGroup: \"TEAMID.your.app.identifier\")\n\n// To save a value for a key named \"yourKey\", simply use:\nlet saved:Bool = keychain.save(5, forKey: \"yourKey\")\n// The returned boolean indicates if the operation was successful\n\n// To read a value for this key\nlet value = keychain.value(forKey: \"yourKey\") as? Int ?? 0\n\n// And finally to delete your key and it's value, use:\nlet deleted:Bool = keychain.remove(forKey: \"yourKey\")\n// The returned boolean indicates if the operation was successful\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgroupeminaste%2Fkeychain.swift","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgroupeminaste%2Fkeychain.swift","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgroupeminaste%2Fkeychain.swift/lists"}