MCPcopy
hub / github.com/laurent22/joplin

github.com/laurent22/joplin @ios-v20.0.1 sqlite

repository ↗ · DeepWiki ↗ · release ios-v20.0.1 ↗
9,372 symbols 26,078 edges 1,555 files 189 documented · 2%
README

Donate using PayPal Sponsor on GitHub Become a patron Donate using IBAN


Joplin is a free, open source note taking and to-do application, which can handle a large number of notes organised into notebooks. The notes are searchable, can be copied, tagged and modified either from the applications directly or from your own text editor. The notes are in Markdown format.

Notes exported from Evernote via .enex files can be imported into Joplin, including the formatted content (which is converted to Markdown), resources (images, attachments, etc.) and complete metadata (geolocation, updated time, created time, etc.). Plain Markdown files can also be imported.

The notes can be synchronised with various cloud services including Nextcloud, Dropbox, OneDrive, WebDAV or the file system (for example with a network directory). When synchronising the notes, notebooks, tags and other metadata are saved to plain text files which can be easily inspected, backed up and moved around.

The application is available for Windows, Linux, macOS, Android and iOS (the terminal app also works on FreeBSD). A Web Clipper, to save web pages and screenshots from your browser, is also available for Firefox and Chrome.

Installation

Three types of applications are available: for the desktop (Windows, macOS and Linux), for mobile (Android and iOS) and for terminal (Windows, macOS, Linux and FreeBSD). All applications have similar user interfaces and can synchronise with each other.

Desktop applications

Operating System Download
Windows (32 and 64-bit) Get it on Windows
macOS Get it on macOS
Linux Get it on Linux

On Windows, you may also use the Portable version. The portable application allows installing the software on a portable device such as a USB key. Simply copy the file JoplinPortable.exe in any directory on that USB key ; the application will then create a directory called "JoplinProfile" next to the executable file.

On Linux, the recommended way is to use the following installation script as it will handle the desktop icon too:

wget -O - https://raw.githubusercontent.com/laurent22/joplin/dev/Joplin_install_and_update.sh | bash

Mobile applications

Operating System Download Alt. Download
Android Get it on Google Play or download the APK file: 64-bit 32-bit
iOS Get it on the App Store -

Terminal application

Operating system Method
macOS, Linux, or Windows (via WSL) Important: First, install Node 12+.

NPM_CONFIG_PREFIX=~/.joplin-bin npm install -g joplin

sudo ln -s ~/.joplin-bin/bin/joplin /usr/bin/joplin

By default, the application binary will be installed under ~/.joplin-bin. You may change this directory if needed. Alternatively, if your npm permissions are setup as described here (Option 2) then simply running npm -g install joplin would work.

To start it, type joplin.

For usage information, please refer to the full Joplin Terminal Application Documentation.

Unsupported methods

There are other ways to install the terminal application. However, they are not supported and problems must be reported to the upstream projects.

Operating system Method
macOS brew install joplin
Arch Linux An Arch Linux package is available here. To install it, use an AUR wrapper such as yay: yay -S joplin. Both the CLI tool (type joplin) and desktop app (type joplin-desktop) are packaged. You can also install a compiled version with the chaotic-aur repository. For support, please go to the GitHub repo. If you are interested in pre-release you have joplin-beta.

Web Clipper

The Web Clipper is a browser extension that allows you to save web pages and screenshots from your browser. For more information on how to install and use it, see the Web Clipper Help Page.

Sponsors


avanderberg |

c-nagy |

cabottech |

chr15m | |

chrootlogin |

dbrandonjohnson |

fbloise |

h4sh5 | |

Jesssullivan |

joesfer |

konishi-t |

maxtruxa | |

mcejp |

nicholashead |

piccobit |

ravenscroftj | |

thismarty |

thomasbroussard |

wasteisobscene | |

Table of contents

Features

  • Desktop, mobile and terminal applications.
  • Web Clipper for Firefox and Chrome.
  • End To End Encryption (E2EE).
  • Note history (revisions).
  • Synchronisation with various services, including Nextcloud, Dropbox, WebDAV and OneDrive.
  • Offline first, so the

Extension points exported contracts — how you extend this code

IContextKeyExpression (Interface)
(no doc) [24 implementers]
packages/lib/services/contextkey/contextkey.ts
Handler (Interface)
(no doc) [2 implementers]
packages/fork-htmlparser2/src/Parser.ts
JoplinViewsDialogs (Interface)
(no doc) [2 implementers]
packages/app-desktop/services/plugins/PlatformImplementation.ts
Command (Interface)
(no doc) [2 implementers]
packages/plugins/ToggleSidebars/api/types.ts
Command (Interface)
(no doc) [2 implementers]
packages/app-cli/tests/support/plugins/multi_selection/api/types.ts
Command (Interface)
(no doc) [2 implementers]
packages/generator-joplin/generators/app/templates/api/types.ts
DOMUtils (Interface)
* Copyright (c) Tiny Technologies, Inc. All rights reserved. * Licensed under the LGPL or a commercial license. * For
Assets/TinyMCE/JoplinLists/src/main/ts/core/Delete.ts
Sponsor (Interface)
(no doc)
packages/tools/update-readme-sponsors.ts

Core symbols most depended-on inside this repo

push
called by 1922
packages/lib/TaskQueue.js
_
called by 1046
packages/lib/locale.ts
save
called by 824
packages/lib/models/Tag.ts
info
called by 591
packages/lib/Logger.ts
map
called by 457
packages/lib/services/contextkey/contextkey.ts
push
called by 362
packages/lib/services/UndoRedoService.ts
resolve
called by 280
packages/app-mobile/utils/fs-driver-rn.ts
value
called by 274
packages/lib/InMemoryCache.ts

Shape

Method 3,540
Function 3,523
Class 1,287
Interface 810
Enum 212

Languages

TypeScript99%
Java1%

Modules by API surface

packages/renderer/assets/mermaid/mermaid.min.js918 symbols
packages/app-desktop/gui/NoteEditor/NoteBody/TinyMCE/plugins/lists.js219 symbols
packages/lib/services/contextkey/contextkey.ts200 symbols
packages/lib/models/Setting.ts79 symbols
packages/fork-htmlparser2/src/Tokenizer.ts73 symbols
docs/js/jquery-3.2.1.slim.min.js71 symbols
Assets/WebsiteAssets/js/jquery-3.2.1.slim.min.js71 symbols
packages/lib/models/Note.ts60 symbols
packages/lib/models/BaseItem.ts59 symbols
packages/app-mobile/components/screens/Note.tsx58 symbols
packages/lib/testing/test-utils.ts57 symbols
packages/lib/services/EncryptionService.ts55 symbols

Dependencies from manifests, versioned

@babel/core7.11.6 · 1×
@babel/runtime7.11.2 · 1×
@ephox/agarlatest · 1×
@ephox/bedrocklatest · 1×
@ephox/mcagarlatest · 1×
@ephox/oxide-icons-tools2.1.1 · 1×
@ephox/swaglatest · 1×
@ephox/tslint-ruleslatest · 1×
@fortawesome/fontawesome-free5.13.0 · 1×
@joplin/fork-htmlparser24.1.26 · 1×
@joplin/fork-sax1.2.30 · 1×
@joplin/lib1.8.2 · 1×

For agents

$ claude mcp add joplin \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact