The following page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features or functionality remain at the sole discretion of GitLab Inc.
Stage | plan |
Content Last Reviewed | 2024-08-05 |
Thanks for visiting the rich text editor direction page. The rich text editor is a what-you-see-is-what-you-get (WYSIWYG) editor for Markdown content maintained by the Knowledge group. The rich text editor is a cornerstone of Knowledge group's contribution to helping GitLab become an AllOps platform. More information about Knowledge group's priorities and direction can be found on the Knowledge group direction page, and additional questions can be directed to Matthew Macfarlane, Product Manager in the Plan Stage for Knowledge group (E-Mail).
One aspect that sets GitLab's rich text editor apart is how it preserves the Markdown format. While other editors use intermediate file formats or require saving changes to a database, the GitLab rich text editor reads and writes valid Markdown, allowing collaboration from any editor and preserving the Markdown source.
Everyone!
For many, writing in Markdown is a barrier to collaboration. We recognize that as GitLab grows, so does the need for a more usable editing experience. Traditionally, we have served developers, but over time, we have begun serving more non-technical users. Remembering the syntax for image references or working with long tables can be tedious, even for those who are relatively experienced with the syntax. Still, Markdown as a common denominator for content enables efficient collaboration in a version-controlled environment. The rich text editor aims to break down these barriers by providing a rich editing experience and an extensible foundation on which we can build custom editing interfaces for things like diagrams, content embeds, media management, and more.
There are many contributors to GitLab for whom writing Markdown is like writing a second language. We don't want to take that super power away from anyone. That's why writing in the rich text editor will support standard Markdown shortcuts. For example, typing ##
followed by your content will create a rendered Header 2 and let you continue working without removing your fingers from the keyboard.
We started by implementing the rich text editor in the GitLab Wiki, MRs, Issues, and Epics in our 16.2 release. Now we are working to implementing the rich text editor across the rest of GitLab. We most recently placed the rich text editor in design notes, comments templates, release descriptions, and requirement descriptions.
We plan to make the rich text editor available in the Web Editor and Web IDE to make it easier for everyone to contribute to Markdown content in a repository. Seamless integration of the rich text editor in the web editing experience will realize nearly all the benefits of the Static Site Editor but we are no longer limiting it to Middleman-based projects configured to use the Static Site Editor.
At a really high level, the rich text editor:
We have written comprehensive development guidelines that explain what's going on under the hood and can help get you up to speed if you're interested in contributing an extension to the rich text editor.
Our current focus is on expanding the use of the rich text editor to edit Markdown across GitLab and Preserve markdown using the Rust backend based parser. We're looking forward to releasing these improvements!