Skip to content
A framework built to help use the FatSecret API with Swift
Swift
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.swiftpm/xcode/package.xcworkspace
Sources/FatSecretSwift
Tests
.gitignore
LICENSE
Package.resolved
Package.swift
README.md

README.md

FatSecretSwift

A framework built to help connect to the FatSecret REST api. Currently the framework supports foods.search and food.get.

Disclaimer

This framework is mainly a demonstration of how to use OAuth1 with FatSecret. More functionality will probably not be added but feel free to contribute.

Requirements

Xcode 10.x or a Swift 4.2/5.x toolchain with Swift Package Manager.

Installation

For use with an Xcode project, FatSecretSwift can be added by navigating to File > Swift Packages > Add Package Dependency... and adding https://github.com/NicholasBellucci/FatSecretSwift.git

Xcode will give a few options when it comes to the rules. Feel free to choose between using the latest release or master as both should align.

FatSecretSwift can also be added through a Package.swift file. Just include .package(url: "https://github.com/NicholasBellucci/FatSecretSwift.git", from: "0.1.0") as a dependency.

Usage

First step is to initialize your personal credentials. In the example this is done in the AppDelegate but this can be done wherever so long as it is done before any API request.

import FatSecretSwift

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {
    enum Constants {
        static let apiKey = ""
        static let apiSecret = ""
    }

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

        FatSecretCredentials.setConsumerKey(Constants.apiKey)
        FatSecretCredentials.setSharedSecret(Constants.apiSecret)

        return true
    }
}

Once this has been done requests can be made by initializing the FatSecretClient.

let fatSecretClient = FatSecretClient()

Search

fatSecretClient.searchFood(name: "Hotdog") { search in
    print(search.foods)
}

Get Food

fatSecretClient.getFood(id: "16758") { food in
    print(food)
}

License

SociableWeaver is, and always will be, MIT licensed. See LICENSE for details.

You can’t perform that action at this time.