GSoC 2020 Blog Post (#2)

Published: 06/22/2020

Hello all!

I am 3 weeks into the official coding period and they have been great. A little background, I am working on the Frontend aspect of my project where I am using the ReactJS framework to build a UI for the EOS Feature Request web portal.

Last time I talked about working on a language toggling feature, which was successfully built. I used the useTranslation functionality provided by the 'react-i18next' package. This gave me a function that can be called to trigger the change in language. I created a dropdown menu with the available languages to do it. It required me to create separate files for the individual languages (basically all the text to be displayed in all the available languages). When a user triggers a change in language the application will change the file it is using to display the content, thereby achieving a change in the display language. Once this feature was completed and its PR got merged, I started working on creating a Navigation bar which will be used to access different pages/options in the web portal. I created the Navigation bar, applied the relevant styles and added the different functionalities that were decided. Also, since the web portal is going to be public (i.e. everyone can view it), I developed the navigation bar in such a manner that Non-Authenticated users can only see a subset of the options and Authenticated users have access to everything. Simultaneously, I was also working on creating the New Request page which will be shown only to the authenticated users where they can request a new feature. This involved creating a form with all the relevant fields that the user will have to fill up in order to make a new request. I am still working on this last feature.

I faced some problems initially while creating the navigation bar. The issue was regarding its position and responsiveness. Took some time and help but I was able to resolve all the issues and the corresponding PR got merged. I am stuck on a particular feature in the New Request page. A user will be allowed to attach media (images/videos) as a part of their feature request, and I am thinking what would be the best way to achieve that. Basically, working on answering these questions: What formats should be supported? How these files will be stored on the server? What kind of file choosing mechanism I should provide to the user? etc.

I'll wrap up with the New Request page functionality as soon as possible and then work on improving its UI based on inputs from the mentors and my project partner. Once, the entire New Request functionality is completed I will probably work on making sure that everything built is working properly and is inline with the expectations. This is to make sure that I come out of the first evaluation with a positive feedback.

Thanks for reading