cyberme0w's Cat logo 🐾MEOW🐾

OpenBike

For the uninitiated, nextbike is a bike-sharing company. Clients pay a subscription fee and are allowed to rent bikes from multiple stations, with some cities also offering ‘floating’ bikes, which can be rented and returned anywhere within given areas.

I myself have been a mostly happy customer of nextbike for some time now. In my case, not having to deal with maintenance, as well as not using up precious space in my small apartment are great benefits. It also allows me to go somewhere by foot and then come back by bike or vice-versa, which is rather convenient.

I say mostly happy, because while I am happy with the actual service, their mobile (Android) app is another story. Briefly pointing out what has been bothering me in no particular order:

So - what now?

After a bit of research, I found an alternative client called NextCompanion by cybre-finn. They took some time to reverse engineer nextbike’s API and published their results (thanks!).

NextCompanion calls itself a “minimalistic client for NextBike” and well… it is. With it, you can type out a bike’s number to rent it, and get an overview of your rented bikes - that’s all. While I’m sure people on the far left end of the minimalism/bloat spectrum will be overjoyed using it, I would prefer to have one or two more features.

Another thing I stumbled upon during my research, was the actual publicly available API documentation… so with that, and inspired by the simplicity of NextCompanion, I decided I’d write my own app with the following features:

The result is exactly what I want from a mobile application - simple and functional:

Preview of the main window of my Android app 'OpenBike'Preview of the QR code scanner window of my Android app 'OpenBike'Preview of the rental details window of my Android app 'OpenBike'

Clicking on the (+) icon opens up the QR code scanner, allowing you to quickly scan a bike. Current rentals are displayed on the main screen, and you can add certain stations to your ‘bookmarks’, by clicking on a rental and clicking ‘bookmark starting station’.

The repository is now public and the first version should pop up in F-Droid shortly. The APK is also available to download from the repository’s Releases page (although the recommended way is via F-Droid].