Skip to content

Instantly share code, notes, and snippets.

View jimlyas's full-sized avatar
:shipit:
Working from home

Jim jimlyas

:shipit:
Working from home
View GitHub Profile
@jimlyas
jimlyas / After.java
Last active October 19, 2023 07:02
Code for Medium Living Dangerously without Proguard
class b1 implements c {
private final String h = "someUserCredential";
public void a(String j) {
if (h==j) {
vh();
}else {
we();
}
}
@jimlyas
jimlyas / recommendation.md
Last active June 14, 2022 09:15
Figma Automation Tools

Goal

Otomatisasi proses pengerjaan desain berdasarkan referensi dari Figma menjadi layout dalam aplikasi yang bisa dijalankan dan digunakan

Reason

Mempercepat proses pengembangan aplikasi dengan menyediakan alat untuk menterjemahkan design dari figma menjadi halaman yang dapat digunakan dalam aplikasi end-user

Visualization

@jimlyas
jimlyas / ComposeExample.kt
Last active November 22, 2022 16:16
Compose Medium
data class Message(val sender : String, val content : String)
@Composable
fun MessageList() {
val viewModel : SampleViewModel = viewModel()
val messages = viewModel.messages.observeAsState()
LazyColumn { items(items = messages, key = { it }) { message -> MessageLayout(message) } }
}
@jimlyas
jimlyas / OkhttpBuilder.kt
Last active February 3, 2022 02:44
Gist for Security Android Medium
val okHttpClient = OkHttpClient.Builder()
.certificatePinner(CertificatePinner.Builder()
.add(
"www.example.com",
"sha256/ZC3lTYTDBJQVf1P2V7+fibTqbIsWNR/X7CWNVW+CEEA="
).build()
)
.build()
@jimlyas
jimlyas / build.gradle.kts
Last active January 4, 2022 13:36
Gist new medium
// In your root build.gradle.kts
buildscript {
repositories {
..
}
dependencies {
...
classpath("org.jetbrains.dokka:dokka-gradle-plugin:1.6.10")
classpath("org.jetbrains.dokka:dokka-base:1.6.10")
@jimlyas
jimlyas / Group.kt
Last active January 4, 2022 13:27
Gist for Dokka Medium
/**
* A group of *members*.
*
* This class has no useful logic; it's just a documentation example.
*
* @param T the type of a member in this group.
* @property name the name of this group.
* @constructor Creates an empty group.
*/
class Group<T>(val name: String) {
@jimlyas
jimlyas / BaseAnalytics.kt
Last active December 28, 2021 02:28
Gist for Analytics Medium
abstract class BaseAnalytics {
abstract fun logEvent(eventName: String, params: Bundle?)
abstract fun setUserProperty(name: String, value: String)
abstract fun setUserId(id: String)
abstract fun clearData()
@jimlyas
jimlyas / EnvironmentInterceptor.kt
Created December 24, 2021 07:52
Release version Interceptor`
class EnvironmentInterceptor : Interceptor {
override fun intercept(chain: Interceptor.Chain) = chain.proceed(chain.request())
fun setEnvironment(ctx: Context, action: () -> Unit) {
action.invoke()
}
}
@jimlyas
jimlyas / Environment.kt
Last active January 15, 2022 12:00
Gist for Medium
const val DEVELOPMENT = 1
const val STAGING = 2
const val PRODUCTION = 3
@IntDef(DEVELOPMENT, STAGING, PRODUCTION)
@Retention(AnnotationRetention.SOURCE)
annotation class Environment
@jimlyas
jimlyas / android.md
Last active July 6, 2022 08:11
Development Stack in Telkom DEV
Tools Name Version
Platform Android OS 4.4 KitKat Level 19 or higher
Programming Language Kotlin JDK 8.x
Architecture Model View ViewModel
Rest Response JSON
Local Database SQLite
View Injection ViewBinding
Obfuscation Proguard