Skip to content
Go to file

Latest commit


Git stats


Failed to load latest commit information.
Latest commit message
Commit time

Challenge Framework

Challenge framework’s goal is to source the crowd to participate in domain centric challenges, generating users through type in traffic, cross-network and paid advertising, using challenges to allow in-network and topic discussion and build outs of future brands and companies. This framework's signup and login is via Contrib platform.


  • To update the current challenge framework that could power many domains but would still report through api users, votes, discussion to VNOC data ware house.
  • Challenges should be transportable and should be shareable on major social sites
  • Challenge framework should have anti-spamming rules ** Email Verified and confirmed ** Should have a recaptcha on comments
  • Individual Challenges should have internal and social comments maybe using Disqus


  • Audience for surveys are varied and can range from 16 to 55.


  • Let users join a challenge from the get-go before registration.
  • Easy registration through social logins - Facebook and Twitter
  • Every challenge should have these features.
  • Challenge page should be portable. - Could be embedded individually
  • Individual challenge page should be seo friendly titles and urls
  • Should include facebook comments
  • Should include a list of users who have joined the challenge
  • Should have voting for current applications
  • Should display ranking of challenge popularity.
  • Should have easy stats.

Getting Started

These instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live domain.


  • Signup for a developer profile at Contrib -
  • Code should be hosted on Github under a repository we create or that you need to share with our account. -
  • Use any of our domains as your dev server. Browse for domains or brands here
  • All users should be registered to Contrib using our api


Framework should have a config file where you could talk to our api and get the domains info via our SDK which is housed in

  1. Prepare template files.
  • In our sample framework, our template consists of :
  • index.php — for the sample home page
  • about.php — for the sample about page
  • blog.php — for the sample blog page
  • header.php — header codes included in all pages
  • footer.php — footer codes included in all pages
  • /css — folder consists of css files
  • /images — folder consists of images
  1. Prepare config.php file.

In our sample framework, we added a folder named /includes consisting of :

  • curl_client.php — used in config.php for getting or sending files using URL syntax
  • config.php — needed for the integration of our api with the new framework

Open /includes/config.php .

  • On line 7, the $api_key value should be replaced with your Developer Key found on Account Settings. The $api_key is a required parameter for an API request. You can view all the api methods available found on the API Documentation tab.

  • On line 10 to 16, Curl_Client is used for our API call.

  • On line 19 to 22, an API call is made to get the domain details ($FrameworkTypeId and $DomainId). This domain details are needed as a required parameter for another API call.

  • On line 31 to 34, another API call is made to fetch the framework attributes. These framework attributes are used to set basic elements for your domains such as domain title, domain logo, domain background, domain twitter page, domain linkedin page, etc. * In our sample config.php, we only provided basic attributes as an example ($title, $description, and $logo). Every attribute has an $attribute_id. These ID is used to fetch the value of a specific attribute.

  • In our sample config.php, we fetched the $attribute_id on line 43.

  • On line 46 to 49, $attribute_id is used as a required parameter to an api call for fetching the attribute values.

  • Once the attribute values are fetched, these values are now ready to set the elements required for your domain.

  1. Include config.php file.

In our sample framework, we have included our config.php file on header.php . Now open header.php :

  • On line 1, config.php is included, which will enable us to fetch the attributes ($title, $description, and $logo) initialized on config.php.
  • On line 10, the $title attribute was used to set the domain title.
  • On line 18, the $logo attribute was used to set the domain logo.
  • On line 19, the $description attribute was used to set the domain description.
  1. Final step.
  • Save your framework in a zip file and go to Add Framework.
  • Create an api for your framework
  • api to create and add survey
  • api to create and add users
  • api to select survey
  • api to display suveys based on user id


Challenge framework for Contrib




No releases published


No packages published
You can’t perform that action at this time.