Skip to content
This repository

Apify is a small open source library that delivers new levels of developer productivity by simplifying the creation of RESTful architectures. It helps development teams deliver quality web services and applications in reduced amounts of time. If you are familiar with the Zend Framework, then you already know how to use Apify.

branch: master
README.md

Introduction

Apify is a small and powerful open source library that delivers new levels of developer productivity by simplifying the creation of RESTful architectures. It helps development teams deliver quality web services and applications in reduced amounts of time. If you are familiar with the Zend Framework, then you already know how to use Apify. Take a look at the UsersController class.

Web services are a great way to extend your application, however, adding a Web API to an existing web application can be a tedious and time-consuming task. Apify was developed to ease that pain. It takes certain common patterns found in most web services and abstract them so that you can quickly write Web APIs without having to write too much code.

You can see it in action here: http://www.youtube.com/watch?v=7ptoB0yCsDo

Features

  • Small and simple web application.
  • Easy to install, easy to use and easy to extend.
  • Powerful to satisfy most requirements.
  • Standalone. Works with any existing website (just unzip the files to your server and it's ready to use).
  • Supports the following API styles: Twitter, Delicious, Scribd, Yahoo! Upcoming, Microsoft Zoom.it, and more.
  • OOP-compliant architecture.
  • Explicit Request and Response classes.
  • RESTful URL mappings.
  • Easy API versioning.
  • Out of the box support for the following representations: JSON, XML, RSS and HTML.
  • Content type negotiation.
  • Encourages proper use of HTTP response codes.
  • Domain models with out-of-the-box default implementations and input validation.

Documentation

Demo

The following Apify web application/service allows users to submit posts, vote and add comments.

URL scheme:

Representations:

Reporting bugs

We use GitHub as issue tracker. Bug reports are incredibly helpful, so take time to report bugs and request features in our ticket tracker.

Contributing

The best ways to contribute are by finding and reporting bugs, writing tests for bugs, and improving the documentation. We're always grateful for patches to Apify's code. If you want to change the code, be careful follow our design-decisions. Be especially careful not to increase complexity if you don't have a really good reason.

Contact

  • If you encounter any problems, please use the issue tracker.
  • For updates follow @fedecarg on Twitter.
  • If you like Apify and use it in the wild, let me know.

License

Something went wrong with that request. Please try again.