Gsoc 2021 : Improving the suitcase application

About Me

Hi everyone, myself Subham Raj. I am from India. I am pursuing B.Tech in C.S.E from IIIT agartala. I am a prefinal year student. This is my first project with GSoC.

About My Project

This project aims to improve the odk-x suitcase application. This includes adding option to select table id from drop down, option for multiple table download at once, saving user credentials, and improve error handling in the application. This Project also includes some other works to improve the user experience.

My Timezone

Indian Standard Time (UTC +5:30)

Weekly updates

I have coordinated with my mentors for this project. As mentioned in the timeline, during this week 17 may - 23 may I am going through the existing documentation of suitcase and noting down the shortcomings in it. Also the sync client library which is used by suitcase for http requests has to be modified in this project for error handling. For this I am going through the error responses thrown by sync client.

I will post the progress at the end of every week in this thread.

Getting in touch

GitHub: (Shubhamr837 (Subham raj) · GitHub)

Looking forward to work with the community!! :smiley:


Week 1 - 2: 17 may - 30 may
Hi everyone, during my first week I went through the codebase of suitcase application and the sync client library. I was already familiar with it as I had worked on it during application phase of Google summer of code. I also checked different error messages returned by sync endpoint server. All the error messages where clear from the status code itself.
I also coordinated with my mentors li lin and vyankatesh sir. We have decided to hold meetings every Monday starting from the coding phase.

During the second week I went through the documentation of suitcase and noted down what changes would be needed.
I ran a simple GUI test case using AssertJ to get familiar with it. I also did some research on how to improve the UI. Using proper padding and background colors would be really helpful for UI. Apart from this buttons and error dialog would require some customization.


@shubham_raj this is awesome progress! Also please make sure to coordinate with @Esther-Phebe on docs front :slight_smile:



I’m Esther-Phebe and I’m working on the documentation as an Outreachy Intern. I’d like us to work together, so that I can work on whatever change will have to be made to the docs based on the work you’re doing and your observations.

Let me know how we can work together. Thanks!


Sorry for the late reply @Esther-Phebe @elmps2018.
I am really happy to work together on the docs part.
I will coordinate with you when I start working on the documentation part. Most probably from 5th july.

Week 3 - 31 may -7 june
I went through the codebase of suitcase and did some experiments with the UI. Currently most of the panels are made using Gridlayout with specific number of columns and rows. To have more customizable UI I will use FlowLayout for some new components as it was easy to set size of each component.
I went through existing test cases in the application. Unit test for upload download and reset are there but for “refresh tables list” unit test is not there as this feature is added recently.
I will discuss this with mentors and work accordingly.

1 Like