← Back to the workshop
Everyday tools

Mișcare

Find a little movement for today, using the equipment you already have.

Mișcare App

Android Preview

Mișcare 0.1.0 is an early-access Android download for Android 7.0 or newer. It bundles guided routines, 45 illustrated exercises, 12 interface languages, and a local workout journal. No account, server, or Internet permission is required.

The Android app starts with separate local data; it does not import PWA history automatically. JSON import replaces the current profile and journal. See the installation and backup guide for checksums, signing compatibility, and remaining validation. Reminders are not implemented.

About The Project

Start from zero. Move at your own pace. No guilt, just adjustment.

Mișcare is an adaptive exercise app with a local Android edition and a self-hosted web edition. It is designed for beginners and people returning after a break, with short routines, equipment choices, and a journal. Progression is a choice, and rest days carry no lost-streak penalty.

Upon opening the app, users are greeted directly with "Today's Session" — ready to launch with a single tap. If life gets busy, a one-click "Make it 5 minutes" option shortens the workout. If life gets in the way for days, there are no broken streaks or guilt messages; the app simply welcomes you back with a gentle re-entry routine.

The self-hosted PWA uses Vanilla JavaScript, Node.js and SQLite, with pwa-kit updates and pwa-invite-console device invitations. The Android app bundles the interface and adaptive engine in Capacitor, stores its profile and journal locally in IndexedDB, and receives executable updates through APK installation.

Gallery

Features

  • 🌱 Starting from Zero: Foundational bodyweight movements (wall push-ups, chair sit-to-stand, gentle glute bridges, shoulder mobility stretches) paired with warm illustrated visual guides and protection filters for knees, lower back, and wrists.
  • ⚡ Zero-Friction Daily Sessions: The home screen serves today's routine immediately. Includes one-tap variations like "Make it 5 min" and "Swap exercise", accompanied by a quiet timer and Web Audio API chime.
  • Equipment filters: Choose the equipment you have and the areas you want to protect; routines adapt to those selections.
  • 🌿 "No Shaming" Adaptive Logic: Active days are accumulated as permanent milestones rather than fragile streaks. If a session is rated "A bit tough", the next routine scales intensity down automatically; if returning after a break, an automatic gentle re-adaptation session is scheduled.
  • 🔄 PWA Updates: Integrated with pwa-kit for network-first service worker caching with content-hash version stamping and non-disruptive update prompts.
  • 🔐 PWA Device Pairing: Seamless onboarding via pwa-invite-console pairing codes (XXXX-YYYY-ZZZZ) issuing secure, long-lived device session tokens.
  • 🎨 Dual Theme & Offline Resilience: Automatic light/dark palette with forest-emerald accents, fully functional offline backed by IndexedDB and LocalStorage.

Architecture & Tech Stack

Frontend Architecture

Vanilla JavaScript (ES Modules) without build-step overhead, responsive CSS custom properties, custom Web Audio synthesis, and Service Worker offline caching.

Backend Engine

The PWA uses Node.js 24, native node:sqlite, and Express REST endpoints. The Android build runs the shared routine engine locally and needs no backend.

Integrations

Native contract compatibility with pwa-kit for version lifecycle management and pwa-invite-console for invite token redemption and device management.