Retroshare for Android – Update 2

It’s been a month since the last post, so it’s time to summarize this period. In the previous post I showed the beginnings of my adventure with implementing the designed look of the application. That version looked as I intended, but it lacked interactivity, data management and connection to the main retroshare-service application.

The current version of the application has added animations for transitions between screens or tabs. Example animations (due to limited upload size, video is badly compressed 🙁 ):

Also, screens have been added to help various side activities such as creating a new identity or to make it easier to create an account, if it doesn’t already exist.:

And the next thing I spent some time on was the correct handling of queries for retroshare-service and data processing. Thanks to that, in the application we can already perform basic activities such as logging in or managing our identities.

In addition to the activities presented here, I devoted some time to just building a retroshare-service application, which exceeded my expectations about the ease of this task.

Next steps

In the application there are still a few minor modifications to be done. One of the key changes is to ensure proper storage and generation of the authorization token. Nevertheless, the main task of the upcoming period will be to add new functionalities and minor fixes to the Retroshare itself.

Due to the fact that visually the application is already very close to the final product, I would be happy to hear some criticism and hints what needs to be changed.

Konrad Dębiec

Retroshare for Android – Update 1

It’s been a while since my last post. For a reminder, my job is to create a functional Retroshare application for Android. As in May, also in this period of time I focused on the visual aspect of the application, but this time from the technical side.

It started with choosing the technology in which the application was to be written. Selected framework should provide an easy way to combine the frontend with libretroshare, have an active development community and be cross-platform so that in the future it can be used to easily transfer application to iOS as well. One the basis of these criteria, Flutter was chosen.

So far main screens has been implemented and can be seen below:

There is still a lot of work to be done on the visual side and I will be working on it in the near future. In addition, I will explore the addition of asynchronous messaging and storage of message history to libretroshare.

Retroshare for Android


Retroshare, a decentralized social networking platform, is available only from desktops, so its use is limited to a narrow audience. In the past, an attempt was made to create a mobile application, but the project was abandoned. The aim of this GSoC project is to create a Retroshare mobile client from scratch with an emphasis on the chat feature. In order to make it a fully functional communicator, the Retroshare library will be extended as well.

About Me

My name is Konrad, I am first year undergraduate student in Computer Science at AGH University of Science and Technology in Cracow, Poland. In the past I have been experimenting with creating modern desktop client for Retroshare. This is my first time as a GSoC participant.

Project Overview

This project have 4 major milestones:

  1. Logo redesing
  2. UI/UX design of mobile app
  3. Implementation of frontend design
  4. Redesign and implementation of chat backend in libretroshare

The planned result of my work should be a user-friendly communicator with the following functions:

a)     Core functionality:
o   Creating new account
o   Importing existing accounts from other devices
o   Creating new identity
o   Sending plain text in group chat and chat between GXS identities
o   Adding/Removing GXS identities to/from your list of friends  
b)     Feature enhancement:
o   Adding profile picture
o   Changing status (Active, Inactive)
o   Switching between identities
o   Sending in chat: emojis,  files and pictures

To achieve this, as part of my work will be the enhancement of the libretroshare chat to include asynchronous message sending and storage of message history.

Community Bonding Period

This period of time I used to explore the idea of a new logo and UI application. The proposal for a new logo retains the current spirit, but with a clear emphasis on modernity.

The purpose of the application is simple, to give the possibility of secure non-centralized communication to people, therefore the proposed design is minimalistic and focuses only on the basic functionality. The proposed design can be viewed at the following address:

Best of luck to fellow GSoC students,
Konrad Dębiec