Giter Club home page Giter Club logo

kiwix-android's Introduction

Kiwix-Android

Kiwix is an offline reader for Web content. One of its main purposes is to make Wikipedia available offline. This is done by reading the content of a file in the ZIM format, a highly compressed open format with additional meta-data.

Build Status IRC Web

Build Instructions

Production releases of the app should be built with our companion build repository kiwix-build.

To build this repository alone for development purposes you can simply import the project into Android Studio and the hard work will be done for you. If you prefer to build without Android Studio you must first set up the Android SDK and then run the command: ./gradlew build from the root directory of the project.

We utilize different build variants (flavours) to build various different versions of our app. Ensure your build variant is kiwixDebug to build the standard app.

Libraries Used

  • Dagger 2 - A fast dependency injector for Android and Java
  • SquiDb - SquiDB is a SQLite database library for Android and iOS
  • Retrofit - Retrofit turns your REST API into a Java interface
  • OkHttp - An HTTP+SPDY client for Android and Java applications
  • Butterknife - View "injection" library for Android
  • Mockito - Most popular Mocking framework for unit tests written in Java
  • Guava - Collections, caching, primitives support, concurrency libraries, common annotations, string processing, I/O, and so forth.
  • Apache - The Apache Commons IO library contains utility classes, stream implementations, file filters, file comparators, endian transformation classes, and much more.
  • RxJava - Reactive Extensions for the JVM โ€“ a library for composing asynchronous and event-based programs using observable sequences for the Java VM.

Contributing

Before contributing be sure to check out the CONTRIBUTION guidelines.

We currently have a series of automated Unit and Integration tests. These can be run locally and are also run when submitting a pull request.

Code Style

For contributions please read the CODESTYLE carefully. Pull requests that do not match the style will be rejected.

Commit Style

For writing commit messages please read the COMMITSTYLE carefully. Kindly adhere to the guidelines. Pull requests not matching the style will be rejected.

Communication

Please use IRC to discuss questions regarding the project: #kiwix on irc.freenode.net

You can use IRC web interface on http://chat.kiwix.org/.

Our other sources of communications include

For more information, please refer to http://wiki.kiwix.org/wiki/Communication.

LEGAL & DISCLAIMER

Please refer to COPYING.

kiwix-android's People

Contributors

mhutti1 avatar kelson42 avatar rashiq avatar eladkishon avatar 0xsiddharthks avatar rgaudin avatar abdulwd avatar cip avatar borisfba avatar julianharty avatar brijeshshah13 avatar dr0pdb avatar mgautierfr avatar souramoo avatar isnit0 avatar rupertthurner avatar rohanbh avatar mvdan avatar apolikamixitos avatar albert221 avatar ashutoshbsathe avatar arpank10 avatar rajavamsi11 avatar qinyin avatar vansh1sh avatar renggli avatar automata-development avatar abishek10 avatar harshvardhan-takawale avatar lacop avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.