An easy-to-use Android app that translates English text into Amharic instantly. Perfect for students, travelers, and anyone who needs quick translation on the go.
# Amharic-English Offline Translator
An Android-first open-source project for:
- offline English to Amharic translation
- Amharic typing support
- live input suggestions / prediction
bb
This repository now has:
- a browser-based offline prototype at the root
- a Kotlin Android app under `android/`
## Runnable Prototype
A first offline prototype now lives in the root of this repo as a static app:
- `index.html`
- `styles.css`
- `app.js`
- `manifest.json`
- `sw.js`
It includes:
- English to Amharic phrase translation
- transliteration fallback for unknown text
- a live Amharic typing preview
- example chips and suggestion chips
- offline caching through a service worker
### Run it locally
Use any static server. For example:
```powershell
python -m http.server 8000
```
Then open `
localhost` in your browser.
If you open `index.html` directly, the UI still works, but the service worker will not register.
## Kotlin Android App
The native Kotlin version lives in `android/`.
It includes:
- Jetpack Compose UI
- the same local phrasebook translation logic
- a live Amharic typing preview
- example chips and suggestion chips
- offline-first design
Open the `android/` folder in Android Studio to work on the native app.
## Current Direction
The project is being researched as two connected parts:
1. **Translation**
- English text in
- Amharic text out
- offline-capable
2. **Input**
- Amharic keyboard support
- transliteration from English typing to Amharic characters
- live suggestions / prediction
## Why Keyman Is In Scope
Keyman is a strong candidate for the input side because its Android engine supports:
- in-app keyboards
- system-wide keyboards
- custom keyboard layouts
- lexical models for prediction and autocorrect
Useful references:
- Keyman Engine for Android
- Developing lexical models
## Reference Projects
These repositories are practical study cases for the input layer:
- android_amharic_custom_keyboard
- Amharic-Keyboard
### …