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

Highlights

  • Pro

Block or report Alims-Repo

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
Alims-Repo/README.md
Abdul Alim Typing SVG



Portfolio LinkedIn Email Maven Central


🚀 Featured Projects


🎨 FlowTab-CMP

Animated bottom navigation for Compose Multiplatform

FlowTab light theme
Light
FlowTab dark theme
Dark

Maven Central Stars Platforms

FlowTab(
    items     = tabs,
    selected  = current,
    onSelect  = { current = it },
    indicator = Indicator.Ripple,
    style     = FlowTabStyle.Glass   // Haze-backed blur, optional
)

Most navigation bars marry you to a navigation library. This one doesn't — pure state in, callbacks out. It drops into Navigation3, Decompose, Voyager, PreCompose, Appyx or plain Compose state with no adapters.

🎭
Glassmorphism
Real blur via Haze,
not a fake overlay
🔍
Expandable search
Grows out of the bar,
callback-driven

3 indicators
Ripple · Dot · Line
+ count & dot badges
📱
One source set
Android + all three
iOS targets


🧭 NavEase

Annotation-driven navigation for Jetpack Compose

Status Compose KSP

Annotate your screens. NavEase generates the rest.

Compose navigation is boilerplate: route constants, manual argument parsing, type-unsafe string keys, and one giant NavHost every screen has to be registered in by hand. NavEase deletes that layer — routes, arguments and the graph itself are generated at compile time, so a broken route is a build error instead of a crash in production.

  ❌  Plain Compose Navigation ✅  With NavEase
Routes Hand-written string constants, duplicated across the codebase Generated from the annotation on the screen itself
Arguments Manual parsing and unchecked casts out of the bundle Typed accessors, generated alongside the route
Graph One giant NavHost, every screen registered by hand Assembled at compile time — nothing to register
A typo costs A crash, in production, on a screen you didn't test A build error, on your machine, in seconds

Paired with FlowTab-CMP it's the other half of one problem — FlowTab handles what navigation looks like, NavEase handles how it's wired.



🔐 SecureVault-KMP  ·  📿 Prayer-Times-KMM

🔐 SecureVault-KMP

val vault = SecureVault("com.acme.auth")
vault.put("session", token)
val s: String? = vault.get("session")

One coroutine-first API, two real platform backends — EncryptedSharedPreferences over the Android Keystore, Keychain Services on iOS. No hand-rolled cryptography. Optional Compose Multiplatform integration ships separately.

Maven Central

📿 Prayer-Times-KMM

val times = PrayerTimes(
    coordinates = Coordinates(23.81, 90.41),
    method = CalculationMethod.KARACHI
)

Adhan-inspired astronomical math ported to common Kotlin — 11+ calculation methods, madhab selection for Asr, and correct high-latitude handling, the part most implementations get wrong.

Maven Central



🛠️ Tech Stack

Languages and tools
Tooling
UIJetpack Compose · Compose Multiplatform · Material 3 · SwiftUI
Cross-platformKotlin Multiplatform · KMM · Ktor
ArchitectureClean Architecture · MVVM · MVI · Repository pattern
Data & DIRoom · SQLDelight · Koin · DataStore · Firebase
ReleaseGradle Kotlin DSL · Maven Central publishing · GitHub Actions


📦 Also Built

🚦 Smart Traffic System

Four-target KMP — Android, iOS, Desktop, Ktor server. Real-time monitoring, adaptive signals, emergency priority.

📞 CallerID

Caller identification and spam blocking for Android — real-time lookup, blocklists, contact management.

💳 Bkash SDK

Drop-in Android SDK for bKash, Bangladesh's largest mobile payment gateway.

📄 Pdf-Generator

Kotlin DSL for multi-page A4 PDFs on Android — tables, text, auto-pagination.

🛡️ Crash-Guard

Android crash handling with customizable crash screens and persistent logging.

TaskFlow

Offline-first KMP task manager — Compose on Android, SwiftUI on iOS, Room + Koin.

🔍 Experiments & older work
  • RefactoringPlan — structured modernisation plan for a seven-year-old legacy Android codebase: architecture, dependency debt, performance
  • Scrapper — video URL extraction from TikTok, Facebook, Instagram and X
  • SmolChat-Android (fork) — running GGUF-format SLMs/LLMs fully on-device; my on-device AI sandbox


📊 Activity

GitHub stats   Top languages
Contribution streak



Contribution snake

🤝 Let's build something

Open to freelance work, full-time roles, and open-source collaboration.


Portfolio LinkedIn Email

⭐ A star on anything useful goes a long way.

Pinned Loading

  1. Prayer-Times-KMM Prayer-Times-KMM Public

    A lightweight and accurate Kotlin Multiplatform library for calculating Islamic prayer times, inspired by the Adhan algorithm and optimized for Android, iOS, JVM, and beyond.

    Kotlin 5

  2. Bkash-Android-SDK Bkash-Android-SDK Public

    Bkash Payment Getway Integration (Android SDK)

    Java 4

  3. CallerID CallerID Public

    A mobile caller identification application that helps identify unknown callers, block spam calls, and manage contacts. Built with modern tools to provide real-time caller information and enhance ca…

    Kotlin 5 3