Hacker News new | ask | show | jobs
by FallenMax 2109 days ago
Thanks! Yes, Automation is what actually I thought of the 'a' in a18n :) But it's named as `a18n` for some complicated reasons:

1. It aligns well with translation function name and CLI command

I want the translation function to be something:

- looks like `i18n` (so user can tell its purpose at a glance)

- but NOT `i18n` (so it's unique enough that we can safely assume its role when we parse/manipulate user's code)

- also NOT too short like '_', or 'i' (for the same reason above)

By these rules, I think `${someChar}18n` is a great fit as the function name, and to simplify things, I just use it as the CLI name and the package name.

2. (the real reason) It's really hard to name a JavaScript i18n lib today

If you search for "i18n" in npm, more that 7000 libs pops up. Here is a list of lib names I searched and found taken:

- simple-i18n

- i18n-simple

- s18n

- v18n

- next-i18n

- i18n-next

- react-i18n

- i18n-react

- ...(maybe 20 more?)

So when I finally found that `a18n` is not taken? -- I know instantly it's a digital treasure that I have to grab :)