Swiftpack.co - Package - BergQuester/CardVision

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.

BergQuester/CardVision

Library for Reading Apple Card Transaction History Screenshots

CardVision

Overview

Purpose

While the Wallet app provides exports for Apple Cards at the end of each month, many of us like to handle our budgets on a more frequent basis. However, the Wallet app provides no mechanism for this. This package uses Apple's Vision framework to read Wallet screenshots and export transactions to CVS files.

Supported Plaforms

  • macOS 10.15+
  • iOS 13+

Limitations

  • Screenhots must be cropped such that only transaction information, without icon, is shown as in the following example:

Example Screenshot Cropping

  • CardVision does not currently attempt to deduplicate transactions that show up in multiple screenshots.

Commandline tool

Installation

brew install bergquester/bergquester/cardvision

Usage

cardvision -imagePath <path_to_cropped_images> -outputPath <path_to_output_file>

Swift Package

Requirements

  • Xcode 11+
  • No external dependancies!

Installation

Use Swift Package Manager.

Example

import CardVision

let filePath = "path_to_directory_of_images"

let csvData = FileManager()
    .images(inPath: filePath)
    .allTransactions()
    .filtered(isDeclined: false)
    .csvData

Contributions

Contributions are welcome. Some areas that need some help:

  • Real error handling
  • API documentation
  • Tests and test data
  • Address limitations

Liscense

MIT

Github

link
Stars: 1
Last commit: 1 week ago

Releases

0.2.0 - CLI - 2021-02-17T23:39:28

  • Added CardVisionCLI target for a command line tool.