The Matter Plasma Implementation

ContractTX & Block RLPJS LibSwift LibBlock ExplorerWeb AppiOS App

PlasmaSwiftLib

Build Status Swift CocoaPods Compatible Carthage Compatible Platform License

Ask questions

PlasmaSwiftLib is your toolbelt for any kind of interactions with The Matter Plasma Implementations.


Features

Design Decisions

  • Functionality was focused on serializing and signing transactions locally on the device
  • Sending raw transactions to The Matter Plasma network using REST API
  • Sending raw transactions to Plasma Contract using The Matter web3swift
  • RLP structure is similar to the one described in JS TX & Block RLP NPM module

Requirements

  • iOS 9.0+ / macOS 10.11+
  • Xcode 10.0+
  • Swift 4.2+

Communication

When using this lib, please make references to this repo and give your start! :) Nothing makes developers happier than seeing someone else use our work and go wild with it.

If you are using PlasmaSwiftLib in your app or know of an app that uses it, please add it to this list.

Installation

CocoaPods

CocoaPods is a dependency manager for Cocoa projects. You can install it with the following command:

$ sudo gem install cocoapods

To integrate PlasmaSwiftLib into your Xcode project using CocoaPods, specify it in your Podfile:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '9.0'

target '<Your Target Name>' do
    use_frameworks!
    pod 'PlasmaSwiftLib', '~> 1.1.2'
end

Then, run the following command:

$ pod install

Carthage

Carthage is a decentralized dependency manager that builds your dependencies and provides you with binary frameworks.

You can install Carthage with Homebrew using the following command:

$ brew update
$ brew install carthage

To integrate PlasmaSwiftLib into your Xcode project using Carthage, specify it in your Cartfile:

github "matterinc/PlasmaSwiftLib" "carthage"

Run carthage update to build the framework and drag the built web3swift.framework into your Xcode project.

Example Project

You can try lib by running the example project:

  • Clone the repo: git clone https://github.com/matterinc/PlasmaSwiftLib.git
  • Move to the repo: cd PlasmaSwiftLib/Example/PlasmaSwiftLibExample
  • Install Dependencies: pod install
  • Open: open ./PlasmaSwiftLibExample.xcworkspace

Credits

Anton Grigorev, @BaldyAsh, antongrigorjev2010@gmail.com

Alex Vlasov, @shamatar, alex.m.vlasov@gmail.com

Security Disclosure

If you believe you have identified a security vulnerability with PlasmaSwiftLib, you should report it as soon as possible via email to Anton Grigorev antongrigorjev2010@gmail.com. Please do not post it to a public issue tracker.

Donations

The Matters are charged with open-sorсe and do not require money for using their PlasmaSwiftLib. We want to continue to do everything we can to move the needle forward. If you use any of our libraries for work, see if your employers would be interested in donating. Any amount you can donate today to help us reach our goal would be greatly appreciated.

Our Ether wallet address: 0xe22b8979739d724343bd002f9f432f5990879901

Donate

License

PlasmaSwiftLib is available under the Apache License 2.0 license. See the LICENSE for details.