"Btw, I consider duplication of simple text strings not such a bad issue as a duplication of serious code (or site structure in html) would be."
I can't think of any reason to duplicate code. First off, code belongs in JS files, not in HTML files. There is no reason that sets of HTML pages organized by language in separate directories can't share a common set of JS files.
And, using a SSG, the "duplication" of site structure is done mechanically, by the SSG. It takes a set of templates and cranks through them to produce the pages, merging some content from e.g. data files or a database to create pages - just like a PHP backend does. Rinse and repeat for each language. Only it does it once, instead of every time a user visits your site. If you need to update something, you update the templates and/or the JS code/CSS whatever. And then you run the SSG to "generate" the site again.
Unfortunately, most SSGs don't use PHP as a programming language, so there is a learning curve. They usually use Python, Ruby, or Javascript. And usually offer a wide variety of template languages (e.g. ERB, mustache, etc. etc. etc) to choose from.
I initially wrote "no SSG uses PHP..." above, but I just did a search and now there is one:
There is another approach that achieves a similar result. There are some desktop applications that will visit a site and "scrape" it, saving a local copy to files. I've used this myself when going on vacation where there is no WiFi. So, I downloaded a handy local copy of some travel guide sites.
SSGs are commonly used (or should be!) to create e.g. content for Phonegap/Cordova apps. I've done it myself to create both a website and PhoneGap app from the same content.
----
For your annotations, if you want them shared, you still need to provide some sort of web service. You might consider a solution I ran across right on this forum the other day. PouchDB is a synchronizing database written in javascript and meant to be run inside a browser. It synchronizes with CouchDB running on a server when it has connectivity. Users wouldn't have to be online when the annotate. It updates when it can. And it replicates a local copy of the database, so, again, when it has an opportunity, it will grab updates from the central DB.