rest-core
A modular Ruby REST client collection/infrastructure

avatar Lin Jen-Shin (godfat)


avatar Lin Jen-Shin (godfat)


avatar Lin Jen-Shin (godfat)


avatar Lin Jen-Shin (godfat)


  • Programmer at Cardinal Blue
  • Programming Language
  • Functional Programming (Haskell)

avatar Lin Jen-Shin (godfat)


  • Programmer at Cardinal Blue
  • Programming Language
  • Functional Programming (Haskell)
  • Ruby

web-services

facebook

rest-graph
A lightweight Facebook Graph API client

Facebook Apps


Facebook Apps




01 facebook = RestGraph.new # Facebook Graph API
02 
03 
04 



01 facebook = RestGraph.new # Facebook Graph API
02 facebook.get('4')
03 
04 



01 facebook = RestGraph.new # Facebook Graph API
02 facebook.get('4')
03 facebook.post('4/photos',
04   :source => File.open('...'))

facebook

web-services

Solution: rest-core

Inspired by faraday and Rack

Generalized from rest-graph

(Almost) Identical interface

iOS apps


iOS apps


iOS apps


  • Pic Collage (500k downloads)
    • Share to Facebook
    • Share to Twitter

iOS apps


  • Pic Collage (500k downloads)
    • Share to Facebook
    • Share to Twitter
    • Share to Mixi (planned)

iOS apps


  • Pic Collage (500k downloads)
    • Share to Facebook
    • Share to Twitter
    • Share to Mixi (planned)
    • Share to Whatever

Why better than other existing clients?


  • Little Dependency

Why better than other existing clients?


  • Little Dependency
  • Less Version conflicts

No Dependency Hell

dependency-hell

X


  • How to build a Github client with rest-core


  • How to build a Github client with rest-core
  • Rack and rest-core architecture
  • Put things together

  • How to build a Github client with rest-core
  • Rack and rest-core architecture
  • Put things together
01 Github = RestCore::Builder.client do
02 end
01 Github = RestCore::<