DEV Community

Tom F.
Tom F.

Posted on

I built this language learning app

Hi,
I built this web application in Vue.js that is meant to help you learn a language. The repo to check out the code : https://github.com/tofl/revocab.

The idea is simple, you just add a language and from there you can add as many words as you want with their translation in your language. You can create categories to manage your words. Then you can either display them in a table or use the "Practice" page to review them in a flash card style. All the data is stored in the local storage, so the user can export his vocabulary just to have a backup.

Why did I build this project?

I finished my studies over a year ago and took a gap year, haven't written any code since. I really need to get my career started now. This project was simply meant to brush up my skills.

It's quite demoralising because I really feel like I have to relearn everything. I think doing this helped me a lot but I need to keep practicing.

I would really love it if you could check out my source code and tell me what you think about it. What would you have done differently regarding :

  • My file structure

  • Code reuse -> would you break down the app into components the same way I did it or would you have created different components?

  • What do you think of my usage of Pinia? I used the options API for Pinia instead of setup. Was it a mistake ?

  • What do you think about the way I named my components? Especially those in the views folder...

  • The time needed to build the app. 2-3 days for me. How fast do you think you would've done it ?


Also feel free to tell me what you think of the website in general, its design and what you think I should build next!

Thanks !

Top comments (0)