DEV Community

Cover image for Markdown in ServiceNow: how I made rich work notes easier
Prakhar Yadav
Prakhar Yadav

Posted on

Markdown in ServiceNow: how I made rich work notes easier

I wanted a better way to write rich notes inside ServiceNow work notes. At work we type a lot of short updates, code snippets, and checklists. The default journal box in ServiceNow is fine, but writing formatted text feels slow and error prone. So I made two things: a small library and a browser extension that uses it.

Links


Why I built this

I wanted to write notes in markdown and have them appear nicely formatted in ServiceNow journal fields. The goals were simple:

  • Save time when writing work updates.
  • Support common markdown like lists, code blocks, bold, italic, and blockquotes.
  • Keep the output safe for ServiceNow journal format so pasting does not break anything.

I built the library first so the conversion logic is reusable. Then I made a small extension so I can write in a tidy editor and paste formatted output into ServiceNow with one click.


What the library does

The library takes markdown and converts it into markup that can be understood by ServiceNow journal fields. It handles:

  • Headers, paragraphs, bold, italic
  • Ordered and unordered lists
  • Inline code and code blocks
  • Blockquotes
  • Tables (basic)
  • Highlights
  • Github syle alerts
Element Syntax
Headers #, ##, ###, etc.
Bold **text** or __text__
Italic *text* or _text_
Bold + Italic ***text***
Strikethrough ~~text~~
Highlight ==text==
Inline code `code`
Code blocks ` fenced blocks
Links [text](url)
Images ![alt](url)
Unordered lists - item or * item
Ordered lists 1. item
Blockquotes > quote
Alerts > [!NOTE], > [!TIP], > [!WARNING], etc.
Tables Pipe-delimited tables
Horizontal rules --- or ***

It also takes care of ServiceNow specific quirks so the output shows correctly inside the journal editor.

Sample outputs:

screenshot 1 screenshot 2

The browser extension

The extension is tiny and focused.

  1. It gives a markdown button below the journal field (comments, work notes, etc.). Once you've typed your markdown, just click it and the text is converted in-place to the journal style entry.
  2. It gives me a small editor pop-up where I write markdown. When I click convert, the extension runs the library, converts the text, and copies the result. Then I paste into the ServiceNow work notes. This saves a lot of clicking and cleanup.
  3. It also has a context menu entry. Just write the markdown → select it -> right click → select Convert Markdown to ServiceNow

Features I built:

  • Quick editor popup
  • Live preview of converted output (optional)
  • Copy to clipboard button
  • Small settings panel to tweak conversion behavior
  • Context menu to convert selected text
  • Button next to Journal field to convert in-place

Demo


How to use it (quick)

  1. Install the extension from the repo or load it as unpacked during development.
  2. Open the popup and write your markdown.
  3. Click Convert.
  4. Paste into the ServiceNow work notes field.
  5. Confirm the formatting looks right in the journal.
Before After
Boring work notes without rich text Awesome work notes with rich text using markdown extension

A short technical note

I wrote the library in JavaScript so it is easy to publish on npm and reuse in the extension. The conversion logic is modular, so you can plug it into other tools if you want. I tried to avoid heavy parsing libraries to keep the bundle small.

If you are curious about internals, check the README on GitHub for examples and the small test suite.


What I learned

  • Small tools solve repeated friction. What took minutes every day becomes seconds.
  • Writing robust text conversion needs many small rules. Edge cases show up fast.
  • Packaging a tiny library first made the extension easier to build.

Next ideas

Open to ideas & pull requests if you feel like doing something yourself.


Where to find it

Feel free to open an issue or a PR. If you try it, I would love to hear how you use it or what features you want.


Thanks

Feel free to star the repo if you life it :)

Top comments (0)