GNOME Integration with Online Services

The intent of this page is aggregate information about all interesting GNOME-based technologies that allow developers to integrate their apps with online social services. For now, we're not filtering out any modules from this page as we're still mapping existing modules.

General (proposed) guidelines

  • Aim to integrate GNOME-based apps with online social services;
  • Should be based on GNOME platform;
  • Libraries should provide introspection data to make it easy to bind them;
  • They should have a least a released tarball;
  • API-stability is not required (at least for now);
  • Ideally, they should be hosted in GNOME infra (not a requirement though);

Modules

Libraries

libempathy-gtk

Library providing a set of powerful GTK+ widgets that can be embedded into any GNOME application. More info

libgdata

Library for accessing online service APIs using the GData protocol — most notably, Google's services. It provides APIs to access the common Google services, and has full asynchronous support. More info

librest

Library for accessing web services that claim to be RESTful. More info

twitter-glib

Library around the (almost-) RESTful web API provided by Twitter. More info

json-glib

Library providing serialization and deserialization support for the JavaScript Object Notation (JSON) format. More info

libchamplain

Library providing Clutter actor and GTK+ widgets to display maps from sources such as OpenStreetMap, OpenAerialMap and Maps for free. More info

couchdb-glib

Library providing GLib-based API to CouchDB, a database (of JSON documents) that can be replicated (and 2-way synchronized) to multiple hosts. More info

midgard2

Library providing GObject-oriented Content Repository services and storage abstraction. Additional midgard2 components provide CouchDB-compatible replication and Tomboy web synchronization. More info

rtm-glib

Library providing access to Remember The Milk API. More info

osm-gps-map

Library providing simple Gtk+ widgets to display maps from online mapping providers like OpenStreetMap and others. Can also draw on-screen display and GPS markers on the map. More info

Desktop Services

Gwibber 2.0

Gwibber is an open source microblogging framework and desktop client for GNOME developed with Python and GTK+. The Gwibber backend is a stand-alone daemon that manages updates and retrieves stream data from social networks. The Gwibber backend can be accessed through D-Bus and currently uses GConf to store account configuration info. Gwibber will be included by default in Ubuntu 9.10, codenamed Karmic Koala. Gwibber currently has support for the following services: Twitter, Identi.ca/Laconi.ca, FriendFeed, Facebook, Jaiku, Digg, Flickr, BrightKite, Qaiku. More info Roadmap

mojito

Social data server which will fetch data from the "social web", such as your friend's blog posts and photos, upcoming events, recently played tracks, etc. More info

microfeed

D-Bus service for interfacing with various microblogging solutions like Twitter, Qaiku, Jaiku and Facebook. More info

Social Desktop

Social Desktop is a cross Desktop initiative to integrate Social Features into Desktop Applications. Gwibber has already support for part of the features build in. Open Collaboration Services API Social Desktop

Tasks/Questions

  • Create a moduleset to easily build all modules;
  • Add gobject introspection support wherever it's missing;
  • List apps using those modules;
  • List links to docs and code examples;
  • Maybe a general goal would be to develop some online integration to GnomeShell?

  • What cool online services is covered yet?
  • Most of these modules use LibSoup; there is probably some stuff duplicated between them that could be pushed down the stack.

Attic/OnlineIntegration (last edited 2013-12-03 16:02:14 by WilliamJonMcCann)