GSoC/GCI Archive
Google Summer of Code 2012

Pidgin, Finch, and libpurple

Web Page: http://developer.pidgin.im/wiki/FutureSOCProjects

Mailing List: http://pidgin.im/cgi-bin/mailman/listinfo/devel

Pidgin is an instant messaging program which lets you log in to accounts on multiple chat networks simultaneously. It runs on Windows, Linux, and other UNIX operating systems. Pidgin is compatible with the following chat networks out of the box: AIM, ICQ, Google Talk, Jabber/XMPP, MSN Messenger, Yahoo!, Bonjour, Gadu-Gadu, IRC, MXit, Novell GroupWise Messenger, Lotus Sametime, SILC, SIMPLE, MySpaceIM, and Zephyr. It is written in C and makes heavy use of GLib and GTK+.

Finch is a command line instant messaging program. It also lets you log in to accounts on multiple chat network simultaneously, and it is compatible with the same chat networks as Pidgin. It is written in C and makes heavy use of GLib and ncurses.

Pidgin and Finch utilize a programming library called libpurple in order to connect to the various IM networks. libpurple is also used by the OS X IM application Adium (although Adium is a separate project and not affiliated with Pidgin/Finch/libpurple). It is written in C and makes heavy use of GLib.

Projects

  • Android back-end Implement an android bridge between java and libpurple and get everything to build and link nicely and be easilly maintainable.
  • Gadu-Gadu protocol plugin improvements GSoC is a chance to make Pidgin the best Gadu-Gadu protocol client. There is a lot of work to do, in example: implementation of file transfer, contact list synchronization, SSL support for Windows. Also, there is a need for code refactoring.
  • Usage Statistic Collection Usage Statistics are helpful in determining the components that require most attention. The purpose of this project is to create automated usage statistic collection tool for pidgin which could upload useful stats like IM Services, Plugins used etc. to pidgin.im. Such information would be collated and put up on the pidgin.im server for developer and public view.