Skip to content

About

Generate text and audio translations completely offline on Android. Supported languages: English, Spanish, Italian, German, French, Russian, and Portuguese.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Repository files navigation

Portus Translator

An offline Android application for text and speech translation.

Portus Translator executes translation on-device, requiring no network connection or remote server access after the initial setup.

Capabilities & Features

1. Input & Translation

  • Input Methods: Supports both text input and voice dictation (Speech-to-Text).
  • On-Device Execution: Translates to text locally across 7 supported languages. Text and voice inputs do not leave the device.
  • Architecture Support: Packages native binaries for ARM 32-bit (armeabi-v7a) and ARM 64-bit (arm64-v8a) to support a range of devices.

2. Optional Text-to-Speech (TTS)

  • Speech Synthesis: Generates spoken audio for translated results using local voice models.
  • Toggle State: Speech generation can be toggled on or off from the main screen.

3. Settings & Visuals

  • Themes: Supports Light and Dark color themes.
  • Font Size: Adjusts translation result text size to Small, Medium, Large, or Larger.

4. Local History

  • Database Logging: Stores previous translation records in a local Room database.
  • Recall: Tapping an entry in the history modal loads the text, translation, and any associated audio file back into the active interface.
  • Management: Supports deleting individual records or clearing the entire database.

Screenshots & Capabilities

A first-run wizard sets up the application for offline use:

Onboarding Flow

  • Initial Setup: Select the application's interface language and download the offline translation and speech-to-text packages.
  • Text-to-Speech Voices: Download the local voice files to enable voice synthesis playback.

Features & Customization

  • Translation Results: Translate text or voice inputs and play localized audio.
  • Customization Drawer: Reconfigure default languages, switch themes (Dark/Light), adjust font sizes, and change the interface language.
  • History Logs: Recall, replay, or delete stored translations from the local database.
  • Aligned Dropdowns: Select source and target languages using selectors localized to your active interface language.

How to Build the Project

Prerequisites

  • Java Development Kit (JDK) 17
  • Android SDK (Android API Level 31+)

Compilation

Build the debug APK using the Gradle wrapper:

# Windows
cmd /c gradlew.bat assembleDebug

# macOS / Linux
./gradlew assembleDebug

The compiled output is written to: app/build/outputs/apk/debug/app-debug.apk

(Note: The build configuration falls back to the default Android debug keystore if no custom keystore is present.)

Running Unit Tests

Execute the local Robolectric/JUnit unit test suite:

./gradlew test

About

Generate text and audio translations completely offline on Android. Supported languages: English, Spanish, Italian, German, French, Russian, and Portuguese.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages