super-productivity/packages/plugin-dev/sync-md
dependabot[bot] 76d6419fa8
chore(deps): bump the npm_and_yarn group across 9 directories with 1 update (#8366)
Bumps the npm_and_yarn group with 1 update in the /packages/plugin-dev/ai-productivity-prompts directory: [esbuild](https://github.com/evanw/esbuild).
Bumps the npm_and_yarn group with 1 update in the /packages/plugin-dev/caldav-calendar-provider directory: [esbuild](https://github.com/evanw/esbuild).
Bumps the npm_and_yarn group with 1 update in the /packages/plugin-dev/clickup-issue-provider directory: [esbuild](https://github.com/evanw/esbuild).
Bumps the npm_and_yarn group with 1 update in the /packages/plugin-dev/doc-mode directory: [esbuild](https://github.com/evanw/esbuild).
Bumps the npm_and_yarn group with 1 update in the /packages/plugin-dev/gitea-issue-provider directory: [esbuild](https://github.com/evanw/esbuild).
Bumps the npm_and_yarn group with 1 update in the /packages/plugin-dev/github-issue-provider directory: [esbuild](https://github.com/evanw/esbuild).
Bumps the npm_and_yarn group with 1 update in the /packages/plugin-dev/google-calendar-provider directory: [esbuild](https://github.com/evanw/esbuild).
Bumps the npm_and_yarn group with 1 update in the /packages/plugin-dev/linear-issue-provider directory: [esbuild](https://github.com/evanw/esbuild).
Bumps the npm_and_yarn group with 1 update in the /packages/plugin-dev/sync-md directory: [esbuild](https://github.com/evanw/esbuild).


Removes `esbuild`

Updates `esbuild` from 0.25.12 to 0.28.1
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/commits)

Updates `esbuild` from 0.25.12 to 0.28.1
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/commits)

Updates `esbuild` from 0.25.12 to 0.28.1
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/commits)

Updates `esbuild` from 0.25.12 to 0.28.1
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/commits)

Updates `esbuild` from 0.25.12 to 0.28.1
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/commits)

Updates `esbuild` from 0.25.12 to 0.28.1
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/commits)

Updates `esbuild` from 0.25.12 to 0.28.1
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/commits)

Updates `esbuild` from 0.25.11 to 0.28.1
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md)
- [Commits](https://github.com/evanw/esbuild/commits)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-version:
  dependency-type: indirect
  dependency-group: npm_and_yarn
- dependency-name: esbuild
  dependency-version: 0.28.1
  dependency-type: direct:development
  dependency-group: npm_and_yarn
- dependency-name: esbuild
  dependency-version: 0.28.1
  dependency-type: direct:development
  dependency-group: npm_and_yarn
- dependency-name: esbuild
  dependency-version: 0.28.1
  dependency-type: direct:development
  dependency-group: npm_and_yarn
- dependency-name: esbuild
  dependency-version: 0.28.1
  dependency-type: direct:development
  dependency-group: npm_and_yarn
- dependency-name: esbuild
  dependency-version: 0.28.1
  dependency-type: direct:development
  dependency-group: npm_and_yarn
- dependency-name: esbuild
  dependency-version: 0.28.1
  dependency-type: direct:development
  dependency-group: npm_and_yarn
- dependency-name: esbuild
  dependency-version: 0.28.1
  dependency-type: direct:development
  dependency-group: npm_and_yarn
- dependency-name: esbuild
  dependency-version: 0.28.1
  dependency-type: direct:development
  dependency-group: npm_and_yarn
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-06-13 14:37:36 +02:00
..
docs feat(sync-md): new approach and make it work better 2025-07-07 18:39:14 +02:00
scripts fix: all console errors 2025-07-22 20:34:12 +02:00
src fix(plugins): harden nodeExecution grants (#8205) 2026-06-09 18:16:41 +02:00
.gitignore feat(sync-md): new approach and make it work better 2025-07-07 18:39:14 +02:00
.prettierrc.json feat(syncMd): add comprehensive test suite and development configuration 2025-07-10 14:56:19 +02:00
eslint.config.js chore(deps): upgrade ESLint to v9 with flat config 2026-01-10 16:08:11 +01:00
jest.config.cjs fix(sync-md): prevent crash from sync oscillation when adding subtask to markdown file 2026-03-24 14:12:50 +01:00
jest.config.js.bak fix(sync-md): fix failing tests after parser changes 2025-07-10 19:17:41 +02:00
package-lock.json chore(deps): bump the npm_and_yarn group across 9 directories with 1 update (#8366) 2026-06-13 14:37:36 +02:00
package.json chore(deps): bump the npm_and_yarn group across 9 directories with 1 update (#8366) 2026-06-13 14:37:36 +02:00
README.md fix(sync): fix stale comments, doc refs, and preserve lastSeq on clean-slate 2026-02-12 16:27:56 +01:00
tsconfig.json feat(sync-md): new approach and make it work better 2025-07-07 18:39:14 +02:00
vite.config.ts feat(sync-md): new approach and make it work better 2025-07-07 18:39:14 +02:00

Sync-MD Plugin v2.0.0

A SuperProductivity plugin that enables bidirectional synchronization between markdown files and project tasks.

Features

  • Bidirectional Sync: Keep markdown files and SuperProductivity tasks in sync
  • Batch API Integration: Efficient bulk operations for better performance
  • Smart Debouncing: 10-second delays prevent conflicts during active editing
  • Real-time Monitoring: File system watching with automatic sync triggers
  • Task Hierarchy: Preserves parent-child relationships in markdown
  • Modern Architecture: Built with Solid.js UI and modular TypeScript

Quick Start

# Install dependencies
npm install

# Development mode with hot reload
npm run dev:watch

# Build for production
npm run build

# Package as plugin
npm run package

Architecture

Core Components

  • src/fileWatcherBatch.ts - Main sync engine with batch API support
  • src/background.ts - Plugin lifecycle and message handling
  • src/App.tsx - Solid.js UI for configuration
  • src/utils/ - Reusable utilities (parser, debouncer, file ops)

Build System

  • build-proper.js - Main build script
  • build-plugin.js - Package as distributable ZIP
  • watch-and-build.js - Development with auto-rebuild

Configuration

{
  projectId: "project-uuid",
  filePath: "/path/to/tasks.md",
  syncDirection: "fileToProject" | "projectToFile" | "bidirectional"
}

Markdown Format

- [ ] Parent task
  - [x] <!-- sp:task-id --> Completed subtask
  - [ ] Pending subtask

Tasks are linked using HTML comments containing unique IDs.

Testing

# Run all tests
npm test

# Watch mode
npm run test:watch

# Coverage report
npm run test:coverage

Cleanup

To remove old/unnecessary files after updating:

chmod +x cleanup.sh
./cleanup.sh