Skip to content
View dwikiriyadi's full-sized avatar
🏠
Working from home
🏠
Working from home

Organizations

@srctool

Block or report dwikiriyadi

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Content in all repositories owned by your account will be closed.
Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
dwikiriyadi/README.md

Dwiki banner

Hi, I’m Dwiki (Wiki) 👋

I’m a mobile engineer from Indonesia. I write Kotlin and Dart, and I keep running into the same problem: every new app starts by rebuilding things the last app already had. So I’ve started building those things once, properly, for both Kotlin Multiplatform and Flutter.

Curious by nature, practical by choice.


🛠️ What I’m building

These are part of SRC Tool, a small family of open-source libraries. Each one is designed once and implemented natively for both Kotlin Multiplatform and Flutter.

Camouflage: one set of components, any look

A component library where what a component is stays fixed, and how it looks comes from a swappable Skin and Theme. A new app gets a new Theme, not a new set of PrimaryButtons.

Docs · Kotlin · Dart

Sinew: the layers every app needs, already wired

A plug-and-play app architecture that connects data → domain → presentation. It covers response mapping, paging, error types, an HTTP client with token refresh and secure storage, so you stop rewriting them for every project. Sinew ships the mechanism; the app ships the configuration.

Docs · Kotlin · Dart


🧭 How I like to work

  • Simple over clever, but not shallow. I try to keep both simplicity and depth.
  • Developer experience matters as much as user experience.
  • Design first, then code. Both libraries above started as design notes before any code was written.

Mostly in: Kotlin · Kotlin Multiplatform · Jetpack Compose · Dart · Flutter


✍️ Elsewhere

I write about developer experience, KMP and testing on Medium and Dev.to, and I hang out on Discord.

LinkedIn · Website · Threads

Away from the keyboard: story-driven games, strategy, and books on psychology, history and manga.

Pinned Loading

  1. ImprovedSharedPreferences ImprovedSharedPreferences Public

    Kotlin

  2. aes-generator aes-generator Public

    Generate an AES encrypted text and decrypt it with PBKDF2withHmacSHA1 secret key

    Kotlin