TitleLink and Shortlink Documentation

The Joomla! TitleLink and Shortlink extension documentation can be found at http://gesellix.github.io/titlelink/ and http://gesellix.github.io/shortlink/. Cleaning my homepage also meant cleaning up content, so I prefer not to have several copies of the same document in different places. Old links probably still refer to this homepage, so please update your links to use the official location. Thanks! Due to changed focus away from Joomla, but towards Node.js, AngularJS and other tools of that environment, i’ve been quite inactive on the Joomla extensions.

Node.js with AngularJS implementation of a KeePass2 browser

A Node.js with AngularJS based implementation of a KeePass2 browser is available at GitHub. What? You should probably know about KeePass as a tool to manage your passwords or other secrets in an encrypted file. Since the default tool to edit and view your passwords is based on .NET you might not be able to use your keys everytime you need them due to missing libraries or a wrong platform (Mono needs to be installed on Linux systems).

Vagrant Forwarding Ports Exposed by Docker

Playing around with docker running inside a Vagrant VM and trying to use some services being exposed via HTTP ports makes you ask how to automatically forward the exposed docker ports through Vagrant to the host system. phew I found an already merged pull request, which looked like what I wanted. So, after a peek into the docker Vagrant file I tried to expose a CouchDB port to the host system like this:

Initialization of an AngularJS Application with Asynchronous Data

A recently published article shows our solution to initialize an AngularJS application using promises. You might have similar problems when your application initialization depends on http responses or other ansynchronous tasks. An online demo can be found at jsfiddle.net and the code is available at GitHub.

Using Coveralls in your Gradle build

Recently I stumbled over a tool Coveralls. It helps monitoring your test coverage. You can integrate it e.g. with your Travis-CI builds by using a plugin for your favorite build tool. Needless to say that they also provide Travis-CI similar badge to show off your current test coverage near your current build status in your README file at GitHub. Their docs sadly aren’t very focused on Java tools like Maven or Gradle, so you have to find a working plugin on your own (or code a new one by using the Coveralls API).

gesellix.net is now 'the' blog

Those who know my old web site might wonder what gesellix.net is about. Well, gesellix.de wasn’t very frequently updated with new content or posts and I guess it was in parts due to the Joomla! CMS being too much distraction when writing just a little blog post. Joomla is fine as CMS, I still like it for the massive amount of extensions and for the great community behind it. Yet, Ghost makes creating content much easier for me.

Gradle Debian plugin

A new Gradle plugin for creating Debian compatible packages (.deb) is available at Bintray. It allows you to package any files through a convenient Gradle build script configuration into a Debian package compatible file. You may also include your MavenPublications (.jar or .war) by only referring to their publication names. To use the plugin you need some knowledge about the package structure and configuration scripts. The Debian New Maintainers' Guide, chapters 4 and 5, will help a lot.

Node.js Monitor

Playing around with node.js made me build a monitoring tool to perform continuous health checks. I have an application running with a status servlet available under a URL like http://example.com/healthcheck. For a healthy system, I get a JSON as response including an attribute result.summary. In case that summary isn’t OK, I want the monitor to send me an email with details. Nothing spectacular, so you’ll find the little piece (of currently untested) code at GitHub.


This blog is about development topics, with a focus on software development in Java and JavaScript. Recently used frameworks and tools are the omnipresent ones like Spring, Elasticsearch, Node.js and AngularJS, but I also like to play with other well known tools like Wicket and CouchDB. You may find me on the internet on several platforms like GitHub using my alias “gesellix”. As an employee at Hypoport AG in Berlin I sometimes blog at their IT blog.