Volkan Öztürk Individual Contribution Report 2 - bounswe/bounswe2023group1 GitHub Wiki

Volkan Öztürk

Important Issues

Links: #174
Explanation: Firstly, I research some APIs which could be useful for our disaster response platform. After careful evaluation, I decided to use Google Translation API for the practice-app since our disaster response platform aimed to have multilingual support and Google Translation API can be very useful. After deciding I created a project on Google Cloud platform and tested the API with the Google Console. After successfully testing Translation API on Cloud Console, I generated an API key to be used in the practice-app, and started to research how to integrate this API to the practice-app.

Links: #182
Explanation: After deciding which API to use and testing it on Cloud platform, I learned how to integrate this Google Translation API with the practice-app. I also learned SpringBoot since our project is based on it. Then I created and implemented necessary class files for "Controller", "Model" and "Service".

Links: #183
Explanation: After successfully finishing the backend part of the project, I started to work on the frontend part of the project. I also learned React since our frontend is based on it. Then I created and implemented my page for the translation feature of our practice-app. I also updated our home page's navigation bar accordingly. Finally my API was ready to be tested.

Links: #195
Explanation: I first learned how to set-up my local environment to test my API. Then, I used Docker and run the practice-app in my local environment. After successfully testing my API, its frontend and making some translations, my API was ready to be pushed to the dev branch of our project. Finally, I opened a pull request and Translation API successfully merged to the practice-app.

Utilized Third Party URI

Google Translation API, https://cloud.google.com/translate/docs

The Translation API is a service that accepts an HTTP request and returns JSON that has the translated text with the destination language. Translation API has a auto-detection feature, so it automatically recognizes the language of the source text and then translates into the desired destination language.

Users are able to send GET request to /translation endpoint, which uses Google Translation API at backend to translate the given source text.

API Endpoints

GET /translation with request parameters sourceText:string, destLang:string. This API endpoint allows user to translate given source text into destination language using Google Translation API.\

Sample Calls

Sample Request: 1

Request: GET http://localhost:80/api/translation?sourceText="Hello World"&destLang=fr

Response:
Header:
header1

Body:

{ "data": { "translations": [ { "translatedText": ""Bonjour le monde"", "detectedSourceLanguage": "en" } ] } }

Significant Work

I implemented backend and frontend for the Google Translation API.

Challenges

Since I hadn't got any previous experience with SpringBoot, React, and web programming; I needed to spent some time to learn all these. After learning, the implementation was straightforward but learning process was hard since I was introduced to so many concepts.

⚠️ **GitHub.com Fallback** ⚠️