Inspiration
Translating language through google translate is very reliable, but has its limitations. This involves pulling up your browser, opening a new tab, searching google for google translate, pasting what you want to input into google translate, and then finally waiting for input and copying it to your clipboard. What if you could do this in two clicks?
What it does
PolyGlide simplifies the translation process into two steps for each translation. With PolyGlide, you can simply pull up the translator input box with one command, and then directly put in your input. The translated text is then automatically copied to your clipboard and spoken to you (through TTS). Over time, this boost in productivity will amount to lots of time and effort saved.
How we built it
We used electron for the structure of the app, which let us use typical javascript, css, and html for the front end. This also gave us access to Node JS for the backend, where we imported deepl, google speech to text, and sonic node modules.
Challenges we ran into
This was our first time using Electron to build a desktop app and we had trouble dealing with permissions issues. Electron highly recommends that you divide responsibility between rendering and application logic for the sake of security, but that forced us to write very roundabout code with functionality spread out over many files that needed to communicate through a very restrictive api. We also had issues specific to our operating system, Mac. All our laptops are Macs, so it was our obvious target OS, but it was peculiar in that it did not give Electron access to even request compute audio, so we needed to set up a virtual input and try out other hacky solutions.
Accomplishments that we're proud of
We are proud of overcoming the challenges that we faced. Initially, we had trouble figuring out how to use the framework that we planned to use as the base of our project, since it had many niche qualities that we did not figure out until we ran into them during the developmental process. As an incremental development process, we celebrated each part of our development process, such as getting the robot character, translation, and other small incremental progress. Finally, we are proud of making it to the end of the hackathon. We put in a lot of work over the last two days and developed something complex and interesting while having fun along the way. Throughout this process, we learned a lot and will continue to apply what we learned in the future.
What we learned
This hackathon was an incredibly valuable experience for our team. We learned a lot about Electron and the Mac operating system. We faced challenges with NodeIntegration and the operating system, but we were able to work around it by thinking creatively. We also learned and adopted a GitHub workflow that made merge conflicts easier to resolve.
What's next for PolyGlide
Currently, we can largely expand our project to include many other functionalities, such as live conversation translation, mutli-tasking mode, smart object recognition, geolocation recommendations, and collaborative translation. These features will enhance the translation process and could provide some key features that increase productivity and functionality.
Log in or sign up for Devpost to join the conversation.