laurent22 / joplin

Joplin - the privacy-focused note taking app with sync capabilities for Windows, macOS, Linux, Android and iOS.
https://joplinapp.org
Other
45.47k stars 4.94k forks source link

Displaying plugins by topic #5867

Closed placoderm closed 2 years ago

placoderm commented 2 years ago

problem

There are now more than 80 plugins in the repository. Finding the right plugin solution for your problem can be difficult.

solution

Create categories for plugins

Issues

placoderm commented 2 years ago

Here is my experiment with categories. Sub topics are just me being lazy/noncommittal. Once there are more than x number of plugins within a category it should probably just be split into two or more.

[feel free to delete this comment if it takes up too much space in the thread]

Name Description Category sub topic
Attaché Your attachment updater. Mass replacement of Joplin attachments (resources) such as resized image files, current music playlists, and any other attachments you need to one-off or regularly update within Joplin. administration attachments
Disable PDF Disables the PDF preview (and export) in Joplin for better performance administration
Simple Backup Plugin to create manual and automatic backups. administration
Victor Victor can be used to clear all your data - notes, notebooks, attachments, tags, etc. Convenient to start over. administration
Resource Search Plugin Search in Attached Resources attachments search
Conflict Resolution A plugin that makes process of resolving conflicts easier. developer
Get Notebook ID Copy/Show the ID of a notebook. For developers. A regular user won't need this. developer
Better Markdown Viewer Keep Cursor Synced Between Editor and MD Viewer display
CodeMirror Line Numbers Enables line numbers for CodeMirror editor display
Rich Markdown Helping you ditch the markdown viewer for good. editing markdown editor
Insert Date Adds a button to insert the current date (without time) into the editor. editing
Note Variables A plugin to create variables that can be accesed through all the notes. editing
Paste Special A plugin used to paste special text into Joplin editing
Table Formatter Plugin Format the table under the cursor in Markdown editor editor tables
BibTeX Use locally stored BibTeX files to integrate citation into Joplin integration citations
Email Note Send a note as an email integration email, export
Export To SSG Export a collection of notes to static site generator project. integration export
Pages Publisher Generate static blog website from your picked Joplin notes, and publish to Github Pages, with a few mouse clicks. Support preview in local integration export
Bible Quote Quote the bible direct in text editor integration
Jira Issue Retrieve Atlassian Jira issues information using their api in order to track the status of them from your Joplin notes. integration
Joplin Anki Sync Bidirectional sync between Joplin and Anki integration
joplin-hackmd Quick share notes on HackMD integration
NLR 将joplin在记笔记的同时,变成一个网文小说阅读器,a chinese net literature downloader and reader plugin for joplin. integration
PlantUML2 Render PlantUML diagram inside your Joplin notes. integration
Home Note Plugin to open a choosen note each time joplin starts. It is like homepages on browsers. interface homepage
Quick Goto Switch to designated notes using keyboard shortcuts interface shortcuts
Note Tabs Allows to open several notes at once in tabs and pin them. interface tabs
Menu items, Shortcuts, Toolbar icons Additional menu items, shortcuts, and toolbar icons, which are not part of Joplin core interface toolbar
Note list and sidebar toggle buttons Adds buttons to toggle note list and sidebar interface toolbar
Favorites Save any notebook, note, to-do, tag, or search as favorite in an extra panel view for quick access. interface
Folding in Code Mirror Editor Allows to fold parts of markdown text displayed in editor interface
Notes Station Import This plugin imports notes from QNAP Notes Station interface
Outline Outline (TOC) sidebar plugin for joplin. interface
Persistent Editor Layout Save the editor layout (editor/split view/viewer/rich text) for each note separately with custom tags. interface
Kanban Flexible kanban board plugin for all your tasks kanban
Autolinker Adds an icon to the toolbar. When clicked, it creates a link to the note with a title matching the selected text. linking interface
Automatic Backlinks to note Creates backlinks to opened note, also in automatic way linking
Copy Anchor Link Add a link icon near each heading. Copy Joplin markdown link of the specific heading to clipboard when click on the icon. linking
Copy link to active note Adds entry to right click menu in editor to get link to active note linking
Create and go to #tags and @notebooks Go to tag,notebook or note via links or via text linking
Embed Search Embeds list of links specified by search inside of note linking
Joplin User Link Plugin A Joplin plugin for custom links, like jump://?query=blabla. linking
Make All Links Searches the current note for mentions of other notes, then makes the corresponding links. Just click the new icon in the toolbar. linking
Note Link System A complete Link System for Joplin. Referrer(aka. backlink), Quick Link, Copy Anchor, and much more feature linking
Quick Links Create links to other notes linking
Admonition markdown extension Enables markdownIt admonition plugin, which enables formatting notes markdown enhancements
Container with Classes Plugin for creating block-level containers with classes for customization markdown enhancements
Quick HTML tags Create quick HTML tags. markdown enhancements
Rubi and Furigana Commands that insert appropriate and tags to formatted text to display furigana. markdown enhancements
Spoilers Create inline spoilers and spoiler blocks with title and extendable body. markdown enhancements
Hotfolder Monitors a locale folder and import the files as a new note. note management import
Combine notes Combine one or more notes note management
Complete Link This plugin adds an icon to the toolbar. When clicked, it completes the selected text into a note title (in a markdown link). note management
Convert Text To New Note Converts highlighted text to new one in same folder note management
Link Graph UI Visualize the connections between Joplin notes. note management
Note Statistics Plugin to get note statistics note management
OCR offline OCR auto/manually for images, videos, pdf documents in your Joplin notes note management
Quick Move Collection of commands to quickly move notes to other notebooks. note management
Random note Opens a random note from your vault note management
Semantically Similar Notes Show user which notes are semantically similar to the one they are looking at note management
Send snippet to different note Sends snippet of text to any other note from any notebook note management
Untagged This is a joplin plugin to find notes and todos without a tag. note management
Day Review This plugin adds an icon to the toolbar. When clicked, it makes a review of the day's created/updated/completed notes and todos. note management ?
Automate Notes Finds blocks of javascript in the current note (blocks have to start with javascript" and end with ") and runs it as a function. rendering javascript
Note overview A note overview is created based on the defined search and the specified fields. rendering note management
Markdown table calculations Plugin for automatic calculations of markdown table formulas. rendering tables
Markdown Table: Colorize Add colors to markdown table syntax to help distinguish different columns rendering tables
Markdown Table: Sortable Add the ability to sort rendered tables on the fly rendering tables
ABC Sheet Music Plugin Turns ABC text notation into sheet music rendering
Math Mode Turn your notes into a powerful calculator with inline math. rendering
turnToChart Transform markdown table into d3js chart rendering
embedded tags embeded tags tagging
Inline tags Inline tags plugin tagging
Tagging Plugin to extend the Joplin tagging menu with a coppy all tags and a tagging dialog with more control. (Formerly Copy Tags). tagging
Tags Generator Plugin for Joplin which can be used to extract keywords from note and assign them as a note's tags tagging
Templates This plugin allows you to create and use templates in Joplin. templates
GitHub Theme Joplin theme with colors of GitHub theme
macOS theme Native looking macOS theme for Joplin. Also works on non-macOS devices. theme
White Theme A white theme for joplin theme
Agenda An agenda/calendar/schedule panel for joplin that shows all uncompleted to-dos with a due date. todo
Metis A Simple Task Manager Plugin for Joplin based on Todo.txt Specification todo
Repeating To-Dos A powerful and comprehensive plugin for to-do repetition/recurrence todo
mak2002 commented 2 years ago

