Skip to content

Repository files navigation

Selah Pace

Quiet Reading Pace & Focus Companion for Web and News Reading
Part of the Selah Reading Tools family by postsoma-2050

Selah Pace Logo


📖 Overview

Selah Pace is a Chrome browser extension designed to help readers enter intentional, bounded reading sessions.

Rather than acting as a rigid Pomodoro timer, a competitive scoreboard, or a complex productivity dashboard, Selah Pace provides a calm space to set time boundaries for reading articles, technical docs, and news, while visualizing your weekly reading rhythm.


🎨 Design Philosophy: Warm Paper & Solid Ink

Selah Pace strictly adheres to the Selah Reading Tools visual system:

  • Warm Paper Background: Soft, paper-like warm white tones (#FDFBF7 / #F4F0EA).
  • Solid Ink Typography: Charcoal typography (#222222) for high legibility without harsh eye strain.
  • Low Contrast Borders: Subtle dividers (#E5E0D8) and 6px rounded corners.
  • 100% Vector SVG Icons: Clean, pixel-perfect SVG icons with zero emojis or pressure-based alerts.
  • No Pressure Aesthetics: Zero blue/purple AI gradients, no glassmorphism, no scoreboards, and no social leaderboards.

✨ Features

  • Intentional Reading Sessions: Quick duration presets (15m, 25m, 30m, 45m) or custom minute inputs with optional reading intention notes.
  • Gentle Completion & Rest: Distinct completion feedback card with optional 5-minute rest periods.
  • 📊 7-Day Pace Rhythm Grid: Visualize your weekly reading consistency with subtle rhythm dots () and active day counts.
  • 🗂 Tiered Data Lifecycle Model (V2):
    • Tier 1 (< 48h): Detailed session notes and timestamps.
    • Tier 2 (Past 90 days): Compressed daily summaries for rhythm tracking.
    • Tier 3 (> 90 days): Compact monthly archives ensuring minimal storage usage (< 20 KB/year).
  • 🛡 100% Offline & Private: All data remains exclusively in your Chrome local storage (chrome.storage.local). Zero analytics, zero cloud tracking, and zero content scraping.

🛠 Technology Stack

  • Platform: Manifest V3 Chrome Extension
  • Framework & Build: Vite + TypeScript
  • State & Storage: Chrome Storage Local API (chrome.storage.local)
  • Background Worker: Ephemeral Service Worker with chrome.alarms and chrome.notifications

🚀 Getting Started

Prerequisites

  • Node.js (v18 or higher)
  • npm (v9 or higher)

Installation & Local Development

  1. Clone the repository:

    git clone https://github.com/postsoma-2050/Selah-Pace.git
    cd Selah-Pace
  2. Install dependencies:

    npm install
  3. Build the production package:

    npm run build
  4. Load the unpacked extension in Chrome:

    • Open Chrome and navigate to chrome://extensions.
    • Enable Developer mode in the top-right corner.
    • Click Load unpacked.
    • Select the dist/ directory inside Selah-Pace.

📦 Building for Chrome Web Store

To prepare the release zip file for the Chrome Developer Dashboard:

npm run build
cd dist && zip -r ../selah-pace-v1.0.0.zip . * && cd ..

Refer to CHROMEWEBSTORE.md for detailed store listing descriptions and permission justifications.


📄 License & Acknowledgments

  • License: MIT License © 2026 postsoma-2050
  • Privacy Policy: See PRIVACY_POLICY.md
  • Acknowledgments: Selah Pace's state machine architecture and background alarms concepts were inspired by Chris Schmich's open-source project Marinara under the MIT License. See THIRD_PARTY_NOTICES.md for full notices.

About

quiet reading pace and focus companion for web and news reading.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages