/LanguageSelector

Android application that allows you to select the language of the displayed text.

Primary LanguageKotlinMIT LicenseMIT

Language Selector

Author: Nicola De Nicolais

πŸ“„ Description

Android application built with Kotlin and Jetpack Compose that allows you to select the language of the displayed text.

πŸ”¨ How to install and run the project

Clone this repository :
git clone https://github.com/ndenicolais/LanguageSelector.git

Import the project into Android Studio :

  1. File -> New -> Import Project
  2. Browse to <path_to_project>
  3. Click "OK"

Create a new virtual device or connect an Android device to your computer.
Click Run to start the project on the selected device.

πŸ› οΈ Built with

Kotlin
Jetpack Compose
ViewModel
LiveData
Preferences Datastore
Dagger Hilt

πŸ“š Package Structure

com.denicks21.languageselector  # ROOT PACKAGE
β”‚
β”œβ”€β”€ repository                  # REPOSITORY FOLDER
|   β”‚   β”œβ”€β”€ DataStoreRepository # DataStore repository.
β”‚
β”œβ”€β”€ ui.theme                    # THEME FOLDER
|   β”‚   β”œβ”€β”€ Color               # Color palette used by the app.
|   β”‚   β”œβ”€β”€ Shape               # Components shapes of Compose used by the app.
|   β”‚   β”œβ”€β”€ Theme               # Theme used by the app.
|   β”‚   β”œβ”€β”€ Type                # Typography styles for the fonts used by the app.
β”‚
β”œβ”€β”€ viewmodels                  # VIEWMODELS FOLDER
|   β”‚   β”œβ”€β”€LanguageViewModel    # Model that interact with repository class.
|
β”œβ”€β”€ MainActivity                # Main activity

πŸ“Œ Customization

In the app, you can add or modify languages, you simply need to modify the strings files present in the "strings" folder. These resources are defined within XML files in the "res/values/" folder with the .xml extension.
To support other languages, you can create copies of the strings.xml file within new "res/values-xx/" folders where "xx" represents the language code.

πŸ“Ž Screenshots