Frontend + API =  

  • Intuitivní
     
  • Konzistentní
     
  • Dobře strukturované
     
  • Konvenční
     
  • Flexibilní

Ideální API

Méně kódu

Méně chyb

Méně překvapení

}

Ideální API

To, o kterém frontendista neví

data.get()

data.save()

data.rollback()

store.findAll('post')

store.find('post', 5)

store.query('post', {title: 'Foo'})

record.save()

record.destroyRecord()

post.get('author')

Data layer

Falcor

Netflix

"One Model Everywhere"

"The Data is the API"

GraphQL

Facebook

"Ask for what you want"

http://jsonapi.org/

3. 5. 2013
Initial release

29. 5. 2015
1.0 final released

375          354          872

GET /articles?page[number]=3&page[size]=1

GET /articles?include=author&fields[articles]=title,body&fields[people]=name

GET /people?sort=age

GET /articles?sort=-created,title

GET /articles?filter=foo

Client Side

devour-client      92

yayson      122      

json-api-store      54

jsonapi-datastore      105

orbit.js      1507

Server Side

Díky za pozornost

Frontend Friendly APIs

By Martin Malinda

Frontend Friendly APIs

  • 1,277