Skip to content

Repository files navigation

Self-Observation

A minimalist Progressive Web App for behavioural self-observation based on Nonviolent Communication (NVC) by Marshall B. Rosenberg.

Try it live

Pick a difficult situation where your emotions rise. Answer the questions. Remember: no judgement, no fixing, just observing.

Features

  • Offline-first - Works without internet connection after first visit
  • Local storage - All data stays in your browser, nothing is sent to servers
  • NVC-based - Feelings and needs lists based on the Center for Nonviolent Communication
  • PDF export - Export individual observations as PDF
  • Import/Export - Backup and restore all your data
  • Installable - Add to home screen on mobile or desktop

The Questions

  1. What happened? (Observe without judging)
  2. How did you feel? (What was alive in you?)
  3. What was your need? (Why did you feel this way?)
  4. How did you act? (Did you say something? Do you regret something?)
  5. Patterns (Do you see any patterns that repeat across meetings, people or decisions?)

Privacy

Self-Observation stores all data locally in your browser using LocalStorage. No data is ever transmitted to any server. Your observations remain private on your device.

To back up your data, use the Export button in Settings.

Development

No build tools required. Clone and serve locally:

git clone https://github.com/dkd-dobberkau/self-observation-app.git
cd self-observation-app

# Serve locally (pick one)
python3 -m http.server 8000
# or
npx serve .

Open http://localhost:8000

Project Structure

self-observation-app/
├── index.html          # Single HTML entry point
├── manifest.json       # PWA manifest
├── sw.js               # Service Worker for offline support
├── css/
│   └── style.css       # Dark, calming design system
├── js/
│   ├── app.js          # Main app, router, views
│   ├── storage.js      # LocalStorage abstraction
│   ├── feelings-needs.js  # NVC feelings and needs data
│   └── export-pdf.js   # PDF generation with jsPDF
└── assets/
    └── icons/          # PWA icons

Credits

Content & Methodology

Design

Technology

  • Built with vanilla JavaScript, no frameworks
  • PDF export via jsPDF
  • Developed with Claude Code by Anthropic

License

MIT

About

PWA for behavioural self-observation based on Nonviolent Communication (NVC)

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages