From b1caa05209bc06a38c76e05fe343590c6d370664 Mon Sep 17 00:00:00 2001 From: Quorafind Date: Wed, 17 Dec 2025 14:51:39 +0800 Subject: [PATCH] docs: update README and simplify DEVELOPMENT structure - Update README installation links to correct GitHub repo - Change version badge to dynamic release tag - Simplify DEVELOPMENT.md directory structure documentation - Add PRIVACY.md with privacy policy information --- DEVELOPMENT.md | 124 ++++--------------------------------------------- PRIVACY.md | 88 +++++++++++++++++++++++++++++++++++ README.md | 8 ++-- 3 files changed, 102 insertions(+), 118 deletions(-) create mode 100644 PRIVACY.md diff --git a/DEVELOPMENT.md b/DEVELOPMENT.md index 33180490..4390d075 100644 --- a/DEVELOPMENT.md +++ b/DEVELOPMENT.md @@ -51,120 +51,16 @@ pnpm run dev ### Directory Structure -``` -SRC -├─cache # Cache system used for caching data from Fluent view -├─commands # Commands for the plugin -├─common # Common files for the plugin -│ └─task-status # Task statuses marks like `[x]` and `[ ]` -├─components # Components for the plugin -│ ├─features # Contains all features related components -│ │ ├─calendar -│ │ │ ├─rendering -│ │ │ └─views -│ │ ├─fluent -│ │ │ ├─components -│ │ │ ├─events -│ │ │ └─managers -│ │ ├─gantt -│ │ ├─habit -│ │ │ ├─components -│ │ │ ├─habitcard -│ │ │ └─modals -│ │ ├─kanban -│ │ ├─on-completion -│ │ ├─onboarding -│ │ │ ├─modals -│ │ │ ├─previews -│ │ │ ├─steps -│ │ │ │ ├─guide -│ │ │ │ ├─intro -│ │ │ │ └─preview -│ │ │ └─ui -│ │ ├─quadrant -│ │ ├─quick-capture -│ │ │ ├─components -│ │ │ ├─modals -│ │ │ └─suggest -│ │ ├─read-mode -│ │ ├─settings -│ │ │ ├─components -│ │ │ ├─core -│ │ │ └─tabs -│ │ ├─table -│ │ ├─task -│ │ │ ├─edit -│ │ │ ├─filter -│ │ │ │ └─in-view -│ │ │ │ └─custom -│ │ │ └─view -│ │ │ └─modals -│ │ ├─timeline-sidebar -│ │ └─workflow -│ │ ├─modals -│ │ └─widgets -│ └─ui # UI components for the plugin -│ ├─behavior -│ ├─date-picker -│ ├─feedback -│ ├─inputs -│ ├─menus -│ ├─modals -│ ├─popovers -│ ├─renderers -│ ├─suggest -│ └─tree -├─core # Main core files for the plugin -│ └─goal -├─dataflow # Dataflow architecture(focused on performance and scalability) -│ ├─api -│ ├─augment -│ ├─core -│ ├─events -│ ├─indexer -│ ├─parsers -│ ├─persistence -│ ├─project -│ ├─sources -│ └─workers -├─editor-extensions # Editor extensions for Obsidian -│ ├─autocomplete -│ ├─core -│ ├─date-time -│ ├─task-operations -│ ├─ui-widgets -│ └─workflow -├─executors # Action executors when task is completed/archived/duplicated/moved/etc. -│ └─completion -├─managers # Some data/task managers -├─mcp # MCP server for Agentic task management -│ ├─auth -│ ├─bridge -│ └─types -├─pages # All views created by the plugin -│ └─bases # Bases view support -├─parsers # Task parsers -├─patches # Patches for Obsidian -├─services # Task related services -├─styles # All styles for the plugin -│ ├─calendar -│ ├─fluent -│ ├─gantt -│ ├─kanban -│ └─quadrant -├─translations # All translations for the plugin -│ └─locale -├─types # All types for the plugin -├─utils # All utils for the plugin -│ ├─date -│ ├─file -│ ├─task -│ └─ui -├─__mocks__ -└─__tests__ - ├─file-source - ├─file-task-manager - └─integration +```text +src/ + index.ts # Plugin entrypoint (registers views/commands) + components/ # UI (views, settings tabs, modals, widgets) + dataflow/ # Task indexing + repository + editor-extensions/ # CodeMirror extensions (filter, status, pickers, timer) + mcp/ # MCP server (Model Context Protocol) + pages/ # Views (TaskView, Bases views, widgets) + managers/ # Higher-level managers (onboarding, changelog, etc.) + utils/ # Shared helpers (dates, file ops, etc.) ``` ### Feature Development Flow diff --git a/PRIVACY.md b/PRIVACY.md new file mode 100644 index 00000000..c6cdc160 --- /dev/null +++ b/PRIVACY.md @@ -0,0 +1,88 @@ +# Privacy Policy - Task Genius Plugin for Obsidian + +**Last Updated: December 2025** + +> This privacy policy applies to the **Task Genius Plugin for Obsidian**. For the Task Genius Desktop application privacy policy, please visit our [documentation site](https://taskgenius.md/privacy/desktop). + +## 1. Core Privacy Principle + +Task Genius Plugin is designed with privacy-first principles. Your core task data remains entirely within your local Obsidian vault. We do not operate any servers that collect or store your personal data. + +## 2. Local Storage + +All primary data is stored locally in your Obsidian vault: + +- **Task data**: Stored as markdown files in your vault +- **Plugin settings**: Stored in `.obsidian/plugins/obsidian-task-genius/data.json` +- **Cache data**: Temporary cache stored locally for performance optimization + +You have complete control over your data. + +## 3. Google Calendar Integration + +Task Genius offers **optional** integration with Google Calendar to display your calendar events alongside tasks. This feature requires your explicit authorization. + +### 3.1 What We Access + +When you connect your Google Calendar, the plugin requests: + +| Permission | Purpose | +|------------|---------| +| `calendar.readonly` | Read-only access to view your calendar events | +| `userinfo.email` | Display your connected account email in settings | + +**Important**: Task Genius only requests **read-only** access. The plugin cannot create, modify, or delete any events in your Google Calendar. + +### 3.2 How Authorization Works + +1. **OAuth 2.0 with PKCE**: We use industry-standard OAuth 2.0 with PKCE for secure authentication +2. **Local Callback**: Authorization is handled via a local HTTP server on your computer (127.0.0.1) +3. **Token Storage**: Access tokens are stored locally in your plugin settings +4. **Direct Communication**: Calendar data is fetched directly from Google to your local Obsidian - we do not proxy or store any data + +### 3.3 Data Handling + +- Calendar events are fetched directly from Google and cached locally +- No calendar data is transmitted to any third-party servers +- Tokens can be revoked at any time through plugin settings or Google Account settings + +### 3.4 Revoking Access + +You can revoke access at any time: + +1. **In Plugin Settings**: Click "Disconnect" next to your connected account +2. **In Google Account**: Visit [Google Security Settings](https://myaccount.google.com/permissions) and remove "Task Genius for Obsidian" + +## 4. ICS/iCal Calendar Integration + +For ICS/iCal URL imports: + +- Data is fetched directly from the URL you provide +- Data is cached locally in your vault +- No data is transmitted to third-party servers + +## 5. MCP Integration + +If you enable MCP (Model Context Protocol) integration: + +- MCP server runs locally on your computer +- Connection is authenticated using App ID +- You control which AI clients can access your task data + +## 6. Open Source Transparency + +The source code is publicly available at [GitHub](https://github.com/Quorafind/Obsidian-Task-Progress-Bar), allowing you to verify how the plugin handles your data. + +## 7. Children's Privacy + +Task Genius does not knowingly collect data from children under 13. The plugin does not collect any personal data from users of any age. + +## 8. Contact + +- **Developer:** Boninall +- **Email:** quorafind@gmail.com +- **GitHub:** [github.com/Quorafind/Obsidian-Task-Progress-Bar](https://github.com/Quorafind/Obsidian-Task-Progress-Bar) + +## 9. Google API Services User Data Policy + +Task Genius's use of information received from Google APIs adheres to the [Google API Services User Data Policy](https://developers.google.com/terms/api-services-user-data-policy), including the Limited Use requirements. diff --git a/README.md b/README.md index 785e9e4f..f129b6c3 100644 --- a/README.md +++ b/README.md @@ -1,10 +1,10 @@
Task Genius Logo - [![Version](https://img.shields.io/badge/version-8.9.0-blue.svg)](https://github.com/Quorafind/Obsidian-Task-Genius) + [![Version](https://img.shields.io/github/v/release/Quorafind/Obsidian-Task-Genius?label=version)](https://github.com/Quorafind/Obsidian-Task-Genius/releases) [![Discord](https://img.shields.io/discord/1382008288706695229?color=7289da&label=Discord&logo=discord&logoColor=white)](https://discord.gg/ARR2rHHX6b) - [Documentation](https://taskgenius.md) • [Installation](#installation) • [Discord Community](https://discord.gg/ARR2rHHX6b) + [Documentation](https://taskgenius.md) | [Installation](#installation) | [Discord Community](https://discord.gg/ARR2rHHX6b)
--- @@ -40,8 +40,8 @@ For detailed feature documentation, visit [taskgenius.md](https://taskgenius.md) 4. Click Install, then Enable ### Manual Installation -1. Download the latest release from [GitHub Releases](https://github.com/taskgenius/taskgenius-plugin/releases) -2. Extract files to `.obsidian/plugins/task-genius/` +1. Download the latest release from [GitHub Releases](https://github.com/Quorafind/Obsidian-Task-Genius/releases) +2. Extract files to `.obsidian/plugins/obsidian-task-progress-bar/` 3. Enable the plugin in Obsidian settings ---