Selama ini saya sering mendapatkan pertanyaan bervariasi mengenai REST dan API. Kalau anda bingung apa itu REST silahkan searching sendiri di google atau bisa baca sedikit di link berikut http://augindonesia.org/tandif-filtering-rest-api-adobe-air/. Lalu sebagian teman-teman developer atau yang kebetulan ingin membuat juga REST API bertanya kepada saya bagaimana caranya. Sebenarnya sudah banyak bertebaran dimana-mana REST Framework yang tinggal dipakai, dan pastinya tergantung dari bahasa pemrograman yang akan dipakai.

Jika anda akan serius membuat REST API untuk konsumsi publik, saya amat sangat tidak menyarankan anda untuk menggunakan PHP, kecuali anda menyulapnya menggunakan hip-hop PHP. Well tanpa berbasa basi lagi, ini lah list RESTful API Frameworks untuk PHP :

  • Slim, Saya sangat menyukai yang satu ini karena pengembangannya termasuk yang paling aktif dan serius dibandingkan Framework sejenis lainnya dan cukup lengkap.
  • Restler, Ini yang termasuk paling mudah dan asik untuk newbie, saya menyarankan anda untuk mencoba ini terlebih dahulu, kebetulan saya pernah berkontribusi sedikit dan Developernya adalah teman saya https://twitter.com/_Arul. (Special Thanks for helping me all this time)
  • Frapi, Frapi menyediakan web apps untuk membuat kerangka code.
  • Apify, Jika anda sudah terbiasa dengan Zend Framework, maka pasti bisa menggunakan ini.
  • Recess, Yang satu ini menggunakan MVC Style.
  • Zend Framework, Zend Framework memang sangat disegani dan juga menyediakan Class Zend_Rest_Server. Tapi sayangnya sangat mengecewakan sekali. Ingat ! jangan pakai Zend Framework untuk membuat REST API Server.
  • Tonic, Anda bisa coba sendiri yang satu ini, terlihat mudah tapi sayangnya dokumentasi tidak jelas dan tidak lengkap.
  • Dave, Jangan pakai ya ! Developernya saja sudah tidak mau ngurus lagi :D
  • Epiphany, Support module dan cukup menarik
  • SimpleREST, Sangat simple dan saat ini baru mensuport GET dan POST saja.
  • Limonade, Menurut si developer Limonade terispirasi dari framework lainnya seperti Sinatra atau Camping di Ruby, dan Orbit di Lua.

Jika anda bertanya saya pilih mana ? saya akan pilih Restler dan Slim. keduanya memiliki keunggulan masing-masing, Jika anda ingin suatu yang mudah dan powerfull, silahkan gunakan Restler, Jika API yang akan anda bangun cukup rumit dan bersifat custom, silahkan gunakan Slim.

Sebagian framework diatas mendukung custom view, silahkan pilih dengan bijak !

UPDATE :

Pada saat pertama kali artikel ini ditulis, saya agak condong untuk memilih Slim, namun saya sangat kaget melihat update dari Restler dengan versi barunya, yaitu versi 3. Banyak sekali peningkatan dan sangat advance tanpa learning curve, sehingga saya sekarang sangat menyarankan untuk para pembaca menggunakan Restler 3(saat ini masih RC3).