==== 2 ====
This flexibility and portability the project owes to its internal structure. Instead of a single, complex process, OpenZIM is designed to run in between existing applications. The ZimReader acts as a web-server allowing the user to browse the wiki's content with any browser available. The ZimReader as well as the ZimWriter, used to generate the ZIM files, are written in C++ and thus platform independent.
==== 3 ====