Inspiration
Travelling and Speaking Go Hand in Hand. When you visit a new country it is very hard to communicate in another language and you often endup using very impractical tools like google translate. However, we realized that there are actually very few expressions and phrases that you need in order to have a basic conversation with a local. For this reason we decided to build this tool which saves you the trouble of uncomfortable conversations and allows you get straight to to point by just memorizing a bunch of expressions
What it does
It allows you to enter the destination for your journey and it will return all of the fundamental expressions and phrases in that language that you need to know when visiting that country. It offers it with a nice and easy to use interface to quickly get familiar with basic words.
How we built it
We built it using VueJs for the frontend application, for the backend we went with expressjs and for the API's we've used google clod, for deploy this full application we're using a Linux VM and nginx.
Challenges we ran into
- Setting up the cloud console translator api billing.
- Integrating a search box autocomplete into vue3
- Fetching list of countries
- Finding the most suitable sentences used by travellers
- Optimising the frontend api calls.
Accomplishments that we're proud of
- Reduced the frontend API Calls by 50%, by making the backend do the heavy lifting.
- Setting up reverse proxy using NGINX and mapping it to a domain.
- Making CI/CD Pipeling for backend aplication
What we learned
- We learned how to use Google's translate api, moreover how to integrate it with Vue and ExpressJS.
- We learned how to use Github Actions to set up a CI/CD pipeline to make the deployment easy for everyone.
- Finally, How to deploy a full stack app using a linux VM,
What's next for traval
We want to significantly improve it's performance, and provide a spell button that will spell a translated sentence for you.
We also want to improve the UX by categorising the questions to make it easily accessible.
Log in or sign up for Devpost to join the conversation.