Piorun Client

Jump to navigation Jump to search



Piorun (=lightning in Polish) is going to be a client for semi-advanced users, somewhat resembling XChat or TKabber, written using C#/Mono/Gnome# and integrated with Gnome desktop. Main goal is to provide comfortable interface for dealing with many mult-user chats and large rosters, with good keyboard navigation. I also want to keep the code clean and extensible.

Implementation details

  • Piorun uses own XMPP library based on TcpClient, using packet-level synchronization with GLib's main loop. Control flow can be safely interrupted in any place to update GUI, which makes application more responsive
  • XMPP stanzas are wrapped into c# classes
  • Contacts (described by Jabber ID's) are first-class objects, they alone send and receive stanzas and do many other things

Summer of Code tasks

done are marked by [x], partially done by [?]

  • [x] TLS/SASL (the most labour-consuming task)
  • [x] privacy lists
  • [x] multi-user chat (basic)
  • [ ] service discovery
  • [x] vCard
  • [x] avatars (within vcard)
  • [ ] IM-HTML
  • [ ] file transfer
  • [x] aspell support
  • [ ] history browsing
  • [x] all internal graphics in SVG format
  • [ ] integration with Evolution address book
  • [ ] history search through Beagle
  • [ ] "now playing" feature with Muine
  • [x] log window
  • [x] logging to file
  • [x] xml console
  • [ ] better keyboard navigation

About me


My name is Dominik Zablotny. I come from Poland, where I am living in small town Brodnica and studying Computer Science at Nicolaus Copernicus University in Torun. My programming experience includes: Borland's Pascal/Delphi/C++, GNU C and Free Pascal, but my favourite tool is C#/Mono.

Contact information:

  • Jabber Id: doza@chrome.pl
  • Mail: doza <!> sztorm.net