Advanced Markdown Features

Explore task lists, strikethrough, footnotes, and more


Advanced Markdown Features

This page demonstrates additional markdown capabilities for creating rich educational content.

Task Lists

Perfect for exercises, learning objectives, and checklists:

Example: Learning Checklist

  • Understand basic markdown syntax
  • Learn about headings and formatting
  • Master advanced features
  • Create your first tutorial
  • Share your knowledge with others

Example: Lab Exercise

Complete the following tasks:

  • Install Python 3.10 or higher
  • Set up a virtual environment
  • Install required dependencies
  • Run the test suite
  • Fix any failing tests

Strikethrough

Use strikethrough to show corrections, deprecations, or outdated information:

Example: Corrections

The Earth is flat The Earth is an oblate spheroid.

Example: Deprecated API

Use oldFunction() Use newFunction() instead (as of version 2.0)

Example: Common Mistakes

When working with arrays in JavaScript:

array.length gives you the last index array.length gives you the count of elements. The last index is array.length - 1.

URLs are automatically converted to clickable links:

Check out the official documentation at https://katex.org/ for more math rendering options.

Visit https://github.com for open source projects.

Learn more at https://developer.mozilla.org/en-US/docs/Web/JavaScript

Footnotes

Add scholarly references and additional context without cluttering your main text:

Example: Academic Reference

The Pythagorean theorem1 is one of the most famous theorems in mathematics. It states that in a right triangle, the square of the hypotenuse equals the sum of the squares of the other two sides2.

Example: Technical Details

Modern web browsers use the V8 engine3 for JavaScript execution, which provides just-in-time compilation4 for improved performance.

Description Lists

Perfect for glossaries, terminology, and concept definitions:

Example: Programming Concepts

Variable
A named storage location in memory that holds a value which can change during program execution.
Function
A reusable block of code that performs a specific task and can accept parameters.
Algorithm
A step-by-step procedure for solving a problem or accomplishing a task.

Example: Data Structures

Array
An ordered collection of elements, typically of the same type, stored in contiguous memory locations.
Linked List
A linear data structure where elements are stored in nodes, and each node points to the next node in the sequence.
Hash Table
A data structure that implements an associative array, mapping keys to values using a hash function.
Stack
A Last-In-First-Out (LIFO) data structure where elements are added and removed from the same end.
Queue
A First-In-First-Out (FIFO) data structure where elements are added at one end and removed from the other.

Example: Web Technologies

HTML
HyperText Markup Language - the standard markup language for creating web pages.
CSS
Cascading Style Sheets - used to describe the presentation of HTML documents.
JavaScript
A high-level, interpreted programming language that enables interactive web pages.

Combining Features

You can combine multiple markdown features for rich content:

Example: Complete Tutorial Section

steps

  1. Set up your environment

    • Install Node.js from https://nodejs.org
    • Install a code editor (VS Code recommended)
    • Install Git for version control
  2. Create your project

    Initialize a new project with the following command:

    npm init -y
    
    Bash

    Don't use npm init Always use npm init -y for quick setup.

  3. Install dependencies

    You'll need several packages5:

    npm install express mongoose dotenv
    
    Bash
  4. Configure your database

    MongoDB
    A NoSQL database that stores data in flexible, JSON-like documents.
    Connection String
    A URL that specifies the location and credentials for your database.

Task List with Strikethrough

Track completed and deprecated items:

  • Implement user registration Completed
  • Add email verification Completed
  • Implement password reset
  • Add two-factor authentication
  • Use MD5 for passwords Deprecated - Use bcrypt instead

Mathematical Definitions with Description Lists

Term
$\lim_{x \to \infty} f(x) = L$
Definition
The limit of $f(x)$ as $x$ approaches infinity equals $L$ if for every $\epsilon > 0$, there exists an $M$ such that $|f(x) - L| < \epsilon$ whenever $x > M$.
Derivative
$f'(x) = \lim_{h \to 0} \frac{f(x+h) - f(x)}{h}$
Integral
$\int_a^b f(x) \, dx = \lim_{n \to \infty} \sum_{i=1}^{n} f(x_i) \Delta x$

Best Practices

Summary

You now have access to:

Feature Syntax Use Case
Task Lists - [ ] Item Exercises, checklists
Strikethrough ~~text~~ Corrections, deprecations
Autolinks Plain URLs Quick references
Footnotes [^label] Citations, details
Description Lists Term\n: Definition Glossaries, concepts

  1. Named after the ancient Greek mathematician Pythagoras (c. 570 – c. 495 BC). 

  2. The equation is written as: $a^2 + b^2 = c^2$ 

  3. V8 is Google's open source high-performance JavaScript and WebAssembly engine, written in C++. 

  4. Just-in-time (JIT) compilation compiles code during execution rather than before execution, allowing for runtime optimizations. 

  5. npm (Node Package Manager) is the default package manager for Node.js. 

  6. Keep footnotes concise and relevant. Link to external resources for deeper dives.