|
2 | 2 |
|
3 | 3 | This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. |
4 | 4 |
|
| 5 | +> **Simple notes, always by your side** |
| 6 | +> **侧边笔记,常伴左右** |
| 7 | +
|
5 | 8 | ## Project Overview |
6 | 9 |
|
7 | | -SlideNote is a Chrome sidebar extension for quick, cross-device note-taking. It uses Chrome Storage Sync API for automatic synchronization across devices. The project philosophy is "simplicity above all" - focusing solely on storing and syncing short text fragments. |
| 10 | +SlideNote is a Chrome sidebar extension for quickly storing and accessing fragments of information. It uses the Chrome Side Panel API to live in the browser sidebar **without blocking page content**. Data syncs automatically across devices via Chrome Storage Sync API. |
| 11 | + |
| 12 | +**Product Positioning**: SlideNote is **not a note-taking app**. Think of it as a "sticky note in your browser sidebar" or a "cloud clipboard for fragments" — for quickly storing and retrieving small pieces of information (API keys, server addresses, commands, prompts, etc.). |
| 13 | + |
| 14 | +**Core Value** (in order of importance): |
| 15 | +1. **Sidebar, never blocks content** — This is the unique selling point |
| 16 | +2. **Instant access** — Opens in < 100ms, no app switching |
| 17 | +3. **Auto-sync across devices** — Your fragments follow you everywhere |
| 18 | +4. **Real-time search** — Find anything instantly |
| 19 | +5. **Markdown support** — Basic formatting for keys, commands, and code (v0.0.3) |
8 | 20 |
|
9 | | -**Current Status**: Design phase (v0.0.1). Implementation is pending. |
| 21 | +**Current Status**: v0.0.3 released with Markdown support. |
10 | 22 |
|
11 | 23 | ## Development Commands |
12 | 24 |
|
@@ -189,8 +201,21 @@ Two types handled: |
189 | 201 | ## Principles to Follow |
190 | 202 |
|
191 | 203 | 1. **No Framework**: Stick to vanilla ES6+ JavaScript |
192 | | -2. **Minimal Dependencies**: Only Vite for building, TypeScript for type checking |
| 204 | +2. **Minimal Dependencies**: Only Vite for building, TypeScript for type checking, marked.js for Markdown (~7KB) |
193 | 205 | 3. **CSS Variables**: Use the defined design tokens, avoid hardcoding values |
194 | 206 | 4. **Component Pattern**: Extend `Component` base class for consistent lifecycle |
195 | 207 | 5. **Event-Driven**: Use EventBus, not direct component references |
196 | 208 | 6. **Storage Awareness**: Respect Chrome Storage limits, implement warnings at 90% capacity |
| 209 | +7. **Product Positioning**: Remember this is NOT a note-taking app — it's for fragments, not articles |
| 210 | + |
| 211 | +## Key Product Phrases to Use |
| 212 | + |
| 213 | +When writing documentation, marketing, or code comments: |
| 214 | + |
| 215 | +| Use | Avoid | |
| 216 | +|-----|-------| |
| 217 | +| "便利贴" (sticky note) | "笔记本" (notebook) | |
| 218 | +| "碎片信息" (fragments) | "笔记" (notes) | |
| 219 | +| "快速存取" (quick access) | "写作" (writing) | |
| 220 | +| "不遮挡内容" (never blocks content) | "悬浮窗口" (floating window) | |
| 221 | +| "云剪贴板" (cloud clipboard) | "知识库" (knowledge base) | |
0 commit comments