Can I work on this issue?

mak2002 commented 2 years ago

as @placoderm said we cant rely on plugin developers for categories so we will have to add categories ourselves. In order to do that

If possible I will make a preview for this and post it here. Is this approach good?

mak2002 commented 2 years ago

Overview

Solution

User Experience

https://user-images.githubusercontent.com/77744862/151946325-609beb0c-bcec-4bdf-9b12-fc7715bf450c.mp4

Technical solution

To achieve this,

Testing plan

mak2002 commented 2 years ago

hey @tessus , Can you please take a look at above approach and give your suggestions?

tessus commented 2 years ago

First we have to specify a few things:

But we certainly require Laurent's input here, since he makes the decisions.

e.g. I would like to see auhors to be an array as well in manifest version 2, but that's another topic. ;-)

mak2002 commented 2 years ago

Thanks tessus for your suggestions. I will wait to see @laurent22 's thoughts on this.

laurent22 commented 2 years ago

I think there's a forum thread about this where we've already discussed what could be done so you should probably start from this. I don't think I've suggested that we should set the plugin category. On the contrary I would prefer if the plugin authors do it but we would restrict the set of possible categories.

mak2002 commented 2 years ago

Thanks Laurent for the suggestions. I will update as you suggested on the forum and soon make a PR.

mak2002 commented 2 years ago

Hey @laurent22 , I came up with some questions while implementing this can you please answer those?

laurent22 commented 2 years ago

Just to confirm is it necessary for every plugin to be in at least one category and should category be required field?

Figuring that out is part of the task isn't it? You need to investigate and propose solutions - what other plugin systems do? What's the impact of making that field required, etc.

As we will be adding category...

They won't need to download the plugins again.

(Not entirely relevant to this)

Yes that's a different issue. Validation is working as it should at the moment.

By the way you chose a rather large project to work on, so please consider splitting it into smaller tasks.

laurent22 commented 2 years ago

By the way I feel it's a bit like early GSoC this project, and personally I don't have time to mentor you, I'm not sure anyone does. So it might be an issue if it turns out many decisions need to be made, and there's no-one to make them.

mak2002 commented 2 years ago

Thanks Laurent for the clarification. I will try my best to implement this project. I will split this project in smaller tasks and make the PRs accordingly.