Hey! I ran into the same issues. In order to fix the invalid output you can specify to ChatGPT that you want to recieve the response as a JSON formatted text.
I use DeepL for real-time translation in my side project. The reason I’m not utilizing the DeepL API on my backend and instead opting for the OpenAI API is twofold:
1. OpenAI is more cost-effective compared to DeepL API.
2. I was already using ChatGPT to translate my JSON files, so there’s no change in translation quality for me.
The primary issue I wanted to resolve is easily keeping all my destination language JSON files in sync.
Cool, nice product. Interesting to see that you've managed to get translations working on top of chatGPT, even for languages like Arabic! I decided not to support target language edits, because I felt it would make it much more difficult to keep languages in sync, when the source string is not always leading. How do you deal with this properly? Would love to have an automatic workflow that updates the json source file, as i18n tags are being added/removed from frontend files. For versioning; maybe just take advantage of the project's (git) versioning?
Thank you for your feedback! Quicklang is designed as a tool to synchronize and manage your JSON translation files centrally. For me, it’s good to have quick access for localizing my side projects efficiently and maintaining a changelog, among other features.
While there are several enterprise options available such as DeepL or Lokalise, they don’t quite fit my specific use case. ;)