GSoC 2018

From Kiwix
Revision as of 16:38, 16 January 2018 by Mhutti1 (talk | contribs) (Added initial ideas)
Jump to navigation Jump to search

Ideas List

Improve the automated testing setup of the Kiwix Android application.

Summary:

We have a basic automated test setup for our Android app.

Improvements to be made:

  • Abstract large parts of the app to use dagger dependency injection e.g shared preferences
  • Use this to create more meaningful tests
  • Improve stability of existing tests

Skills needed

  • Android dev experience (Java)
  • Experience with CI/Automated testing.

Improve android onboarding experience.

Summary:

The onboarding experience for Kiwix Android should be improved to allow users to

More easily find content they are looking for..

Improvements to be made:

  • Create a new initial landing page with suggested ZIM files.
  • Improve download management UI and UX to flow more naturally
  • Create a custom bug report setup to allow users to make their issues known more easily.

Skills needed

  • Android dev experience (Java)
  • Some UI design
  • HTML/CSS/JavaScript to make a simple web panel for issues?

Implement full multizim support

Summary:

Multizim search is an experimental app option. You would be implementing it fully

With cross ZIM file linking, auto download of extra content, more taylored search.

Improvements to be made:

  • Improve search functionality to include an image and a snippet.
  • Implement a download page to download “predetermined content” that would work specifically with custom apps.
  • Work with team members to formalise spec for cross ZIM Urls.
  • Backup download for Custom apps.

Skills needed

  • Android dev experience (Java)
  • Basic knowledge of the JNI.
  • Some UI design

Improve Custom App implementations

Summary:

Our custom apps are a great way for users to download a subset of the content that

They want without extra baggage.

Improvements to be made:

  • Validate ZIM files from hash.
  • Implement backup download solution using existing code.
  • Write a simple intuitive UI for this download solution.
  • Research solutions for embedded ZIM files and implement the most feasible solution.
  • Look into the best way to relocate/ share OBB files if possible.

Skills needed:

  • Android dev experience (Java)
  • Basic knowledge of the JNI.
  • Some UI design