All Projects → wesbillman → JSONFeed

wesbillman / JSONFeed

Licence: MIT License
JSONFeed parser for swift

Programming Languages

swift
15916 projects
objective c
16641 projects - #2 most used programming language

Projects that are alternatives of or similar to JSONFeed

feed-nim
A feed parsing module for Nim
Stars: ✭ 21 (-22.22%)
Mutual labels:  jsonfeed
django-feed-reader
An RSS/Atom/JSONFeed reading + storing library for Django
Stars: ✭ 21 (-22.22%)
Mutual labels:  jsonfeed
json-feed-viewer
The world's first JSON feed viewer 🥇
Stars: ✭ 40 (+48.15%)
Mutual labels:  jsonfeed
simplepie-ng
Don't use this yet.
Stars: ✭ 41 (+51.85%)
Mutual labels:  jsonfeed
JSONFeed
A Swift encoder and decoder for the JSON Feed format
Stars: ✭ 51 (+88.89%)
Mutual labels:  jsonfeed
tidyRSS
An R package for extracting 'tidy' data frames from RSS, Atom, JSON and geoRSS feeds
Stars: ✭ 62 (+129.63%)
Mutual labels:  jsonfeed
Gofeed
Parse RSS, Atom and JSON feeds in Go
Stars: ✭ 1,762 (+6425.93%)
Mutual labels:  jsonfeed
V2
Minimalist and opinionated feed reader
Stars: ✭ 3,239 (+11896.3%)
Mutual labels:  jsonfeed

Build Status Codecov Carthage compatible SwiftPM Compatible

JSONFeed

Swift parsing for JSON Feed Spec

Installation

Carthage

You can install Carthage with Homebrew using the following command:

brew update
brew install carthage

To integrate JSONFeed into your Xcode project using Carthage, specify it in your Cartfile where "x.x.x" is the current release:

github "wesbillman/JSONFeed" "x.x.x"

Swift Package Manager

To install using Swift Package Manager have your Swift package set up, and add JSONFeed as a dependency to your Package.swift.

dependencies: [
    .Package(url: "https://github.com/wesbillman/JSONFeed.git", majorVersion: 0)
]

Manually

Add all the files from JSONFeed/JSONFeed to your project

Usage

See JSONFeedTests for detailed usage examples

Load a feed from a dictionary

let dictionary = <some feed dictionary>
let feed = try? JSONFeed(json: dictionary)

Load a feed from data

let data = <some feed data>
let feed = try? JSONFeed(data: data)

Load a feed from a json ut8f string

let string = <some utf8 json string>
let feed = try? JSONFeed(string: string)

Reading from a feed via URLSession

Using default configuration and URLSession

let reader = JSONFeedReader()
reader.read(string: "https://jsonfeed.org/feed.json") { (feed, error) in
    if let error = error {
        //bad things happened
    }

    if let feed = feed {
        //good things happened
    }
}

Using custom implemenation of URLSession (example: for unit testing)

let reader = JSONFeedReader(session: SomeCustomURLSession)
reader.read(string: "https://jsonfeed.org/feed.json") { (feed, error) in
    if let error = error {
        //bad things happened
    }

    if let feed = feed {
        //good things happened
    }
}
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].