super-productivity/packages
Johannes Millan 89320f0b5d fix(super-sync-server): sanitize 5xx responses to avoid leaking internals
Add a Fastify setErrorHandler that returns a generic 500 body for any
unhandled server error. Previously the default handler serialized raw
error.message into the response, exposing Prisma stack details and the
internal DB hostname (e.g. "Can't reach database server at postgres:5432")
to clients and exportable client logs. 4xx errors still pass through so
validation and auth messages remain actionable.
2026-05-08 22:30:59 +02:00
..
plugin-api build: lock etc 2026-05-01 20:46:47 +02:00
plugin-dev fix(caldav): expand RRULE recurring events into individual occurrences (#7492) 2026-05-06 21:37:06 +02:00
shared-schema feat: add sections in projects (#6066) 2026-04-29 15:02:33 +02:00
super-sync-server fix(super-sync-server): sanitize 5xx responses to avoid leaking internals 2026-05-08 22:30:59 +02:00
vite-plugin chore(deps): bump the npm_and_yarn group across 1 directory with 9 updates (#7259) 2026-04-18 20:35:50 +02:00
build-packages.js fix(plugins): style form inputs to match main app and copy i18n for simple plugins 2026-03-20 21:36:30 +01:00
README.md feat: cleanup and update plugins 2 2025-06-29 06:36:02 +02:00

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