Skip to content

johannesjo/minded

minded

A mindfulness layer that sits between you and the apps and sites that pull you in. minded interrupts doom-scrolling, social-media compulsion, and procrastination with short interventions — a breath, a check-in, a moment to ask whether you actually meant to open this.

  • Browser extension for Chrome and Firefox (Manifest V3)
  • Android app (native Kotlin host + shared web UI)
  • Shared SolidJS codebase across platforms

Browser extension

minded pausing a distracting site to ask what you actually came to do minded dashboard showing the day's intentions and reflections
A pause before the scroll — name what you actually came to do. A calm dashboard of the day's intentions and check-ins.

Android

minded's grounding breath on Android minded's daily check-in prompt on Android minded asking what you came to do on Android
The same gentle nudges on Android — a breath, a check-in, a moment to ask whether you meant to open this.

Install

  • Chrome / Edge / BraveChrome Web Store
  • AndroidGoogle Play
  • Firefox — load dist/ as an unpacked extension after building locally (AMO listing pending)

Learn more at minded.today.

Develop

Requires Node.js 21+ and npm.

cd extension
npm install
npm start          # browser-extension dev build (watches files, output in dist/)
npm run startDroid # android dev build (writes into android/app/src/main/assets/web/)

Load the extension in Chrome by opening chrome://extensions, enabling Developer mode, and pointing Load unpacked at extension/dist/.

For the Android app, open /android in Android Studio after running startDroid once.

Build

cd extension
npm run build      # production browser extension → dist/ + minded.zip
npm run buildDroid # production android assets

Test

cd extension
npm test           # jest
npm run lint       # eslint --fix

Run a single test: npx jest path/to/test.spec.ts.

Repository layout

extension/      Browser-extension build (Vite + CRXJS) and shared SolidJS UI
android/        Native Android host (Kotlin) wrapping the shared web UI
landing-page/   Marketing site (Astro) at minded.today
common/         Shared assets (logos, icons)
docs/           Architecture and design notes

The web UI under extension/src/shared/ is reused across all platforms. Platform-specific data access goes through the dataInterface pattern documented in CLAUDE.md — that file is the best entry point for understanding the architecture.

iOS note: iOS code paths exist under extension/src/ios/ but are not actively developed. Real interventions on iOS are blocked by platform restrictions on inspecting other apps. New features should target the browser extension and Android.

Contributing

See CONTRIBUTING.md. Bug reports, feature ideas, and PRs are welcome.

Security

Found a vulnerability? Please don't open a public issue — see SECURITY.md.

License

MIT © Johannes Millan

Packages

 
 
 

Contributors