Table of Contents
Markdown Lists
Master all types of lists in Markdown. From simple bullet points to complex nested structures and interactive task lists.
Jump to Section
Unordered Lists
Create bullet point lists using dashes, asterisks, or plus signs.
Basic Unordered List
- First item
- Second item
- Third item
- Fourth item
- First item
- Second item
- Third item
- Fourth item
Use dashes (-) to create unordered lists.
Alternative Symbols
* First item
* Second item
* Third item
+ First item
+ Second item
+ Third item
- First item
- Second item
- Third item
- First item
- Second item
- Third item
You can also use asterisks (*) or plus signs (+) for unordered lists.
Mixed Symbols
- First item
* Second item (different symbol)
+ Third item (another symbol)
- Fourth item
- First item
- Second item (different symbol)
- Third item (another symbol)
- Fourth item
While you can mix symbols, it is better to be consistent within a single list.
Lists with Multiple Paragraphs
- This is the first list item.
- Here's the second list item.
I need to add another paragraph below the second list item.
- And here's the third list item.
-
This is the first list item.
-
Here's the second list item.
I need to add another paragraph below the second list item.
-
And here's the third list item.
Indent subsequent paragraphs with 4 spaces or 1 tab to keep them part of the list item.
Tips & Best Practices
- Be consistent with your chosen symbol (-, *, or +)
- Add a space after the symbol before your text
- Use blank lines between list items for better readability
- Indent continuation paragraphs with 4 spaces
Ordered Lists
Create numbered lists using numbers followed by periods.
Basic Ordered List
1. First item
2. Second item
3. Third item
4. Fourth item
- First item
- Second item
- Third item
- Fourth item
Use numbers followed by periods to create ordered lists.
Non-Sequential Numbers
1. First item
8. Second item (number doesn't matter)
3. Third item
5. Fourth item
- First item
- Second item (number doesn't matter)
- Third item
- Fourth item
The actual numbers do not matter; Markdown will number sequentially.
Starting with Different Numbers
3. Third item
4. Fourth item
5. Fifth item
- Third item
- Fourth item
- Fifth item
Lists will start numbering from the first number you specify.
Ordered List with Multiple Paragraphs
1. This is the first list item.
2. Here's the second list item.
I need to add another paragraph below the second list item.
3. And here's the third list item.
-
This is the first list item.
-
Here's the second list item.
I need to add another paragraph below the second list item.
-
And here's the third list item.
Indent continuation paragraphs to keep them part of the list item.
Tips & Best Practices
- Always use "1." for all items if you want automatic numbering
- The first number determines the starting number
- Use ordered lists for step-by-step instructions
- Indent continuation content with 3 spaces (to align with text)
Nested Lists
Create multi-level lists by indenting list items.
Nested Unordered Lists
- First item
- Second item
- Nested item
- Another nested item
- Third item
- Nested item
- Deeply nested item
- Another deeply nested item
- Back to second level
- First item
- Second item
- Nested item
- Another nested item
- Third item
- Nested item
- Deeply nested item
- Another deeply nested item
- Back to second level
- Nested item
Indent nested items with 2-4 spaces or 1 tab.
Nested Ordered Lists
1. First item
2. Second item
1. Nested ordered item
2. Another nested ordered item
3. Third item
1. Nested item
1. Deeply nested item
2. Another deeply nested item
- First item
- Second item
- Nested ordered item
- Another nested ordered item
- Third item
- Nested item
- Deeply nested item
- Another deeply nested item
- Nested item
Nested ordered lists restart numbering at each level.
Mixed List Types
1. First ordered item
2. Second ordered item
- Unordered nested item
- Another unordered nested item
1. Ordered item nested in unordered
2. Another ordered nested item
3. Third ordered item
- Mixed nesting works well
- For complex hierarchies
- First ordered item
- Second ordered item
- Unordered nested item
- Another unordered nested item
- Ordered item nested in unordered
- Another ordered nested item
- Third ordered item
- Mixed nesting works well
- For complex hierarchies
You can mix ordered and unordered lists in nesting.
Complex Nested Structure
- Main topic 1
- Subtopic 1.1
- Detail 1.1.1
- Detail 1.1.2
- Subtopic 1.2
- Detail 1.2.1
- Main topic 2
- Subtopic 2.1
- Subtopic 2.2
- Detail 2.2.1
- Detail 2.2.2
- Sub-detail 2.2.2.1
- Main topic 1
- Subtopic 1.1
- Detail 1.1.1
- Detail 1.1.2
- Subtopic 1.2
- Detail 1.2.1
- Subtopic 1.1
- Main topic 2
- Subtopic 2.1
- Subtopic 2.2
- Detail 2.2.1
- Detail 2.2.2
- Sub-detail 2.2.2.1
Use consistent indentation (2 or 4 spaces) for each nesting level.
Tips & Best Practices
- Use consistent indentation (2 or 4 spaces per level)
- Mix ordered and unordered lists for better organization
- Keep nesting levels reasonable (3-4 levels max)
- Use different list types to show different hierarchy meanings
Task Lists
Create interactive checkbox lists for todos and task tracking.
Basic Task List
- [x] Write the press release
- [ ] Update the website
- [ ] Contact the media
- [x] Send reminder emails
- [ ] Schedule social media posts
- Write the press release
- Update the website
- Contact the media
- Send reminder emails
- Schedule social media posts
Use - [x] for completed tasks and - [ ] for incomplete tasks.
Project Task List
## Project Setup
- [x] Create repository
- [x] Set up development environment
- [x] Install dependencies
- [ ] Configure CI/CD pipeline
- [ ] Set up monitoring
- [ ] Deploy to staging
## Development
- [x] Design database schema
- [ ] Implement user authentication
- [ ] Create API endpoints
- [ ] Build frontend components
- [ ] Write tests
Project Setup
- Create repository
- Set up development environment
- Install dependencies
- Configure CI/CD pipeline
- Set up monitoring
- Deploy to staging
Development
- Design database schema
- Implement user authentication
- Create API endpoints
- Build frontend components
- Write tests
Task lists are great for project planning and tracking progress.
Nested Task Lists
- [x] Complete project phase 1
- [x] Requirements gathering
- [x] System design
- [x] Database setup
- [ ] Complete project phase 2
- [x] User authentication
- [ ] API development
- [x] User endpoints
- [ ] Product endpoints
- [ ] Order endpoints
- [ ] Frontend development
- [ ] Complete project phase 3
- [ ] Testing
- [ ] Deployment
- [ ] Documentation
- Complete project phase 1
- Requirements gathering
- System design
- Database setup
- Complete project phase 2
- User authentication
- API development
- User endpoints
- Product endpoints
- Order endpoints
- Frontend development
- Complete project phase 3
- Testing
- Deployment
- Documentation
Nested task lists help organize complex projects with sub-tasks.
Task List with Details
- [x] Research competitors
**Completed:** Analyzed top 5 competitors and documented their features.
- [ ] Design user interface
**Status:** In progress. Wireframes completed, working on mockups.
- [ ] Implement backend API
**Dependencies:** Waiting for database schema approval.
-
Research competitors
Completed: Analyzed top 5 competitors and documented their features.
-
Design user interface
Status: In progress. Wireframes completed, working on mockups.
-
Implement backend API
Dependencies: Waiting for database schema approval.
Add details and status updates below task items for better tracking.
Tips & Best Practices
- Task lists are interactive in GitHub, GitLab, and many other platforms
- Use capital X for completed: [X] also works
- Great for README files, project planning, and issue tracking
- Add progress indicators: [x] Done, [ ] Todo, [~] In Progress
Definition Lists
Create glossary-style lists with terms and their definitions.
Basic Definition List
First Term
: This is the definition of the first term.
Second Term
: This is one definition of the second term.
: This is another definition of the second term.
First Term : This is the definition of the first term.
Second Term : This is one definition of the second term. : This is another definition of the second term.
Use a colon (:) followed by a space to create definitions.
Technical Glossary
API
: Application Programming Interface - a set of protocols and tools for building software applications.
REST
: Representational State Transfer - an architectural style for designing networked applications.
JSON
: JavaScript Object Notation - a lightweight data interchange format.
HTTP
: HyperText Transfer Protocol - the foundation of data communication on the web.
API : Application Programming Interface - a set of protocols and tools for building software applications.
REST : Representational State Transfer - an architectural style for designing networked applications.
JSON : JavaScript Object Notation - a lightweight data interchange format.
HTTP : HyperText Transfer Protocol - the foundation of data communication on the web.
Definition lists are perfect for glossaries and technical documentation.
Multiple Definitions
Markdown
: A lightweight markup language with plain text formatting syntax.
: A tool for converting plain text to HTML.
: Created by John Gruber in 2004.
Git
: A distributed version control system.
: A tool for tracking changes in source code during software development.
Markdown : A lightweight markup language with plain text formatting syntax. : A tool for converting plain text to HTML. : Created by John Gruber in 2004.
Git : A distributed version control system. : A tool for tracking changes in source code during software development.
Terms can have multiple definitions by using multiple colon lines.
Tips & Best Practices
- Not all Markdown processors support definition lists
- Great for documentation, glossaries, and FAQs
- Consider using bold terms with regular paragraphs as an alternative
- Test in your target environment before using extensively
Advanced List Techniques
Advanced formatting and styling techniques for lists.
Lists with Code Blocks
1. Install the package:
```bash
npm install markdown-it
```
2. Import and configure:
```javascript
const MarkdownIt = require('markdown-it');
const md = new MarkdownIt();
```
3. Use in your application:
```javascript
const result = md.render('# Hello World');
console.log(result);
```
-
Install the package:
npm install markdown-it
-
Import and configure:
const MarkdownIt = require('markdown-it'); const md = new MarkdownIt();
-
Use in your application:
const result = md.render('# Hello World'); console.log(result);
Indent code blocks with 3 spaces to align with list text.
Lists with Quotes
- First principle:
> "Simplicity is the ultimate sophistication."
> — Leonardo da Vinci
- Second principle:
> "Make it work, make it right, make it fast."
> — Kent Beck
- Third principle:
> "Premature optimization is the root of all evil."
> — Donald Knuth
-
First principle:
"Simplicity is the ultimate sophistication." — Leonardo da Vinci
-
Second principle:
"Make it work, make it right, make it fast." — Kent Beck
-
Third principle:
"Premature optimization is the root of all evil." — Donald Knuth
Indent blockquotes to keep them part of list items.
Lists with Images
1. **Design Phase**

Create wireframes and mockups for the user interface.
2. **Development Phase**

Implement the features based on the approved designs.
3. **Testing Phase**

Thoroughly test all functionality before deployment.
-
Design Phase
Create wireframes and mockups for the user interface.
-
Development Phase
Implement the features based on the approved designs.
-
Testing Phase
Thoroughly test all functionality before deployment.
Images can be included in list items with proper indentation.
Lists with Tables
- **Comparison of Options:**
| Feature | Option A | Option B | Option C |
|---------|----------|----------|----------|
| Price | $10 | $15 | $20 |
| Speed | Fast | Medium | Slow |
| Quality | Good | Better | Best |
- **Analysis:**
Based on the comparison above, Option B provides the best balance of features.
-
Comparison of Options:
Feature Option A Option B Option C Price $10 $15 $20 Speed Fast Medium Slow Quality Good Better Best -
Analysis:
Based on the comparison above, Option B provides the best balance of features.
Complex content like tables can be embedded in list items.
Tips & Best Practices
- Maintain consistent indentation for complex list content
- Use blank lines to separate complex list items
- Combine lists with other Markdown elements for rich documentation
- Test complex list formatting across different renderers