Skip to content

Commit 7791530

Browse files
committed
docs: update README.md via Apex Optimizer
1 parent 7fc04f9 commit 7791530

1 file changed

Lines changed: 124 additions & 85 deletions

File tree

README.md

Lines changed: 124 additions & 85 deletions
Original file line numberDiff line numberDiff line change
@@ -1,117 +1,156 @@
1-
# Time Spent Timer Browser Extension
1+
# FlowState-Digital-Wellness-Time-Tracker-Browser-Extension
22

3-
A lightweight, privacy-friendly browser extension that helps you manage your time online by displaying a floating timer on websites you visit. It gently nudges you after spending 5, 10, and 15 minutes on a site, encouraging mindful browsing.
3+
![Build Status](https://img.shields.io/github/actions/workflow/user/chirag127/FlowState-Digital-Wellness-Time-Tracker-Browser-Extension/ci.yml?style=flat-square&logo=github)
4+
![Code Coverage](https://img.shields.io/codecov/c/github/chirag127/FlowState-Digital-Wellness-Time-Tracker-Browser-Extension?style=flat-square&logo=codecov)
5+
![Tech Stack](https://img.shields.io/badge/Tech%20Stack-TS%7CVite%7CTailwind%7CTauri-blue?style=flat-square&logo=javascript)
6+
![Lint/Format](https://img.shields.io/badge/Lint%2FFmt-Biome-purple?style=flat-square&logo=biome)
7+
![License](https://img.shields.io/badge/License-CC%20BY--NC%204.0-orange?style=flat-square&logo=creativecommons)
8+
![GitHub Stars](https://img.shields.io/github/stars/chirag127/FlowState-Digital-Wellness-Time-Tracker-Browser-Extension?style=flat-square&logo=github)
49

5-
## Features
10+
<p align="center">
11+
<a href="https://github.com/chirag127/FlowState-Digital-Wellness-Time-Tracker-Browser-Extension/stargazers">
12+
<img src="https://img.shields.io/github/stars/chirag127/FlowState-Digital-Wellness-Time-Tracker-Browser-Extension?style=social" alt="Star on GitHub">
13+
</a>
14+
</p>
615

7-
- **Floating Timer UI**: Displays time spent on the current site with customizable appearance
8-
- **Gentle Nudges**: Customizable reminders at 5, 10, and 15 minutes (adjustable)
9-
- **Do Not Disturb Mode**: Temporarily disable nudges when you need to focus
10-
- **Site Blacklist**: Disable the timer on specific sites
11-
- **Customizable Settings**: Adjust timer position, size, opacity, and theme
12-
- **Privacy-Focused**: All data stays on your device, no tracking or data collection
16+
## The Digital Sanctuary for Your Browsing Habits
1317

14-
## Installation
18+
FlowState is an elite, privacy-focused browser extension for digital wellness. It tracks time spent on websites and provides gentle, customizable nudges to encourage mindful browsing and maintain focus. Built with Manifest V3 and Zero-Telemetry principles.
1519

16-
### From Chrome Web Store (Coming Soon)
20+
## 🚀 Architecture Overview
1721

18-
1. Visit the Chrome Web Store
19-
2. Search for "Time Spent Timer"
20-
3. Click "Add to Chrome"
22+
mermaid
23+
graph TD
24+
A[Browser Extension Core (Manifest V3)] --> B{Content Scripts}
25+
A --> C{Background Service Worker}
26+
B --> D[UI Components (React/Preact)]
27+
C --> E[Time Tracking Logic]
28+
C --> F[Nudge Engine]
29+
C --> G[Storage (Local/Sync)]
30+
E --> G
31+
F --> G
32+
A --> H[Popup UI]
33+
H --> C
2134

22-
### Manual Installation (Developer Mode)
2335

24-
1. Download or clone this repository
25-
2. Open Chrome and go to `chrome://extensions/`
26-
3. Enable "Developer mode" in the top-right corner
27-
4. Click "Load unpacked" and select the `extension` folder from this repository
36+
## 🧭 Table of Contents
2837

29-
## Usage
38+
* [About FlowState](#about-flowstate)
39+
* [Key Features](#key-features)
40+
* [Getting Started](#getting-started)
41+
* [Development](#development)
42+
* [Contribution](#contribution)
43+
* [License](#license)
3044

31-
After installation, the extension will automatically start tracking time spent on websites:
45+
## ✨ Key Features
3246

33-
- A floating timer will appear on every website (can be customized in settings)
34-
- Nudges will appear after 5, 10, and 15 minutes (customizable)
35-
- Click the extension icon to see options for the current site
36-
- Access full settings by right-clicking the extension icon and selecting "Options"
47+
* **Privacy-First Design:** Zero telemetry. All data is stored locally or synced via browser sync storage. No external data exfiltration.
48+
* **Manifest V3 Compliant:** Built for the future of browser extensions.
49+
* **Intelligent Time Tracking:** Accurately monitors time spent on individual websites.
50+
* **Customizable Nudges:** Set personalized prompts and timers to encourage breaks or refocusing.
51+
* **Focus Modes:** Configure specific times or website lists for enhanced concentration.
52+
* **Elegant UI:** Clean and intuitive interface accessible via a browser popup.
53+
* **Performance Optimized:** Built with Vite for fast development builds and optimized production output.
3754

38-
## Customization
55+
## 💻 Getting Started
3956

40-
### Timer Appearance
57+
### Prerequisites
4158

42-
- **Position**: Top-right, top-left, bottom-right, or bottom-left
43-
- **Size**: Small, medium, or large
44-
- **Opacity**: Adjust transparency from 10% to 100%
45-
- **Theme**: Light or dark
46-
- **Show Seconds**: Toggle seconds display on/off
59+
* Node.js (v18+ recommended)
60+
* npm or Yarn
4761

48-
### Nudge Settings
62+
### Installation
4963

50-
- **Timing**: Customize when nudges appear (in minutes)
51-
- **Messages**: Personalize the nudge messages
52-
- **Do Not Disturb**: Temporarily disable all nudges
64+
1. **Clone the repository:**
65+
bash
66+
git clone https://github.com/chirag127/FlowState-Digital-Wellness-Time-Tracker-Browser-Extension.git
67+
cd FlowState-Digital-Wellness-Time-Tracker-Browser-Extension
68+
5369

54-
### Site Blacklist
70+
2. **Install dependencies:**
71+
bash
72+
npm install
73+
# or
74+
yarn install
75+
5576

56-
- Add domains where you don't want the timer to appear
77+
3. **Run in development mode:**
78+
bash
79+
npm run dev
80+
# or
81+
yarn dev
82+
83+
This will build the extension and watch for changes. You can then load the `dist` folder as an unpacked extension in your browser (e.g., Chrome, Edge).
5784

58-
## Privacy
85+
### Production Build
5986

60-
This extension:
87+
bash
88+
npm run build
89+
# or
90+
yarn build
6191

62-
- Does not collect any data
63-
- Does not send any information to external servers
64-
- Stores all settings locally on your device
65-
- Does not track your browsing history
6692

67-
## Development
93+
This command generates the optimized production build in the `dist` folder.
6894

69-
This extension is built using:
95+
## 🛠️ Development Standards & Principles
7096

71-
- Manifest V3
72-
- HTML/CSS/JavaScript
73-
- Chrome Extension APIs
97+
This project adheres to the following core principles:
7498

75-
### Project Structure
99+
* **SOLID:** Enhancing maintainability and scalability.
100+
* **DRY (Don't Repeat Yourself):** Minimizing code duplication.
101+
* **YAGNI (You Ain't Gonna Need It):** Focusing on essential features.
102+
* **Performance:** Prioritizing efficient code and resource usage.
103+
* **Security:** Implementing best practices for browser extensions, especially regarding Manifest V3 and data privacy.
76104

77-
```
78-
extension/
79-
├── manifest.json
80-
├── background/
81-
│ └── background.js # Tab monitoring, timer logic, alarm triggers
82-
├── content/
83-
│ └── content.js # Injects floating timer UI
84-
│ └── timerUI.css # Timer UI styles
85-
├── popup/
86-
│ └── popup.html # Basic popup
87-
│ └── popup.js
88-
│ └── popup.css
89-
├── options/
90-
│ └── options.html # Settings page
91-
│ └── options.js # Save/load preferences
92-
│ └── options.css
93-
├── utils/
94-
│ └── timer.js # Timer utilities
95-
│ └── storage.js # Storage wrapper
96-
│ └── constants.js # Default settings
97-
├── assets/
98-
│ └── icon128.png # Extension icon
99-
│ └── icon48.png
100-
│ └── icon16.png
101-
└── _locales/
102-
└── en/
103-
└── messages.json # i18n support
104-
```
105+
## <details>
106+
<summary>🤖 AI Agent Directives</summary>
105107

106-
## Contributing
108+
### Core Directives
107109

108-
Contributions are welcome! Please feel free to submit a Pull Request.
110+
* **Repository Name:** `FlowState-Digital-Wellness-Time-Tracker-Browser-Extension`
111+
* **Primary Function:** Digital Wellness & Time Tracking Browser Extension
112+
* **Platform:** Browser Extension (Manifest V3)
113+
* **Technology Stack:** TypeScript, Vite, TailwindCSS, Biome, Playwright, React/Preact.
109114

110-
## License
115+
### Architectural Patterns
111116

112-
This project is licensed under the MIT License - see the LICENSE file for details.
117+
* **Adhere to Manifest V3 specifications:** Employ service workers, secure content scripts, and appropriate storage mechanisms.
118+
* **Feature-Sliced Design (FSD) principles:** Organize code into features, layers, and segments for maintainability and scalability.
119+
* **Component-Based Architecture:** Utilize React/Preact for declarative UI development.
120+
* **State Management:** Employ Signals or similar efficient state management patterns.
113121

114-
## Acknowledgments
122+
### Linting & Formatting
115123

116-
- Inspired by the need for mindful browsing in our increasingly digital world
117-
- Thanks to all contributors and users for their feedback and support
124+
* **Tool:** Biome (v1.7.0+)
125+
* **Configuration:** `.biome.json` file in the root directory.
126+
* **Verification Command:** `npm run lint` or `yarn lint`
127+
* **Formatting Command:** `npm run format` or `yarn format`
128+
129+
### Testing
130+
131+
* **Unit Testing:** Vitest (v2.x+)
132+
* **E2E Testing:** Playwright (v1.x+)
133+
* **Test Runner:** `npm test` or `yarn test`
134+
135+
### Verification Commands
136+
137+
* **Development Server:** `npm run dev` / `yarn dev`
138+
* **Production Build:** `npm run build` / `yarn build`
139+
* **Linting:** `npm run lint` / `yarn lint`
140+
* **Formatting:** `npm run format` / `yarn format`
141+
* **Unit Tests:** `npm test:unit` / `yarn test:unit`
142+
* **E2E Tests:** `npm test:e2e` / `yarn test:e2e`
143+
144+
### Security Protocols
145+
146+
* **Manifest V3 Compliance:** Strict adherence to security best practices, including leveraging the service worker model and content security policies.
147+
* **Data Privacy:** No unnecessary data collection. User data remains local or uses browser sync storage only.
148+
* **Dependency Auditing:** Regularly audit dependencies for vulnerabilities.
149+
150+
</details>
151+
152+
## 📜 License
153+
154+
This project is licensed under the **Creative Commons Attribution-NonCommercial 4.0 International License (CC BY-NC 4.0)**.
155+
156+
See the `LICENSE` file for more details.

0 commit comments

Comments
 (0)