Skip to content

Instantly share code, notes, and snippets.

View sarimmehdi's full-sized avatar

Muhammad Sarim Mehdi sarimmehdi

View GitHub Profile
@sarimmehdi
sarimmehdi / RunTranslation.kt
Created September 3, 2025 23:56
Run Translation
./gradlew generateProjectTranslations
@sarimmehdi
sarimmehdi / AddPlugin.kts
Created September 3, 2025 23:55
add the plugin
plugins {
id("io.github.sarimmehdi.translate-genie") version "1.0.0" apply false
}
subprojects {
pluginManager.apply("com.sarim.translate-genie")
configure<TranslateGenieExtension> {
baseApiUrl = "https://libretranslate.com/translate"
keyForTextsToTranslate = "q"
@sarimmehdi
sarimmehdi / Jenkins.yml
Created September 3, 2025 23:53
Jenkins
pipeline {
agent any
stages {
stage('Generate Translations') {
steps {
sh './gradlew generateProjectTranslations'
}
}
stage('Commit Results') {
steps {
@sarimmehdi
sarimmehdi / cicd.yml
Created September 3, 2025 23:52
ci cd
name: Generate Translations
on:
push:
paths:
- '**/src/main/res/values/strings.xml'
jobs:
translate:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
@sarimmehdi
sarimmehdi / ErrorHandling.kt
Created September 3, 2025 23:51
Error Handling
<!-- Generated output for failed translation -->
<string name="complex_string">Original English text<!-- TODO: Translation failed --></string>
@sarimmehdi
sarimmehdi / BatchProcess.kt
Created September 3, 2025 23:51
Batch Processing Architecture
Module 1: 47 strings ]
Module 2: 23 strings ] → Batch 1 (50 strings) → API Call 1
Module 3: 31 strings ]
Module 4: 19 strings ] → Batch 2 (50 strings) → API Call 2
Module 5: 15 strings → Batch 3 (15 strings) → API Call 3
@sarimmehdi
sarimmehdi / NonTrans.kt
Created September 3, 2025 23:50
Non-Translatable Resources
<string name="api_key" translatable="false">sk_live_abc123</string>
@sarimmehdi
sarimmehdi / Plurals.kt
Created September 3, 2025 23:49
Plurals with Quantity Rules
<plurals name="notification_count">
<item quantity="zero">No notifications</item>
<item quantity="one">1 notification</item>
<item quantity="other">%d notifications</item>
</plurals>
@sarimmehdi
sarimmehdi / StringArrays.kt
Created September 3, 2025 23:49
String Arrays
<string-array name="navigation_items">
<item>Home</item>
<item>Profile</item>
<item>Settings</item>
</string-array>
@sarimmehdi
sarimmehdi / StringResources.kt
Created September 3, 2025 23:48
String Resources
<string name="welcome_message">Welcome to our app!</string>