<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/"><channel><title>Compose on MusicApps Dev Blog</title><link>https://blog.musicapps.eu/tags/compose/</link><description>Recent content in Compose on MusicApps Dev Blog</description><generator>Hugo</generator><language>en-us</language><lastBuildDate>Thu, 04 Jun 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.musicapps.eu/tags/compose/index.xml" rel="self" type="application/rss+xml"/><item><title>Raising the free tier, fixing a BPM glitch, and setting up a new machine</title><link>https://blog.musicapps.eu/posts/2026-06-04-freemium-limits-bpm-fix-and-new-machine/</link><pubDate>Thu, 04 Jun 2026 00:00:00 +0000</pubDate><guid>https://blog.musicapps.eu/posts/2026-06-04-freemium-limits-bpm-fix-and-new-machine/</guid><description>A small but meaningful update: the free tier now allows 50 songs and 5 playlists. Plus a Compose LaunchedEffect fix for a BPM sync issue when adding the first song to a new playlist. And some notes on getting back up to speed on a new Mac.</description></item><item><title>Hands-free start/stop with a Bluetooth foot pedal</title><link>https://blog.musicapps.eu/posts/2026-05-07-bluetooth-foot-pedal-support/</link><pubDate>Thu, 07 May 2026 00:00:00 +0000</pubDate><guid>https://blog.musicapps.eu/posts/2026-05-07-bluetooth-foot-pedal-support/</guid><description>SessionClick now responds to Bluetooth foot pedals. Pedals marketed as page turners present themselves as keyboards, so the app listens for the keys those pedals send and toggles play/stop. One small feature, one short Gemini prompt, one real bug Claude caught in review.</description></item><item><title>Selectable click sounds and a haptic tempo circle</title><link>https://blog.musicapps.eu/posts/2026-05-01-selectable-clicks-and-haptic-circle/</link><pubDate>Fri, 01 May 2026 00:00:00 +0000</pubDate><guid>https://blog.musicapps.eu/posts/2026-05-01-selectable-clicks-and-haptic-circle/</guid><description>Two new features in one session: three pre-recorded WAV click sounds you can pick alongside the existing synth click, and press-and-hold haptic feedback on the main tempo circle. Plus a long debugging detour that turned out to be a lazy-init bug in the native engine.</description></item><item><title>First batch of beta feedback fixes</title><link>https://blog.musicapps.eu/posts/2026-04-27-first-batch-beta-feedback-fixes/</link><pubDate>Mon, 27 Apr 2026 00:00:00 +0000</pubDate><guid>https://blog.musicapps.eu/posts/2026-04-27-first-batch-beta-feedback-fixes/</guid><description>Eight items from the first round of beta feedback, in one focused day. A subtle Compose race condition that broke Feel-the-Beat, a rename of &amp;ldquo;Special Entry&amp;rdquo; to &amp;ldquo;Break&amp;rdquo;, per-playlist rename via a 3-dot overflow menu, an in-library New Song affordance, a system-nav clipping fix, a restructured top-bar menu, and the first version of an Edit Sound screen with live frequency and tone control plumbed all the way down to the Oboe callback.</description></item><item><title>Day 9: Editing, swiping, playlists, and a very satisfying number</title><link>https://blog.musicapps.eu/posts/2026-04-16-editing-swiping-playlists-and-persistence/</link><pubDate>Thu, 16 Apr 2026 00:00:00 +0000</pubDate><guid>https://blog.musicapps.eu/posts/2026-04-16-editing-swiping-playlists-and-persistence/</guid><description>The longest session so far. Song and special entry editing, a complete redesign of the swipe gestures, multiple playlist support, JSON persistence, and a jitter measurement that confirms the audio engine is production-ready.</description></item><item><title>Day 8: Docs and swipe and drag-and-drop</title><link>https://blog.musicapps.eu/posts/2026-04-15-documentation-and-knowledge-base/</link><pubDate>Wed, 15 Apr 2026 00:00:00 +0000</pubDate><guid>https://blog.musicapps.eu/posts/2026-04-15-documentation-and-knowledge-base/</guid><description>A split session: two new knowledge base articles in the morning, then a long evening of wiring up swipe gestures and drag-to-reorder — including a detour through a custom implementation that never fully worked, ending with the right library call.</description></item><item><title>Day 7: Building the main screen — controls, playlist, and a lot of iteration</title><link>https://blog.musicapps.eu/posts/2026-04-13-building-the-main-screen/</link><pubDate>Mon, 13 Apr 2026 00:00:00 +0000</pubDate><guid>https://blog.musicapps.eu/posts/2026-04-13-building-the-main-screen/</guid><description>The main screen finally looks like a real app. A long session covering the last metronome controls, the playlist list, a responsive layout, and several bugs that only surface on a real device.</description></item><item><title>Day 5: UI design, a foreground service, and a hard sync problem</title><link>https://blog.musicapps.eu/posts/2026-04-11-ui-design-sync-and-foreground-service/</link><pubDate>Sat, 11 Apr 2026 00:00:00 +0000</pubDate><guid>https://blog.musicapps.eu/posts/2026-04-11-ui-design-sync-and-foreground-service/</guid><description>Today had three acts: sketching the full UI concept, building a foreground service, and solving an audio/visual sync problem that turned out to require a C++ fix.</description></item></channel></rss>