PlasmaSwiftLib
PlasmaSwiftLib is your toolbelt for any kind of interactions with The Matter Plasma Implementations.
- Features
- Design Decisions
- Requirements
- Communication
- Installation
- Example Project
- Credits
- Donations
- License
- Usage Doc
- UTXO
- Transaction
- Blocks
- Send transaction in Plasma
- Send transaction to Plasma Contract
- Outputs management
Features
- Based on More Viable Plasma Implementation by The Matter Team
- RLP encoding and decoding
- Comprehensive Unit and Integration Test Coverage
- Complete Documentation
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
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.
- If you need help, use Stack Overflow and tag
PlasmaSwiftLib
. - If you'd like to see PlasmaSwiftLib best practices, check Apps using this library.
- If you found a bug, open an issue.
- If you have a feature request, open an issue.
- If you want to contribute, submit a pull request.
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.0.7'
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, [email protected]
Alex Vlasov, @shamatar, [email protected]
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 [email protected]. 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
License
PlasmaSwiftLib is available under the Apache License 2.0 license. See the LICENSE for details.