In this post I would like to make a quick introduction to my latest project, practical part of my bachelor thesis (which is luckily over by now). Name of the project is Geoweb and its main part is dataengine for KDE Plasma. It comes with few applets, which makes it usefulness little better :). Project started as part of KDE Silk, which is project trying to integrate online web services into Plasma. Geoweb is kind of that application. It is using your position to find places near you. For now it shows food and drink places, but I am almost sure, that later it gets little more informative.
The thing I really like about this application is that you can set your location manually. It sounds weird, I know, why should I do that, there is a geolocation dataengine in KDE, so use it. Right, I am, it is the default option. But in case, that you don't have GPS in you notebook/pc, and your dynamic IP address is quite fallible, manual setting of your accurate location can be handy.
So location would be the input. Output is some data from Open Street Map. In the current state, they are food and drink places as I mentioned, and a little map applet showing your current location. Every food and drink place has some information added, like distance from your current location, opening hours and website if provided. Details you can see on screenshot or video below.
From technical point of view, application is dataengine, which is using plugins to fetch various data, implemented with help of Kross framework magic. Applets are just stand-alone, they do not have anything in common except of used dataengine. Location applet is little bit different. It has access to dataengine configuration, so user is able configure dataengine with applet configuration window. It is little bit loss, that there is no clean way to communicate the other way, from applet to dataengine (correct me if I am wrong), so I had to use some easy work-around to do that.
Rest I keep for the next time, so if you are interested, stay tuned. I just add, that the code is located on Gitorious as part of the KDE Silk, so you can try to build it and run, but build process is not very friendly yet, as cmake doesn't make almost any checks (PyQt4 and kross-python are necessary). The code should be readable, but it is my first KDE app, so not everything is written the KDE way. But I'll try to make it better.
See you soon.