2.4 KiB
2.4 KiB
LinkdingSync Browser Extension - STEERING Document
This document provides project-specific guidelines for the LinkdingSync Firefox extension.
Project Organization
- Project location:
MyWorkspace/Linkding Browser Extension/ - Extension code:
bookmark-sync/subfolder - Documentation:
docs/subfolder - Assets: Stored in
MyWorkspace/to avoid permission prompts
Resource Storage
All downloaded resources should be stored within the MyWorkspace folder:
- Git repositories: Clone to
MyWorkspace/linkding/andMyWorkspace/linkding-extension/ - Extension assets: Store in
MyWorkspace/Linkding Browser Extension/assets/ - Design documents: Store in
MyWorkspace/Linkding Browser Extension/docs/ - Icon files: Store in
MyWorkspace/Linkding Browser Extension/bookmark-sync/icons/
Documentation Practices
Plan Mode Documentation
Before starting implementation in Plan mode:
- Create design documents in
docs/folder - Define all architecture decisions before implementation
- Document API specifications and data structures
- Review design document with user before switching to Act mode
Documentation Files
DESIGN.md- Main design document with architecture and implementation planREADME.md- Project overview and quick start guideTASKS.md- Current task checklist and progress tracking
Development Workflow
-
Plan Phase (Plan Mode):
- Document all design decisions
- Create detailed implementation plans
- Store designs in
docs/folder - Present plan to user for approval
-
Implementation Phase (Act Mode):
- Follow approved design document
- Implement features according to plan
- Write code with proper documentation
- Test and verify functionality
Technology Guidelines
- Firefox Extension Manifest Version: 2 (for maximum compatibility)
- API Client: Use
fetch()for API calls - Storage: Use Firefox Web Storage API (
localStorage,sessionStorage) - Icons: SVG format preferred for scalability
Security Considerations
- Store API tokens in web storage (client-side only)
- Validate all API responses
- Handle authentication errors gracefully
- Never expose API tokens in client-side code
Testing Strategy
- Test sync scenarios: add, update, delete bookmarks
- Test conflict resolution for bi-directional sync
- Test edge cases: network failures, API rate limits
- Verify bookmark folder structure is preserved