mirror of
https://github.com/johannesjo/super-productivity.git
synced 2026-07-17 16:37:43 +00:00
* docs(wiki): add new Quickstart to help with using Sync There is a slew of notes that try to explain or show this so a Quickstart can help bring everything into one place. * docs(wiki): combine "First Steps" into single note with relevant links * docs(wiki): update index notes * docs(wiki): fix remaining broken external links * docs(wiki): add core developer How-To guides to orient first-time devs The majority of the documentation is currently spread across several files ins "docs/" and READMEs. Over time these can be consolidated into the wiki while retaining the common CONTRIBUTING.md as a valid entry point. * docs(wiki): add basic guides for plugins and issue integration As with the core development docs, there is too much to add here right now. These notes will serve as a simple entry to other resources. * docs(wiki): add basic reference note for theming * docs(wiki): add basic Translation guide * docs(wiki): rename Theming and linting to clean up headings * docs(wiki): add heading lint exception for GH-specific nav pages; rework sidebar and index pages Sidebar should be a quick-access for the more common topics grouped thematically with the X.00 notes simply enumerating all the notes where appropriate.
1.7 KiB
1.7 KiB
Add a New Issue Integration
How to add a new issue tracker (e.g. Jira, GitHub, GitLab-style) to Super Productivity.
New integrations implement the shared IssueProvider pattern: models, API service, and a common-interfaces service that implements IssueServiceInterface. The integration is then registered in core issue model and config.
High-level Steps
- Create a directory under
src/app/features/issue/providers/(e.g.my-provider/). - Add model files (config and issue types), API service, and a common-interfaces service implementing
IssueServiceInterface. - Add constants and config form section; implement required interface methods (e.g.
isEnabled,testConnection$,getById$,searchIssues$,getFreshDataForIssueTask). - Register the provider in
issue.model.ts(IssueProviderKey, IssueIntegrationCfg, IssueIntegrationCfgs, IssueProvider),issue.const.ts(type constant, ISSUE_PROVIDER_TYPES, DEFAULT_ISSUE_PROVIDER_CFGS, ISSUE_PROVIDER_FORM_CFGS_MAP), and ensure the issue service injects and uses it. - Optionally add UI (issue content, header, config) in provider-specific subfolders.
- Run the app, add the integration in settings, and test connection and issue flow.
Full Guide
Step-by-step instructions, file templates, and the exact interface methods to implement are in the repository:
Use an existing provider (e.g. GitHub or GitLab under src/app/features/issue/providers/) as a reference.