super-productivity/packages
Mohamed Abdeltawab 13b23c09dc
refactor(sync): remove dead getOpsSince method, migrate tests to getOpsSinceWithSeq (#8601)
* refactor(sync): remove dead getOpsSince method, migrate tests to getOpsSinceWithSeq

getOpsSince (non-WithSeq) was dead code in production — routes only called
getOpsSinceWithSeq. Removed the method and its direct unit tests; migrated
all remaining test callers to getOpsSinceWithSeq with .ops accessor.

* fix(sync): add missing lastSeq to userSyncState in cleanup test

getOpsSinceWithSeq reads userSyncState.lastSeq to determine the latest
sequence. The test overwrote userSyncState without lastSeq, causing the
new method to return empty ops.
2026-06-26 12:14:58 +02:00
..
plugin-api fix(plugins): expose focused task API to iframe plugins (#8291) 2026-06-15 14:57:34 +02:00
plugin-dev fix(caldav): handle numeric event shape in extractSyncValues (#8564) (#8573) 2026-06-24 13:46:40 +02:00
shared-schema Cleanup/remove dead super sync surface (#8526) 2026-06-22 14:34:18 +02:00
super-sync-server refactor(sync): remove dead getOpsSince method, migrate tests to getOpsSinceWithSeq (#8601) 2026-06-26 12:14:58 +02:00
sync-core refactor(sync-core): drop shared-schema vector-clock compat re-export anda app enum (#8441) 2026-06-17 16:21:26 +02:00
sync-providers fix(sync): surface OneDrive OAuth token errors and document Entra setup (#8580) 2026-06-24 16:18:46 +02:00
vite-plugin chore(deps): bump esbuild in the npm_and_yarn group across 0 directory (#8451) 2026-06-17 14:41:32 +02:00
build-packages.js fix(plugin): refresh procrastination buster i18n #5102 (#8145) 2026-06-08 20:44:43 +02:00
README.md

Super Productivity Packages

This directory contains plugin packages and the plugin API for Super Productivity.

Structure

  • plugin-api/ - TypeScript definitions for the plugin API
  • plugin-dev/ - Plugin development examples and tools
    • api-test-plugin/ - Basic API test plugin
    • procrastination-buster/ - Example SolidJS-based plugin
    • yesterday-tasks-plugin/ - Simple plugin showing yesterday's tasks
    • boilerplate-solid-js/ - Template for creating new SolidJS plugins (not built)
    • sync-md/ - Markdown sync plugin (not built)

Building Packages

All packages are built automatically when running the main build process:

npm run build:packages

This command:

  1. Builds the plugin-api TypeScript definitions
  2. Builds plugins that require compilation (e.g., procrastination-buster)
  3. Copies plugin files to src/assets/ for inclusion in the app

Development

To work on a specific plugin:

cd plugin-dev/[plugin-name]
npm install
npm run dev

Adding a New Plugin

  1. Create a new directory in plugin-dev/
  2. Add the plugin configuration to /packages/build-packages.js
  3. Run npm run build:packages to test the build

Notes

  • The boilerplate-solid-js and sync-md plugins are development templates and are not included in production builds
  • Plugin files are automatically copied to src/assets/ during the build process
  • The build script handles dependency installation automatically