ProseMirror toolkit for React 🎉
Installations
npm install prosemirror-trailing-node
Releases
remirror@3.0.1
Published on 01 Aug 2024
@remirror/react@3.0.1
Published on 01 Aug 2024
remirror@3.0.0
Published on 30 Jul 2024
@remirror/pm@3.0.0
Published on 30 Jul 2024
@remirror/react@3.0.0
Published on 30 Jul 2024
remirror@3.0.0-rc.9
Published on 30 Jul 2024
Developer
Developer Guide
Module System
ESM
Min. Node Version
Typescript Support
Yes
Node Version
18.20.4
NPM Version
10.7.0
Statistics
2,739 Stars
2,882 Commits
237 Forks
19 Watching
62 Branches
74 Contributors
Updated on 27 Nov 2024
Bundle Size
929.00 B
Minified
561.00 B
Minified + Gzipped
Languages
TypeScript (95.56%)
CSS (3.65%)
JavaScript (0.79%)
Total Downloads
Cumulative downloads
Total Downloads
56,578,157
Last day
-2.6%
242,480
Compared to previous day
Last week
2.6%
1,220,243
Compared to previous week
Last month
18.4%
5,031,396
Compared to previous month
Last year
185.2%
41,411,260
Compared to previous year
Daily Downloads
Weekly Downloads
Monthly Downloads
Yearly Downloads
Dependencies
2
Peer Dependencies
3
Dev Dependencies
4
A React toolkit for building cross-platform text editors, based on ProseMirror.
Motivation · Status · Documentation · Storybook · Contributing
Introduction
1import React from 'react'; 2import { BoldExtension, ItalicExtension, UnderlineExtension } from 'remirror/extensions'; 3import { Remirror, useRemirror, OnChangeJSON } from '@remirror/react'; 4 5const extensions = () => [new BoldExtension(), new ItalicExtension(), new UnderlineExtension()]; 6 7const Editor = ({ onChange }) => { 8 const { manager, state } = useRemirror({ 9 extensions, 10 content: '<p>Hi <strong>Friend</strong></p>', 11 stringHandler: 'html', 12 selection: 'end', 13 }); 14 15 return ( 16 <Remirror manager={manager} initialContent={state}> 17 <OnChangeJSON onChange={onChange} /> 18 </Remirror> 19 ); 20};
With this code snippet your editor now supports basic editing functionality.
Alternatively, take a look at our 5 minute tutorial to get up and running with an out-of-the-box WYSIWYG editor.
Installation
1npm install remirror @remirror/react @remirror/pm 2# Or 3yarn add remirror @remirror/react @remirror/pm 4# Or 5pnpm add remirror @remirror/react @remirror/pm
If you run into any issues we recommend any of the following:
- Open an issue in our github repo.
- Join our discord server and discuss the problem with our community.
- Create a pull request with your proposed improvement by clicking the edit button on the relevant page.
Whatever you decide thanks for taking the time to explore the remirror project.
Our community
Sponsors
NEXT |
Reflect |
Community spotlight
Benefex |
Cobudget |
eftax Co., Ltd. |
LabKey |
Onethread |
Documentation
View our documentation website here.
- Introduction
- Use an out-of-the-box editor
- Create your own editor
- Extensions
- Storybook
- CodeSandbox starter
Features
- A11y focused and ARIA compatible.
- I18n support via lingui.
- Great support for mobile devices.
- Out-of-the-box editors, or create own by composing extensions.
- Create your own extensions for bare-metal ProseMirror integration.
- Collaborative editing with yjs or prosemirror-collab.
- 30+ extensions for creating fully customized editing experiences.
- TypeScript as a first class citizen for great developer experience.
Getting Started
See our 5 minute tutorial to get started!
Contributing
Please read our contribution guide for details on our code of conduct, and the process for submitting pull requests. It also outlines the project structure so you can find help when navigating your way around the codebase.
Versioning
This project uses SemVer for versioning. For the versions available, see the tags on this repository.
License
This project is licensed under the MIT License - see the LICENSE file for details
No vulnerabilities found.
Reason
no dangerous workflow patterns detected
Reason
license file detected
Details
- Info: project has a license file: LICENSE:0
- Info: FSF or OSI recognized license: MIT License: LICENSE:0
Reason
no binaries found in the repo
Reason
Found 21/29 approved changesets -- score normalized to 7
Reason
0 commit(s) and 0 issue activity found in the last 90 days -- score normalized to 0
Reason
detected GitHub workflow tokens with excessive permissions
Details
- Warn: no topLevel permission defined: .github/workflows/ci.yml:1
- Warn: no topLevel permission defined: .github/workflows/docs.yml:1
- Warn: no topLevel permission defined: .github/workflows/e2e.yml:1
- Warn: no topLevel permission defined: .github/workflows/label-pull-requests.yml:1
- Warn: no topLevel permission defined: .github/workflows/label-sponsors.yml:1
- Warn: no topLevel permission defined: .github/workflows/pr-name-linter.yml:1
- Warn: no topLevel permission defined: .github/workflows/publish-pr.yml:1
- Warn: no topLevel permission defined: .github/workflows/publish-v1.yml:1
- Warn: no topLevel permission defined: .github/workflows/publish-v3.yml:1
- Warn: no topLevel permission defined: .github/workflows/publish.yml:1
- Warn: no topLevel permission defined: .github/workflows/rebase.yml:1
- Warn: no topLevel permission defined: .github/workflows/storybook.yml:1
- Warn: no topLevel permission defined: .github/workflows/version.yml:1
- Info: no jobLevel write permissions found
Reason
no effort to earn an OpenSSF best practices badge detected
Reason
security policy file not detected
Details
- Warn: no security policy file detected
- Warn: no security file to analyze
- Warn: no security file to analyze
- Warn: no security file to analyze
Reason
dependency not pinned by hash detected -- score normalized to 0
Details
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:72: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/ci.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:108: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/ci.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:129: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/ci.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/ci.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/ci.yml:56: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/ci.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/docs.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/docs.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yml:30: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/docs.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/docs.yml:51: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/docs.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/e2e.yml:26: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/e2e.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/label-pull-requests.yml:14: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/label-pull-requests.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/label-sponsors.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/label-sponsors.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/pr-name-linter.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/pr-name-linter.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/pr-name-linter.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/pr-name-linter.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-pr.yml:16: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-pr.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-pr.yml:38: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-pr.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-v1.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v1.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v1.yml:45: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v1.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v1.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v1.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v1.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v1.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v1.yml:65: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v1.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v1.yml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v1.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v1.yml:81: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v1.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish-v3.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v3.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v3.yml:45: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v3.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v3.yml:50: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v3.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v3.yml:60: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v3.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v3.yml:65: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v3.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v3.yml:76: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v3.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish-v3.yml:81: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish-v3.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/publish.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yml:44: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yml:49: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yml:59: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yml:64: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yml:75: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/publish.yml:80: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/publish.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/rebase.yml:13: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/rebase.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/rebase.yml:18: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/rebase.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/storybook.yml:24: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/storybook.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/storybook.yml:40: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/storybook.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/storybook.yml:54: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/storybook.yml/main?enable=pin
- Warn: GitHub-owned GitHubAction not pinned by hash: .github/workflows/version.yml:28: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/version.yml/main?enable=pin
- Warn: third-party GitHubAction not pinned by hash: .github/workflows/version.yml:37: update your workflow using https://app.stepsecurity.io/secureworkflow/remirror/remirror/version.yml/main?enable=pin
- Warn: npmCommand not pinned by hash: .github/workflows/pr-name-linter.yml:21
- Info: 0 out of 17 GitHub-owned GitHubAction dependencies pinned
- Info: 0 out of 26 third-party GitHubAction dependencies pinned
- Info: 0 out of 1 npmCommand dependencies pinned
Reason
project is not fuzzed
Details
- Warn: no fuzzer integrations found
Reason
SAST tool is not run on all commits -- score normalized to 0
Details
- Warn: 0 commits out of 30 are checked with a SAST tool
Reason
52 existing vulnerabilities detected
Details
- Warn: Project is vulnerable to: GHSA-hpx4-r86g-5jrg
- Warn: Project is vulnerable to: GHSA-prr3-c3m5-p7q2
- Warn: Project is vulnerable to: GHSA-67hx-6x53-jw92
- Warn: Project is vulnerable to: GHSA-93q8-gq69-wqmw
- Warn: Project is vulnerable to: GHSA-4w2v-q235-vp99
- Warn: Project is vulnerable to: GHSA-cph5-m8f7-6c5x
- Warn: Project is vulnerable to: GHSA-wf5p-g6vw-rhxx
- Warn: Project is vulnerable to: GHSA-qwcr-r2fm-qrc7
- Warn: Project is vulnerable to: GHSA-grv7-fg5c-xmjg
- Warn: Project is vulnerable to: GHSA-pxg6-pf52-xh8x
- Warn: Project is vulnerable to: GHSA-3xgq-45jj-v275
- Warn: Project is vulnerable to: GHSA-w573-4hg7-7wgq
- Warn: Project is vulnerable to: GHSA-jrvm-mcxc-mf6m
- Warn: Project is vulnerable to: GHSA-ghr5-ch3p-vcr6
- Warn: Project is vulnerable to: GHSA-rv95-896h-c2vc
- Warn: Project is vulnerable to: GHSA-qw6h-vgh9-j6wx
- Warn: Project is vulnerable to: GHSA-jchw-25xp-jwwc
- Warn: Project is vulnerable to: GHSA-cxjh-pqwp-8mfp
- Warn: Project is vulnerable to: GHSA-74fj-2j2h-c42q
- Warn: Project is vulnerable to: GHSA-pw2r-vq6v-hr8c
- Warn: Project is vulnerable to: GHSA-pfrx-2q88-qq97
- Warn: Project is vulnerable to: GHSA-rc47-6667-2j5j
- Warn: Project is vulnerable to: GHSA-78xj-cgh5-2h22
- Warn: Project is vulnerable to: GHSA-2p57-rm9w-gvfp
- Warn: Project is vulnerable to: GHSA-8cf7-32gw-wr33
- Warn: Project is vulnerable to: GHSA-hjrf-2m68-5959
- Warn: Project is vulnerable to: GHSA-qwph-4952-7xr6
- Warn: Project is vulnerable to: GHSA-76p3-8jx3-jpfq
- Warn: Project is vulnerable to: GHSA-3rfm-jhwj-7488
- Warn: Project is vulnerable to: GHSA-hhq3-ff78-jv3g
- Warn: Project is vulnerable to: GHSA-p6mc-m468-83gw
- Warn: Project is vulnerable to: GHSA-952p-6rrq-rcjv
- Warn: Project is vulnerable to: GHSA-f8q6-p94x-37v3
- Warn: Project is vulnerable to: GHSA-rp65-9cf3-cjxr
- Warn: Project is vulnerable to: GHSA-9wv6-86v2-598j
- Warn: Project is vulnerable to: GHSA-7fh5-64p2-3v2j
- Warn: Project is vulnerable to: GHSA-hrpp-h998-j3pp
- Warn: Project is vulnerable to: GHSA-gcx4-mw62-g8wm
- Warn: Project is vulnerable to: GHSA-c2qf-rxjj-qqgw
- Warn: Project is vulnerable to: GHSA-m6fv-jmcg-4jfg
- Warn: Project is vulnerable to: GHSA-cm22-4g7w-348p
- Warn: Project is vulnerable to: GHSA-54xq-cgqr-rpm3
- Warn: Project is vulnerable to: GHSA-325j-24f4-qv5x
- Warn: Project is vulnerable to: GHSA-vx3p-948g-6vhq
- Warn: Project is vulnerable to: GHSA-8266-84wp-wv5c
- Warn: Project is vulnerable to: GHSA-f5x3-32g6-xq36
- Warn: Project is vulnerable to: GHSA-4wf5-vphf-c2xc
- Warn: Project is vulnerable to: GHSA-72xf-g2v4-qvf3
- Warn: Project is vulnerable to: GHSA-w5p7-h5w8-2hfq
- Warn: Project is vulnerable to: GHSA-fhg7-m89q-25r3
- Warn: Project is vulnerable to: GHSA-j8xg-fqg3-53r7
- Warn: Project is vulnerable to: GHSA-3h5v-q93c-6h6q
Score
3.5
/10
Last Scanned on 2024-11-18
The Open Source Security Foundation is a cross-industry collaboration to improve the security of open source software (OSS). The Scorecard provides security health metrics for open source projects.
Learn More