GSoC 2018
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