A small tool that I have created to keep safe all those words/expressions that I come across when I'm learning a new language

cli, learning, language, vocabulary, words, wordbook, personal-utility, npm
npm install my-own-words@1.0.0



This is a small tool that I have created to keep safe all those words/expressions that I come across when I'm learning a new language. Hopefully, it will help you too.

Some things it allows you to do are:

  • Create as many lists as you want.
  • Save as many words or expressions as you want.
  • Delete lists, words or expressions and definitions.
  • And some other things and many others that are missing but I will try to add as soon as possible.

my-own-words also cares about you and:

  • It won't duplicate your lists.
  • Will not duplicate your words or expressions.
  • It won't duplicate your word definitions.


npm dance

npm install -g my-own-words

yarn vals

yarn global add my-own-words


Attention: The lists are created in a directory within your home directory with a .json format and for the moment all words and their definitions are sorted alphabetically by default.


my-own-words -l 'italian' -w 'Ciao' -d 'Hi'

As you can see, the add command receives three parameters:

  • -l or --list: name of the list where you want to add a new word. If the list does not exist, it is created.
  • -w or --word: word or expression you want to add.
  • -d or --definition: definition of the word or expression you want to add.

To add a new definition to a word simply add the word with the new definition again.


my-own-words list

If the list command does not receive any parameters, it prints a list of available lists in the console.

If you want to list the words or expressions in a list you must include the parameter -l or --list with the list name (Just as described above, in the add command).


my-own-words remove -l 'italian' -w 'Ciao' -d 'Hi'

Depending on the parameters the command receives, it will do the following:

  • If it receive only the name of a list ( with -l or --list), it will completely delete this list if it exists.
  • If it receive a word (should therefore also receive the name of a list), it will delete that word or expressions and its definitions.
  • If it receive a definition (need to receive the other two parameters listed above), it will remove that definition from the selected word or expression.


my-own-words new -l 'spanish'

Creates a new list with the specified name (with -l or --list).


my-own-words print -l 'italian'

Creates a Markdown file from the specified list (-l or --list) in the same directory as the other lists.

In the future I'll add more format options


Due to Yargs, all commands have --help or -h available.

Thanks for stopping by. If you have any questions, want to help or simply want to make a comment or report any error let me know.