These forums have been archived and are now read-only.

The new forums are live and can be found at https://forums.eveonline.com/

EVE Technology Lab

 
  • Topic is locked indefinitely.
 

www.decloaked.com

Author
Khorkrak
KarmaFleet
Goonswarm Federation
#1 - 2012-08-04 23:30:42 UTC  |  Edited by: Khorkrak
I've created a new killboard system. Here it is: decloaked It's open source, GPLv3 licensed. Here's the project site and the code repository: pykb.

It is in alpha still.

A step by step installation guide is available here: Production Install Guide To install a development version, you can skip the parts involving installing / configuring Nginx, Varnish, uWSGI, fail2ban and even go with just the default settings for PostgreSQL or MySQL. You just run the app like so: python liquidkb.py (set app.debug = True inside liquidkb.py for interpreter access in stack trace dumps woohoo! - obviously off for production use)

Why did I do it? I was interested in providing a killboard for my corp last winter that looked a bit different from those that everyone uses currently. I was dismayed however upon finding that all that existed was code that was both written in PHP and tightly coupled with MySQL. So I decided to provide an alternative. Something written in Python befitting EVE as it too is written in the best high level procedural language ever, plus this gave me an incentive to learn a bit more about some technologies that I don't use regularly at work.

The database layer is decoupled from the source code with the exception of a stored function that calculates aggregates asynchronously. There's no hard coded SQL. DDL for MySQL and PostgreSQL is provided. Other database engines can be used but obviously you'll have to adjust the provided SQL files accordingly. The killboard code is in the web directory while the stand alone back end code is under the pykb directory. The web app is in effect a demonstration of using the pykb platform to power an app - in this case a killboard. It took about 4 months to code in my spare time.

The site will remain up indefinitely. There will never be any banner ads or other commercial noise. I aim to keep it fast as data is added naturally without requiring a ridiculously powerful server. We'll see how it goes.

I'm interested in hearing how it performs, whether there are any performance or concurrency issues or other defects that I'm unaware of yet. Also, please check out the accuracy of the data - look for missing kills, attackers, items or values that seem way off etc. I've done quite a bit of testing but there's only so much you can do alone.

There's no API yet and the fittings based on killmails added prior to Inferno 1.2 do not include ammo / drones / scripts, however those added since do display this info. In both cases, they're still in the legacy textual style instead of the JSON format discussed on this forum earlier.

I hope you like the site despite whatever rough edges are still present.

It's running on Ubuntu 10.04 LTS, Python 2.7.3 and PostgreSQL 9.1 using Cloudflare, Varnish, Nginx, uWSGI and SQL Alchemy. The web app was built using the Flask micro-framework and the Mako templating engine along with jQuery, jQueryUI, Google Charts and the Blueprint CSS framework.

Developer of http://www.decloaked.com and http://sourceforge.net/projects/pykb/