Skip to content
/ ixora Public

An extension pack to make interactive markdown editors using CodeMirror 6. Mirror of https://codeberg.org/retronav/ixora

Notifications You must be signed in to change notification settings

retronav/ixora

Repository files navigation

Ixora logo

Ixora

CI build npm version

WARNING: Ixora is under heavy development, but is quite usable.

Ixora is a CodeMirror 6 extension pack to make writing Markdown fun and beautiful.

This library includes:

  • Proper heading font sizes
  • Hidden decoration marks (*italic* -> italic but style is preserved)
  • Auto link detection
  • Support for ID links (eg. [Foo bar](#foo-bar))
  • YAML frontmatter support
  • Styling for lots of Markdown elements
  • Lots more?

Installation

  1. Install the @retronav/ixora package using the package manager of your choice.

  2. Import the extensions you need

    import { headings, codeblock, list } from '@retronav/ixora';

    Or import all of them at once

    import ixora from '@retronav/ixora';
  3. Add them in the extensions parameter of your CodeMirror editor creation function.

    const editor = new EditorView({
    	state: EditorState.create({
    		extensions: [
    			// If you import all at once
    			ixora,
    
    			// ...
    
    			// If you import indivivually
    			headings(),
    			codeblock(),
    			lists()
    
    			// ...
    		]
    	})
    });

Check test/util.ts for an example of how to use Ixora with CodeMirror.

Additional information

License

The source code is licensed under the Apache License 2.0.

The artwork is licensed under CC BY 4.0.

The logo

The logo of this project is derived from the Markdown Mark by Dustin Curtis. The logo uses the color #FF2400 (scarlet). Instead of the arrow pointing downward, there is an ixora flower beside the "M" which can be thought of as an arrow pointing upward.