explaingit

kevinborjadev/siku

Analysis updated 2026-05-18

8KotlinAudience · generalComplexity · 3/5LicenseSetup · moderate

TLDR

An Android music player that syncs your library from OneDrive or local folders, with a 5 or 10 band equalizer, synced lyrics, and a Material 3 Expressive interface.

Mindmap

mindmap
  root((siku))
    What it does
      OneDrive music sync
      Local folder playback
      Equalizer
      Synced lyrics
    Tech stack
      Kotlin
      Jetpack Compose
      ExoPlayer
    Use cases
      Cloud music sync
      Merged local library
      Lyrics and widgets
    Audience
      Android users
      Music listeners

Code map

Detail Auto

An interactive map of this repo's files and how they connect — its source is parsed live in your browser. Click Visualize to build it.

filefunction / class

What do people build with it?

USE CASE 1

Sync and listen to your personal OneDrive music library on Android with automatic delta updates.

USE CASE 2

Play local music files alongside cloud synced tracks with duplicate detection between the two.

USE CASE 3

Get synced lyrics, an equalizer, and home screen widgets for a music library you already own.

What is it built with?

KotlinJetpack ComposeExoPlayerRoomHilt

How does it compare?

kevinborjadev/sikuandroid-hacker/wechatchatroomhelperotonielpv/sonylivemonitor
Stars888
LanguageKotlinKotlinKotlin
Last pushed2019-12-09
MaintenanceDormant
Setup difficultymoderatehardhard
Complexity3/54/54/5
Audiencegeneraldeveloperdeveloper

Figures from each repo's GitHub metadata at analysis time.

How do you get it running?

Difficulty · moderate Time to first run · 5min

Sideloading the APK works immediately, building from source needs your own Azure app registration for OneDrive login.

You can use and modify it freely, but if you distribute a modified version you must release your changes under the same GPL license.

In plain English

Siku is a music player app for Android, built with Material 3 Expressive, Google's most recent visual style with things like shape morphing and spring based animation. The developer describes it as vibe coded, meaning it was built mostly by working with an AI coding assistant rather than writing everything from scratch by hand. The app started as a simple way to sync music from the developer's OneDrive account and grew into a full local music player. It can pull your library from OneDrive using Microsoft's official Graph API, with a delta sync that only checks what changed after the first scan, and it can also read music from local folders on your phone. Both sources can be merged together, with an attempt to detect duplicate songs between them. You can either stream your music directly or download your whole library first, and the app checks whether you are on WiFi or mobile data so you can decide how you want to listen. On the audio side it plays FLAC, MP3, M4A, OGG, WAV, and other formats supported by Android's ExoPlayer, reads ReplayGain volume leveling information from FLAC tags, and includes a 5 or 10 band equalizer. Other features include synced lyrics pulled from LrcLib, artist photos from Deezer, playlist backup to your own OneDrive folder as a JSON file, a sleep timer, home screen widgets, and support for both Spanish and English. The developer says no analytics or crash reporting is included and that your Microsoft login token is stored only in Android's encrypted storage on your device. You install it by downloading the APK from the Releases page and sideloading it, or by using an app called Obtainium to get automatic updates. It requires Android 8.0 or newer. If you build it from source yourself, OneDrive login will not work until you register your own Microsoft Azure app, though local folder playback and everything else works without that step. It is licensed under the GNU GPL version 3, so any modified version you distribute must also be open sourced under the same license.

Copy-paste prompts

Prompt 1
Help me register an Azure app so OneDrive login works when I build Siku from source.
Prompt 2
Walk me through building the debug APK for Siku with gradlew assembleDebug.
Prompt 3
Explain how Siku merges and deduplicates songs from OneDrive and local folders.

Frequently asked questions

What is siku?

An Android music player that syncs your library from OneDrive or local folders, with a 5 or 10 band equalizer, synced lyrics, and a Material 3 Expressive interface.

What language is siku written in?

Mainly Kotlin. The stack also includes Kotlin, Jetpack Compose, ExoPlayer.

What license does siku use?

You can use and modify it freely, but if you distribute a modified version you must release your changes under the same GPL license.

How hard is siku to set up?

Setup difficulty is rated moderate, with roughly 5min to a first successful run.

Who is siku for?

Mainly general.

Open on GitHub → Explain another repo

This repo across BitVibe Labs

Verify against the repo before relying on details.