Team blog: Developers

Preview a language by adding ?uselang=<language code> to the URL

You can now preview any user interface/content language by adding

?uselang=<language code>

to the end of the URL. This is useful for sending users links in a given language, and for testing translations. It only applies to the page you’re loading (but can be used to compose a review in the given language).

Example:
https://lib.reviews/?uselang=es - frontpage in Spanish

The list of language codes can be found here; some aren’t activated yet since they’re incomplete.


Benvenuto: Italian is live

Thanks to translatewiki.net community members Anto, Beta16 and Fitoschido, lib.reviews is now also available in Italian. This brings the total number of supported languages to 13. Is your language still missing? Please see this earlier blog post for information how to get involved. Thanks to all translators who continually keep these translations updated, as well!


Opening up: community-controlled growth with invite links

lib.reviews is still in early development (we started work on the project in the summer), but we have enough basic functionality now to open up a little bit more. More than 100 reviews have been written on the platform to date, we have support for multiple languages, and we can organize reviews in teams (a bit like subreddits).

To get a few more folks involved, any member of the community can now help it grow. Anytime you write a review, you earn an invite link that you can share with someone you trust. They can use it to sign up on the site, join your favorite teams, and write reviews. Just let them know that things are still rough around the edges and basic features like search are still to come, so they aren’t too disappointed. :) Development help is, of course, always welcome - this is a true open source project.

We track who came through what link, so if we see anything nefarious going on, we can respond fairly quickly. But mostly, we look forward to meeting new folks interested in joining our quest to review the world :)


Frequently Asked Questions about lib.reviews

As the project grows, it makes sense to address common questions in one place. Please see our FAQ. If you’d like to submit a translation, you can edit the relevant language version on GitHub; find us on #lib.reviews if you require assistance initializing a language. If you have feedback on the FAQ, please file an issue or let us know on chat as well.


Welcome to lib.reviews in Traditional Chinese!

In addition to Simplified Chinese, the script used in mainland China, lib.reviews is now also available in Traditional Chinese, the script used in Taiwan, Hong Kong, and Macau. Thanks to Kly for this translation!

Is your language still missing? See our previous blog post for information how to get started on a translation.


Find us on Riot

Thanks to WinterFox, you can now also chat with us using Riot, a free and open chat interface built on top of the open Matrix standard. Our Riot room is bridged to our IRC channel. If you don’t find IRC user-friendly, this is a good alternative. To join the chatroom, visit this link:

https://riot.im/app/#/room/#lib.reviews:matrix.org

Or if you want to play with the latest features:

https://riot.im/develop/#/room/#lib.reviews:matrix.org


Five new languages: Bengali, Spanish, Macedonian, Swedish, Simplified Chinese

We’ve added five new languages to the lib.reviews platform, thanks to the following translators:

Many thanks to all translators! Is your language still missing? Please help bring lib.reviews into more languages. Supporting all the world’s languages is one of the key ways open projects can set themselves apart. Follow the instructions in our previous blog post to get started on a new translation. If you’re not already a translatewiki.net contributor, getting started can be a bit bumpy, so let us know if you run into problems (find us on #lib.reviews on freenode.net; the translatewiki.net support channel is #mediawiki-i18n).


Wikidata property is live

We can now connect lib.reviews review subject pages with items on Wikidata. This will make it easier, in future, for any application built on Wikidata to retrieve reviews associated with a Wikidata item.

Here’s an example Wikidata page for David Mitchell’s novel “The Bone Clocks”:
https://www.wikidata.org/wiki/Q17512402

Note at the bottom of the page, there’s a section “Identifiers” which links to the lib.reviews page:
https://lib.reviews/thing/5d959136-380e-48ad-93e2-2db6bb081faa

This page has all reviews of “The Bone Clocks” (currently just one, feel free to add yours if you’ve read the novel ;-).

Thanks to User:Pizzaiolo for proposing the Wikidata property, which was enabled today. To use it on any Wikidata item, just add the following property to the item:
https://www.wikidata.org/wiki/Property:P3308

This is just a small first step towards integrating with Wikidata, but it is an important one.


New screencast up

A lot has happened since our August 2016 screencast: Atom feeds, teams, file uploads, new language versions, and more. So I just recorded a new screencast (YouTube version) that walks you through some of the recent changes. Share & enjoy ;-)

I don’t work off a script for these, but I prepare a few things that I want to show and pick the best of multiple takes. That means quality isn’t perfect, but it keeps the effort at 1-2 hours for a 10 minute screencast, so we can do an updated one every couple of months or so.


Install lib.reviews using Vagrant

If you want to join lib.reviews development, you now have the option of using Vagrant to get a local development environment up and running. This is thanks to a pull request by Ori Livneh, who also pioneered the use of Vagrant at the Wikimedia Foundation.

Essentially, if you have a working installation of Vagrant and Virtualbox, getting a local install up and running is as simple as running the command vagrant up in a directory that contains a complete checkout of our GitHub repository. Give it a few minutes, and you’ll be able to access a fresh lib.reviews install locally at localhost:8080.

This is not necessarily much easier than following the installation instructions, especially if you’re familiar with Node.js and unfamiliar with Vagrant. The key benefit of using an environment like Vagrant is that the difficulty of getting a predictable local development environment up and running does not increase as the number of dependencies goes up. For example, if we end up adding an external message queue, or a search engine like ElasticSearch, Vagrant (if we update our configuration to reflect those additions) will install and configure those dependencies for you.

And although the environment is virtualized, the codebase is accessible from your host system, so you can use your favorite code editor without any performance penalty.

Thanks again to Ori for working on this change to make development more accessible!


 Older blog posts