Skip to main content

Basic Markdown Syntax

Codewars supports Markdown.

More specifically, GitHub Flavored Markdown (strict superset of CommonMark) and few Codewars extensions.

You may find below a summary of the most used ones.

Emphasis

_This is italic_
*This is also italic*

__This is bold__
**This is bold too**

___here, italic and bold___
***here, italic and bold***
*You can have **bold** in italic*
_This is italic_
*This is also italic*

__This is bold__
**This is bold too**

___here, italic and bold___
***here, italic and bold***
*You can have **bold** in italic*

Displaying code

Use code spans and code blocks to show the text as-is. Use code block to show the syntax highlighted code.

Code span

Use single backtick (`) to show the text as is inline.

Code span example: `print("example")`
Code span example: `print("example")`

Code block

For code blocks, use triple backticks (a "code fence").

```
This is the content of the code block.
       You can indent inside it as you like and it will be preserved.
```
```
This is the content of the code block.
       You can indent inside it as you like and it will be preserved.
```

The opening code fence can be followed by an optional text called the info string. When the info string is a valid language ID, python for example, the content is syntax highlighted. See the language's documentation in supported languages to find the language ID.

```python
def hello_world():
    # this is rendered
    hi = lambda: 'hello'
    print(hi())
    return 42 
```
```python
def hello_world():
    # this is rendered
    hi = lambda: 'hello'
    print(hi())
    return 42 
```

If you're writing a kata description, see Codewars' extensions like sequential and language-specific blocks.

Lists

Unordered lists

* item 1
* item 2
    * subitem 2.1
    * subitem 2.2
* item 1
* item 2
    * subitem 2.1
    * subitem 2.2

You can use -, *, and + as bullet markers.

Ordered lists

1. item 1
    1. subitem 1.1
    2. subitem 1.2
2. item 2
    * subitem (you can use unordered subitems too)
3. item 3
1. item 1
    1. subitem 1.1
    2. subitem 1.2
2. item 2
    * subitem (you can use unordered subitems too)
3. item 3

Incrementing the marker is optional so you can use the following too:

1. item 1
    1. subitem 1.1
    1. subitem 1.2
1. item 2
    * subitem (you can use unordered subitems too)
1. item 3
1. item 1
    1. subitem 1.1
    1. subitem 1.2
1. item 2
    * subitem (you can use unordered subitems too)
1. item 3

Valid URLs are automatically converted to links with link text set to the URL.

To specify a link text, use the following syntax:

[link text](https://www.example.com)
[link text](https://www.example.com)

Images

To include an image:

![alt text](address)
![alt text](address)

Blockquotes

To quote the answer of another user, for example:

> Quoted text
> Quoted text