Giter Site home page Giter Site logo

gptshubham595 / 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 161.06 MB

Kiwix for Android

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

License: GNU General Public License v3.0

JavaScript 0.12% Python 1.62% Shell 0.28% HTML 0.96% Java 50.94% IDL 0.02% Kotlin 46.07%

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 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. 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

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. 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 to replace SquiDb
  • 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

mhutti1 avatar macgills avatar kelson42 avatar iadeelzafar avatar rashiq avatar aditya-sood avatar eladkishon avatar 0xsiddharthks avatar rgaudin avatar abdulwd avatar cip avatar bbt-seanmacgillicuddy avatar jhbiggs avatar julianharty avatar borisfba avatar soloturn avatar brijeshshah13 avatar sonusourav avatar dr0pdb avatar mgautierfr avatar souramoo avatar rohanbh avatar isnit0 avatar rupertthurner avatar mvdan avatar ritik2017 avatar apolikamixitos avatar albert221 avatar ashutoshbsathe avatar arpank10 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.