Teams of participants compete to develop apps on the SciVerse platform using SciVerse APIs from Elseiver and are free to use other third party data APIs and services.
Developers own the full IP rights to their applications. Developers who want to make the source code of their application available to the public, area advised to use the OpenSource MIT License.
Each participant must bring their own laptop. There will be power outlets available and wireless internet connection.
What kind of applications and programming languages?
You can build your application in any programming language you prefer, but your application must be a gadget on the SciVerse platform, which is based on the OpenSocial specification. A gadget can be an HTML type gadget using a client-side scripting language like JavaScript or a URL type gadget in the form of a server-side include (SSI) language like PHP or another form of URI service that returns client-side code that can be rendered by browsers. The SciVerse platform currently does not support mobile apps.
- Check out some of the winning apps from the Singapore Hackathon in our blog here.
Can I use existing Libraries or prepare my own code?
Note that using third party libraries or tools, or using your own pre-build code is not only allowed but it’s recommended! Being prepared and using existing libraries and services is all in the game. Check the rules for full information.
Hackathon Tips
- Come prepared!
- Elsevier will host a workshop about OpenSocial gadgets prior to the Hackathon to help you be familiar with the platform and the scientific data. Check workshop times here
- You can ask feedback about your App ideas from one of the SciVerse product managers prior to the hackathon
- Make a plan
- Read up on Murphy’s Law
- Make a plan B
- Remember: presentation is part of the judging process!
SciVerse API Developer Info
Applications must run on the SciVerse platform and use SciVerse APIs in order to be eligible to win any of the prizes. SciVerse is an implementation of OpenSocial and SciVerse gadgets or apps are essentially iframes or client side apps like HTML type apps using browser scripting languages like JavaScript to access the page content as well as content via SciVerse APIs. Apps can mashup this content with content from the world wide web. A URL type application or server side application can mashup server side functionality and generate the client-side code to interact with the SciVerse APIs.
SciVerse apps integrate in the existing SciVerse web services at ‘integration points’ in the page. This allows the app to have widget mode and full-screen mode depending on the type and functionality of the application.
There are two essential SciVerse APIs:
- SciVerse Framework API – an API to retrieve meta data or directly access content seen on the page without making a backend call. More information at http://developer.sciverse.com/framework
- SciVerse Content API – an API to search all scientific content in Hub, all full-text articles in ScienceDirect, or all abstracts, authors and affiliations in Scopus, or to retrieve individual articles, abstracts, authors or affiliations with full details. You need to include a secure AuthToken in the SciVerse Content API call.
How do I get access to the development environment (SciVerse platform/API) prior to the competition?
Please register for the Hackathon and we’ll send you details to obtain full access to the SciVerse platform.
Everyone can register as a developer for the SciVerse platform here, however this will give you default access, which extends based on the access level available via the network of your school. Schools register for access as an organisation. For full access you must be a registered competitor.
Does the application have to be completely on the SciVerse platform? Could part of it be elsewhere (e.g., as a browser plugin)?
The SciVerse gadget allows two ways to include external functionality or data. As an OpenSocial gadget, you can create two types of gadgets: URL type or an HTML type.
- When using the URL type gadget you may simply refer to a Server Side Include (SSI) app residing on one of your servers or in the cloud, e.g. a PHP file on the Amazong EC2 server, which then generates a client side app of both HTML and script.
- When using the HTML type gadget you can include server side functionality by using regular script functionality with the gadgets.sciverse.makeRequest(url, callback, params); method. For more information see the developer docs at or the code examples on github.
We are allowed to use other data sources, open APIs, and even our own database, are we allowed to publish our own libraries/APIs as open source and use it during the competition?
Very much so. We encourage both the publication of source code and code libraries, as well as the use of such.
During the competition, we are supposed to use the SciVerse platform to upload and test our application, is that right?
Yes. You can use other methods to test your application, but this is the recommended way to test your gadget.
Getting Started
To get started you must register first for the Hackathon and we’ll send you your api access details to give you access to all the content and SciVerse services.
Example applications can be found at Github. A great way to start is to use the example content api call application as the basis for your own application.
More information about SciVerse gadgets and the platform can be found here.
