Swiftpack.co - tfmart/CSFloatKit as Swift Package

Swiftpack.co is a collection of thousands of indexed Swift packages. Search packages.
See all packages published by tfmart.
tfmart/CSFloatKit 0.3.2
Swift framework to help integrate some public CSGO skins related services
⭐️ 1
🕓 9 weeks ago
.package(url: "https://github.com/tfmart/CSFloatKit.git", from: "0.3.2")

CSFloatKit

CSFloatKit is a Swift framework that provides an easy way to fetch information about a CS:GO weapon skin. All the information provided comes from Step7750's CSGO Float API.

Installation

Currently, this package can be installed through the Swift Package Manager

If you're running Xcode 11 or later, you can simply go to File -> Swift Package Manager -> Add Package Dependency... and search for CSFloatKit or just paste this Github page URL on the text field

If you're running an earlier version, you'll have to set up SPM on your project and add the following dependency to your Package.swift file:

dependencies: [
    .package(url: "https://github.com/tfmart/CSFloatKit.git", from: "0.1.0")
]

Usage

To get started, you will need to create an instance of CSFloatConfiguration and configure it with either an item inspect link or using the Inventory (S), Asset (A), D and Market (M) parameters from an inspect link.

  • Initiating with an inspect link
let configuration = CSFloatConfiguration(inspectLink: "steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S76561198084749846A698323590D7935523998312483177")
  • Initiating with the S, A, D, M parameters
let configuration = CSFloatConfiguration(inventoryParameter: nil,
                                         assetParameter: "13874827217",
                                         dParameter: "4649025583329100061",
                                         marketParameter: "2608048286785948758")

After the setting up the configuration, create an instance of SWGORequester to create a float request

let request = CSFloatRequester(configuration: config) { (skin, error) in
    
}

And to start the request:

request.start()

The request will either the skin fetched from the inspect link or a ApiError, which represents the error that occurred in the request.

Screenshot

After fetching an instance of Skin with the requester, you can use the getScreenshotURL() method to get an URL string which can be used to get a screenshot image, by using the CS.Deals' csgo.gallery screenshot service

let configuration = CSFloatConfiguration(inspectLink: "steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S76561198084749846A698323590D7935523998312483177")
let request = SWGORequester(configuration: config) { (skin, error) in
    let screenshotURL = skin.getScreenshotURL()
    //Returns "https://csgo.gallery/steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S76561198084749846A698323590D7935523998312483177"
}
request.start()

From version 0.3 upwards, it's also possible to fetch CS.Money screenshots and 3D models, just by using the item's inspect link or an instance of a Skin object:

let configuration = CSMConfiguration(inspectLink: "steam://rungame/730/76561202255233023/+csgo_econ_action_preview%20S76561199043158336A20517916623D14133434752320963923")
let request = CSMRequester(configuration: config, completion: { (fetchedScreenshot, error) in
    // URL for the skin's screenshot
    let screenshotURL = fetchedScreenshot.imageURL
    // URL for the skin's preview screenshot
    let previewURL = fetchedScreenshot.previewURL
    // URL for the skin's 3D preview
    let preview3DURL = fetchedScreenshot.preview3D
})
request.start()

Models

Documentation about the models are coming soon!

Goals

  • ☑ Get skin info from CSGO Float API
  • ☑ Support for S, A, D and M parameters
  • ☑ Finish writing unit test for the request method
  • ☑ Get an item's screenshot with csgo.gallery
  • ☑ Screenshot requester
  • ☐ Fetch images for non-marketable stickers applied to items

GitHub

link
Stars: 1
Last commit: 2 weeks ago
jonrohan Something's broken? Yell at me @ptrpavlik. Praise and feedback (and money) is also welcome.

Release Notes

HTTPS Image URL
9 weeks ago

All imageURL properties should return a secure https link

Swiftpack is being maintained by Petr Pavlik | @ptrpavlik | @swiftpackco | API | Analytics