site/lib/jsonfeed/README.adoc

28 lines
805 B
Plaintext
Raw Permalink Normal View History

Rewrite site backend in Rust (#178) * add shell.nix changes for Rust #176 * set up base crate layout * add first set of dependencies * start adding basic app modules * start html templates * serve index page * add contact and feeds pages * add resume rendering support * resume cleanups * get signalboost page working * rewrite config to be in dhall * more work * basic generic post loading * more tests * initial blog index support * fix routing? * render blogposts * X-Clacks-Overhead * split blog handlers into blog.rs * gallery index * gallery posts * fix hashtags * remove instantpage (it messes up the metrics) * talk support + prometheus * Create rust.yml * Update rust.yml * Update codeql-analysis.yml * add jsonfeed library * jsonfeed support * rss/atom * go mod tidy * atom: add posted date * rss: add publishing date * nix: build rust program * rip out go code * rip out go templates * prepare for serving in docker * create kubernetes deployment * create automagic deployment * build docker images on non-master * more fixes * fix timestamps * fix RSS/Atom/JSONFeed validation errors * add go vanity import redirecting * templates/header: remove this * atom feed: fixes * fix? * fix?? * fix rust tests * Update rust.yml * automatically show snow during the winter * fix dates * show commit link in footer * sitemap support * fix compiler warning * start basic patreon client * integrate kankyo * fix patreon client * add patrons page * remove this * handle patron errors better * fix build * clean up deploy * sort envvars for deploy * remove deps.nix * shell.nix: remove go * update README * fix envvars for tests * nice * blog: add rewrite in rust post * blog/site-update: more words
2020-07-16 19:32:30 +00:00
= JSON Feed Parser
[link=https://github.com/pwoolcoc/jsonfeed]
image::https://img.shields.io/crates/v/jsonfeed.svg[JSON Feed crate version]
This is a http://jsonfeed.org[JSON Feed] parser in Rust. Just a thin layer on top of `serde`, but it
provides serialization & deserialization, along with a Builder API for constructing feeds.
Note that this is alpha, I still need to add a lot of tests and a couple more features.
== Example
----
extern crate jsonfeed;
extern crate reqwest;
fn main() {
let resp = reqwest::get("https://example.com/feed.json").unwrap();
let feed = jsonfeed::from_reader(resp).unwrap();
println!("Feed title is: {}", feed.title);
}
----
TODO:
* Tests. Lots and lots of tests
* Implement ability to add, serialize, and deserialize custom attributes from the json feed spec