Check out the projects we're working and ones we finished.

This is our album of projects that we are working on and might have finished, look through, you might some usefull ones, they arose out as side projects that solved our problems through working on our main projects

Profile pic gurron

Gurron is a tech company that builds new and innovating ideas.

Download: Fast, Fun, Awesome
EFPA (Easy Facebook PHP API) Library 1.3
The library that simplifies facebook intergration.


Making the facebook API as easy as social plugins
EFPA was created out of the will of integrating web apps with facebook faster. It is tasks such 'authenticating' that puts off a lot of first time developers. They are forced to use social plugins as a means of having some connection to facebook.
This has meant that while the social "copy-paste" plugins have become a viral addition to any web app or website it has left out true communication with the facebook API to the few who could code to a higher degree.

Starting - A tutorial on getting started and running some functions

This is a short tutorial on creating a simple web application that intergrates with facebook's features by using efpa. The web application will allow a user to connect to my site using facebook and then we will present the user with their home feed. It is a good example of the speed and simplicity of working with efpa.


The connectAuth() function is the function which runs the authentication process. In one line it authenticates your app and if the user is using your app for the first time, facebook shows the application allowance checkbox. The default permissions on efpa include;
  • publish_stream
  • read_stream
  • read_friendlists
  • create_event
  • offline_access
  • friends_likes
  • user_activities
  • user_status
  • user_birthday
  • user_groups
** The ability to customise the list of permissions will be available in efpa-1.4 (to be released very soon)

If, and/or when, the user has accepted your application to the permissions above, it will redirect the user straight to your application url (your "fbAppurl").


The api() function allows access to the facebook Graph API api() function, which means that you do have to revert to the facebook API for making calls. the structure is the same as it would have written using the facebook Graph API.

This means that you can any other function that facebook offers via this api() this is while we build more easier versions for facebook functions, we think that this function gives the flexibility to do any action possible with the facebook via efpa.

The facebook page on api() is here, it gives really good example of what is possible with the api() on efpa. ->

loginLnk() & logoutLnk()

The loginLnk() function generates a valid link for your the user to "login" to your app using their facebook accounts. The loginLnk() is presented in a string so this could be used as a link in HTML for a custom image/text you may want to use.

The logoutLnk() appends a "log" variable to your app url where the value is "out". This destroys the sessions in the page.


You can retrieve any part of information from the user that has conected with your web application. The [DATA NAME] should be completed with the name of what data you want to retrieve from the user.

For a full list of what kind of data you can retrive visit the facebook deveopers reference api

Access Token

When the user logs in using their facebook account a session is created for the access token, which can be retrieved for saving in a database for later use or for doing user actions while user if offline.

If you already have the access token saved then at the beggining of you script you can declare the access token session.

** Note: you should not declare session_start() as the efpa script already does so. userFeed() & userHome()

This is the array that is built up by taking posts from either the home feed; userFeed(), or the profile updates; userHome().


This function provides a ready made template of streams such as the users home feed or his profile feed, this includes a facebook-like design of posts; with user name, the users post, date and time, number of likes, number of comments, the comments themselves with their relevant information.

The template includes recognition of the data types and responds accordingly, e.g; if a location is shared the post displays a google map of the region with the exact location, if the type of data is a video from YouTube we embed the YouTube video on the post.

Also note the comments on line 10 and 11 where we have the ability to simply change the userHome() function to userFeed() and we would have the same designs and settings and could load a completely different stream.

Each part of the posts can be styled using CSS, below is a diagram showing the class names for the different sections that go into a post.

Here is the default CSS style for the stream.


Posts updates to facebook in text type only. The function returns the posted update's id. html entities are checked and there are symbol and special character check.


Posts links to facebook, this includes webpage links, youtibe video links etc. This includes the ability to add a specific image, message and caption to the link. The function returns the posted update's id. html entities are checked and there are symbol and special character check.


Posts comments to facebook in text type only, the post that comment will be associated with needs to be provided. The function returns the comments id. html entities are checked and there are symbol and special character check.

| Labs | Developer | About | Contact