App Directory SDK
We strongly encourage developers to incorporate Hootsuite's look and feel into their Apps to the highest acceptable extent in order to maximize user experience. Apps that fit into Hootsuite's themes are most likely to leave a good impression with the user, which in turn contributes towards your App's success.
To make it easier for you to create a hoot-looking App, we have compiled a list of things that can be considered a QA guideline. We recommend to take note of the list below.
- Streams can be as narrow as 297px, including space taken by a scroll bar. On a Mac, for example, the scrollbar narrows that number down to 282px
- Keep vertical space taken by a single message low - a stream is supposed to show multiple messages. Implement content expansion/toggling where adequate.
- Message icons and headings should always open the same info popup with story/user/etc. details
- The time stamps below headings should always link out to the source article/discussion/etc.
- Clicking on a username or icon should always open a user info popup with user details
- Try to achieve as much functionality as possible through API functions (e.g. share to social networks via hsp.composeMessage)
- Implement 'infinite scrolling' while keeping a 'Show More' link at the bottom as a fall-back
- Suppress reloading of messages through refresh handlers (via hsp.bind) while the user interacts with the stream (e.g. posting messages, expanded details, possibly scroll position not near the top)
Hootsuite goes through these tests for every submitted App. We suggest you work through this list yourself, which will speed up the review of your App submission.
Use the Hootsuite SDK Single Sign On authentication when connecting the app to Hootsuite. User authentication with your app can be done using the authentication flows of your choice (OAuth recommended). Authentication should be persistent from one session to another and will not expire until the user selects to “Disconnect”
Multiple Account Support
User can logout and login as another user and can add multiple streams and authenticate each with a different account.
Retain User Settings
The App will retain any user settings saved in the stream from one session to another (ie. user sets a search filter to a stream, the app will retain that filter next time the user accesses Hootsuite).
Suppress refresh during user interaction
Suppress reloading of messages through refresh handlers (via hsp.bind) while the user interacts with the stream (e.g. posting messages, expanded details, possibly scroll position not near the top).
Fully HTTPS Compliant
The Hootsuite dashboard is a forced SSL connection. The app will be fully HTTPS compliant and will not generate any security breaking errors or warnings. Hootsuite can provide an image proxy service on request.
Provide the next set of messages/updates when user scrolls down.
UI and Design Assets
Please use the CSS and HTML assets from the sample code as your starting point when building an app. The menu bar will contain at a minimum two icons: Settings (shows logged in account and option to logout) and the ‘More’ dropdown (with Help, Feedback and Developer links, URLs for first two provided by Hootsuite).
Fires when app column is refreshed by user in-stream, or as part of a dashboard refresh.
Use a vector based image with transparent backgrounds for the 16x16, 30x30, and 256x256 icons. Hosted from a HTTPS address.
Latest versions of Google Chrome, Firefox, Safari, IE 9+