Swift wrapper for Discord's API. Maintained fork of Azoy's Sword
Sword – A Discord Library for Swift
Requirements
- macOS, Linux, iOS, watchOS, tvOS (no voice for iOS, watchOS, or tvOS)
- Swift 4.0
- libsodium (if on macOS or Linux)
Installing libsodium
macOS
Installing libsodium is really easy on mac as long as you have homebrew. After that is installed, all you have to do is brew install libsodium
. That’s it!
Linux
This depends on the version of Ubuntu you are running, so I made a nice table here:
Ubuntu 14.04 | Ubuntu 16.04 |
---|---|
sudo -E add-apt-repository -y ppa:chris-lea/libsodium && sudo apt-get update && sudo apt-get install -y libsodium-dev |
sudo apt-get update && sudo apt-get install -y libsodium-dev |
It’s easier to copy and paste that command right into shell, and follow any on screen instructions if needed so.
Adding Sword
Swift Package Manager
In order to add Sword as a dependency, you must first create a Swift executable in a designated folder, like so swift package init --type executable
. Then in the newly created Package.swift, open it and add Sword as a dependency
// swift-tools-version: 4.0
import PackageDescription
let package = Package(
name: "yourswiftexecutablehere",
dependencies: [
.package(url: "https://github.com/Azoy/Sword", .branch("master"))
],
targets: [
.target(
name: "yourswiftexecutablehere",
dependencies: ["Sword"]
)
]
)
After that, open Sources/main.swift and remove everything and replace it with the example below.
import Sword
let bot = Sword(token: "Your bot token here")
bot.editStatus(to: "online", playing: "with Sword!")
bot.on(.messageCreate) { data in
let msg = data as! Message
if msg.content == "!ping" {
msg.reply(with: "Pong!")
}
}
bot.connect()
CocoaPods
Adding Sword to your iOS, watchOS, or tvOS application is easier than ever with CocoaPods. All you have to do is add Sword as a dependency to your Podfile, something like this:
target 'yourappnamehere' do
use_frameworks!
pod 'Sword'
end
Then all you have to do is pod install
and you’re ready to go.
Running the bot (SPM)
Build the libraries with swift build
, then type swift run
Running the bot in Xcode (SPM)
To run the bot in Xcode, you first have to compile the libraries with swift build
. Then to build the xcode project, type swift package generate-xcodeproj
. Finally, type open yourswiftexecutablehere.xcodeproj
, look at the top and follow the steps below
Then click the play button!
Links
Documentation – (created with Jazzy)
Join the API Channel to ask questions!