Coder Social home page Coder Social logo

makhanovable / kiwix-android Goto Github PK

View Code? Open in Web Editor NEW

This project forked from kiwix/kiwix-android

0.0 1.0 0.0 317.43 MB

Kiwix for Android

Home Page: https://android.kiwix.org

License: GNU General Public License v3.0

JavaScript 0.10% Python 1.38% Shell 0.30% HTML 0.81% Java 16.04% Kotlin 81.36%

kiwix-android's Introduction

Get it on Google Play Get it on F-Droid

Kiwix Android

Kiwix is an offline reader for Web content. One of its main purpose 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. This is the version for Android.

Kiwix Android is written in Kotlin (with a few old pieces in Java).

Build Status codecov CodeFactor License: GPL v3 Public Chat Slack

Build Instructions

Production releases of the app are built on travis and released automatically

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. Note here that instead of opening the project, you have to import it. 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.

Kiwix-Android is a multi-module project, in 99% of scenarios you will want to build the app module in the debug configuration. If you are interested in our custom apps they have their own repo kiwix-android-custom that goes into further detail

Libraries Used

  • Dagger 2 - A fast dependency injector for Android and Java
  • 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
  • RxJava - Reactive Extensions for the JVM โ€“ a library for composing asynchronous and event-based programs using observable sequences for the Java VM.
  • ObjectBox - Reactive NoSQL Databse
  • MockK - Kotlin mocking library that allows mocking of final classes by default.
  • JUnit5 - The next generation of JUnit
  • AssertJ - Fluent assertions for test code
  • Fetch - A customizable file download manager library for Android

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

Available communication channels:

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

License

GPLv3 or later, see COPYING for more details.

kiwix-android's People

Contributors

0xsiddharthks avatar 4shutosh avatar abdulwd avatar aditya-sood avatar akkywadhwa avatar bbt-seanmacgillicuddy avatar borisfba avatar cip avatar dr0pdb avatar eladkishon avatar frans-lukas avatar gouri-panda avatar iadeelzafar avatar jhbiggs avatar julianharty avatar kelson42 avatar macgills avatar mhutti1 avatar mohamed-sameh-khalil avatar prayutsu avatar rashiq avatar rgaudin avatar ritvikmahajan17 avatar rutvik-panchal avatar s-ayush2903 avatar soloturn avatar sonusourav avatar translatewiki avatar yash1ts avatar yashk2000 avatar

Watchers

 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.