https://github.com/elimu-ai/appstore
📲 Android application which downloads, installs and updates APK files stored on the elimu.ai platform.
https://github.com/elimu-ai/appstore
android apk infrastructural
Last synced: about 1 month ago
JSON representation
📲 Android application which downloads, installs and updates APK files stored on the elimu.ai platform.
- Host: GitHub
- URL: https://github.com/elimu-ai/appstore
- Owner: elimu-ai
- License: mit
- Created: 2016-07-07T08:37:35.000Z (almost 9 years ago)
- Default Branch: main
- Last Pushed: 2024-08-08T05:43:54.000Z (10 months ago)
- Last Synced: 2024-08-08T07:09:00.119Z (10 months ago)
- Topics: android, apk, infrastructural
- Language: Java
- Homepage:
- Size: 1.34 MB
- Stars: 21
- Watchers: 16
- Forks: 7
- Open Issues: 9
-
Metadata Files:
- Readme: README.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Codeowners: CODEOWNERS
Awesome Lists containing this project
README
[](https://jitpack.io/#ai.elimu/appstore)
# elimu.ai Appstore 📲
Android application which downloads and installs educational apps stored on the [elimu.ai](http://elimu.ai) platform.
## Download Application ⬇️
Download APK (`ai.elimu.appstore-.apk`) at https://github.com/elimu-ai/appstore/releases
### Install the APK
When opening the APK, you might see a prompt saying "Install unknown apps". If so, select "Allow from this source", and return to the installation.
> [!NOTE]
> For step-by-step instructions on how to download and install the software, see [Wiki: elimu.ai Software Installation](https://github.com/elimu-ai/wiki/blob/main/SOFTWARE_INSTALLATION.md).### Choose Content Language
The first time you launch the Appstore application, it will ask you to select the language that you want to use:

For information on how to add support for a new language, see https://github.com/elimu-ai/wiki/blob/main/LOCALIZATION.md.
## What Devices are Being Used?
We are building our software for Android devices with **6"-10" displays** installed with Android **version 8.0** (API 26) or higher.
## Development 👩🏽💻
### Software Architecture
[
![]()
](https://github.com/elimu-ai/wiki/blob/main/SOFTWARE_ARCHITECTURE.md)### REST API
> [!NOTE]
> Note that [`BaseApplication#getRestUrl()`](https://github.com/elimu-ai/appstore/blob/main/app/src/main/java/ai/elimu/appstore/BaseApplication.java#L48) depends on the content language you choose when first launching the app:
* `debug`: http://``.elimu.ai/rest/
* `release`: http://``.elimu.ai/rest/A list of the currently supported languages is available at https://github.com/elimu-ai/model/blob/main/src/main/java/ai/elimu/model/v2/enums/Language.java
### Utils Library 📦
See https://jitpack.io/#ai.elimu/appstore/ for the latest version.
#### Utils Usage Sample
> [!NOTE]
> To use the `utils` library in another Android app, add the dependency in `app/build.gradle`:```java
implementation 'ai.elimu:appstore:@aar'
```
#### How to Test `-SNAPSHOT` Versions of the Utils Library1. Publish the library to your local Maven repository:
```sh
./gradlew clean assemble utils:publishToMavenLocal
```
2. In the app that will be testing the `-SNAPSHOT` version of the library, add `mavenLocal()`:
```diff
allprojects {
repositories {
mavenCentral()
maven {
url "https://jitpack.io"
}
+ mavenLocal()
}
}
```
3. Then change to your `-SNAPSHOT` version of the library:
```diff
[versions]
-elimuAppstore = "2.5.0"
+elimuAppstore = "2.5.1-SNAPSHOT"
```### Gradle Upgrade
```
./gradlew wrapper --gradle-version x.x.x
```### Release 📦
To perform a release, follow these steps:
1. Merge your PR into the `main` branch
1. Wait for the ["Gradle Release"](https://github.com/elimu-ai/appstore/actions/workflows/gradle-release.yml) workflow to complete
1. Ensure that the new release version appears at https://jitpack.io/#ai.elimu/appstore with "Status: ok"> [!IMPORTANT]
> After you publish a new release, remember to also bump the version in all Android app repos that depend on the `utils` library:
> * https://github.com/elimu-ai/launcher/blob/main/gradle/libs.versions.toml
> * https://github.com/elimu-ai/content-provider/blob/main/gradle/libs.versions.toml---
![]()
elimu.ai - Free open-source learning software for out-of-school children 🚀✨
Website 🌐
•
Wiki 📃
•
Projects 👩🏽💻
•
Milestones 🎯
•
Community 👋🏽
•
Support 💜