This is a short note on creating a tool called Anki Vocab Generator. It's a tool for language learners that does two things:
The tool removes the manual steps of looking for new words and adding them to Anki.
I created this tool because I was curious to try, and because I actually had a problem. I was too lazy to make my own Spanish vocabulary lists and then manually add them to Anki.
When I understood the two problems I had, I realized that there must be an easy way to create a solution. Easy enough to build it myself without searching for such a solution online.
Obviously, ChatGPT solves the problem of creating vocabulary lists. The problem of moving those lists to Anki required an API that would allow creating decks and cards. I found Anki-Connect - an add-on that lets you do a bunch of operations programmatically.
Now my task was trivial: marry ChatGPT and Anki-Connect so that the former generates the lists based on the user's input, and the latter moves those lists to Anki.
I would've not been able to create this tool without ChatGPT, because I don't have enough technical knowledge. To use ChatGPT effectively, I knew that I needed to explain my solution idea properly in order to get clear implementation instructions. My approach was the following:
This is my initial prompt -> https://chat.openai.com/share/fb55a2e2-a243-4c60-9966-c28693c29aef. The structure I followed was a) explain in a human language what needs to happen, and b) explain how it should work under the hood in as much detail as I could. The idea with point b is to give the AI a more specific direction and keep it closer to the technologies I have some knowledge about.
Once I knew the steps I needed to take, it took me exactly 58 minutes to go from nothing to a first working prototype. The rest of the effort (about 3-4 hours) was tweaking and iterating on the tool playing with styles, cleaning up the flashcard values, and adding the loading state.
The good thing about a tool that does only two things is that testing before the release takes about five minutes. After this was done, I uploaded the project to Github and that was it!