Skip to content

passy1977/pocket-ios

Repository files navigation

pocket-ios

Ask DeepWiki Platform Language License

Native iOS client for Pocket — a wallet for the secure storage of credentials and passwords.

Overview

Pocket iOS is a secure credential management application built for iPhone and iPad. It stores, organizes, and protects sensitive information in an encrypted, hierarchical structure (Users → Groups → Fields), powered by the Pocket Lib C++ core through a Swift/Objective-C++ bridge.

Key characteristics:

  • Offline-first: credentials are stored locally with full encryption, no network connection required
  • Optional sync: can connect to a Pocket backend to synchronize credentials across devices
  • Auto-logout: configurable session timeout automatically locks the app after inactivity
  • Keychain integration: sensitive session data is stored using the iOS Keychain
  • Password generator: built-in utility for generating strong passwords
  • Import / Export: credentials can be exported and imported in JSON format

Architecture

The app follows an MVC pattern and is structured in three layers:

Layer Technology Responsibility
UI Swift + UIKit ViewControllers, navigation, user interaction
Bridge Objective-C++ Wraps the C++ pocket-lib for use in Swift
Core C++ (pocket-lib) Cryptography, data model, network communication

The bridge layer (Bridge/) exposes User, Group, Field, GroupController, and FieldController classes to Swift via the bridging header.

Requirements

  • iOS 18.0+
  • Xcode 15+

Dependencies

Library Purpose
openssl-ios Cryptographic operations
curl-ios HTTP networking
SwiftSpinner Loading indicators
KeychainSwift Secure Keychain access
IQKeyboardManager Keyboard handling
Reachability.swift Network status detection

Pocket Ecosystem

Core Components

  • Pocket Backend - Java/Spring Boot backend service providing REST APIs, authentication, and business logic
  • Pocket Web Backend - Rust/Actix web server with rate limiting and session management
  • Pocket Lib - C++ core library for performance-critical operations and cryptography

Client Applications

About

Pocket client for ios

Resources

License

Security policy

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors