Skip to content
Vandelay is an iOS importer/exporter, written in Swift.
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
Assets
Fastlane
Vandelay.xcodeproj
Vandelay
VandelayExample
VandelayTests
.gitignore
.swift-version
.swiftlint.yml
.travis.yml
CHANGELOG.md
Cartfile
Cartfile.private
Cartfile.resolved
LICENSE
README.md
RELEASE_NOTES.md
Vandelay.podspec

README.md

Vandelay logo

Version Build Status CocoaPods Carthage Platform Swift 4.2 License Twitter: @danielsaidi

About

Vandelay is an iOS importer/exporter. It is written in Swift and comes with built-in support for exporting and importing strings/data to/from a bunch of data sources. It supports Codable types, strings and data.

Installation

Cocoapods

If you use CocoaPods, add this line to your Podfile and run pod install:

pod "Vandelay"

Carthage

If you use Carthage, add this line to your Cartfile then run carthage update --platform iOS:

github "danielsaidi/Vandelay"

Exporting data

Vandelay lets you export strings, data and Encodable types, by using any of its built-in exporters. You can also extend it with custom ones.

Vandelay comes with the following built-in exporters:

  • EmailExporter - exports strings & data as email attachments
  • FileExporter - exports strings & data to local files
  • MessageExporter - exports strings & data as message attachments
  • PasteboardExporter - exports strings to the pasteboard

You should probably use string exporters whenever possible. Use a data exporter when you only have Data or when a type can't be serialized.

Importing data

Vandelay lets you import strings, data and Decodable types, by using any of its built-in importers. You can also extend it with custom ones.

Vandelay comes with the following built-in importers:

  • FileExporter - imports strings & data from local files
  • PasteboardExporter - imports strings from the pasteboard
  • UrlExporter - imports strings & data from custom urls

When importing, the same goes as when exporting: data is more powerful, but strings are more universal.

Dropbox Support

You can add Dropbox support with VandelayDropbox.

QR Code support

You can add QR code scanning support with VandelayQR.

Example App

Vandelay comes with an example app, that lets you export and import an easily managed collection of todo items (strings) and photos (data).

Before you can run the example app, you have to install Carthage and run carthage update --platform iOS. This will setup all dependencies. You can then open the Vandelay project and run the app.

Dropbox Support

The example app has support for VandelayDropbox. It is disabled by default, but can be enabled with these steps:

  • Add github "danielsaidi/VandelayDropbox" to Cartfile.
  • Run carthage update --platform iOS --cache-builds
  • Uncomment the Dropbox-specific lines in AppDelegate.swift
  • Uncomment the Dropbox-specific lines in ViewController+Export.swift
  • Uncomment the Dropbox-specific lines in ViewController+Import.swift
  • Add each framework to Build Phases / [Carthage] Copy Files.

Before you can use VandelayDropbox, you must create a Dropbox developer account, create a Dropbox app then finally replace the Dropbox app key you find in Accounts.plist and Info.plist with your own app keys.

QR Code Support

The example app has support for VandelayQR. To enable it, follow these steps:

  • Add github "danielsaidi/VandelayQr" to Cartfile.
  • Run carthage update --platform iOS --cache-builds
  • Uncomment the QR-specific lines in ViewController+Import.swift
  • Add each framework to Build Phases / [Carthage] Copy Files.

For QR codes, you can use the built-in QrCodeGenerator to generate a scannable QR code for any url you have exported data to, e.g. by using the Vandelay example project. You can then run the example project from your phone and scan that code to import data into the app.

Versioning

Versions < 1.0.0 will have breaking changes between minor versions, so Vandelay 0.8.0 will probably not be compatible with 0.7.0 etc.

Author

Daniel Saidi, daniel.saidi@gmail.com

License

Vandelay is available under the MIT license. See the LICENSE file for more info.

You can’t perform that action at this time.
You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.