001 · 2026-02-07

Hello World

The start of publishing some random thoughts, notes and guides. Mostly for me, as I find writing helps shake the rust off, but maybe something I write will be useful to someone else.

The rest of this post serves as a style guide and test entry for the markdown renderer.


Heading (first level)

This is body text following an h1. It should feel distinct from the heading above with clear visual separation.

Heading (second level)

This is body text following an h2. Used for major sections within an entry.

Heading (third level)

This is body text following an h3. Used for subsections and grouping related content.

Heading (fourth level)

This is body text following an h4. The smallest heading level, useful for minor callouts.

Paragraphs

A short paragraph. Body text should feel comfortable to read at any viewport width — not too wide, not too cramped.

A longer paragraph to test line length and rhythm. The quick brown fox jumps over the lazy dog. Pack my box with five dozen liquor jugs. How vexingly quick daft zebras jump. The five boxing wizards jump quickly at dawn. Sphinx of black quartz, judge my vow.

Emphasis and inline elements

This is bold text, this is italic text, and this is bold italic. Here is some inline code and here is strikethrough text.

Links

An internal link and an external link that opens in a new window.

Unordered list

  • First item with some detail about a thing
  • Second item that spans a little longer to test how wrapping behaves inside list items
  • Third item
  • Fourth item

Ordered list

  1. Step one — gather requirements
  2. Step two — write the code
  3. Step three — ship it
  4. Step four — iterate

Blockquote

The best way to predict the future is to invent it.

— Alan Kay

Horizontal rule


Code blocks

A JavaScript function:

function greet(name) {
    const message = `Hello, ${name}!`;
    console.log(message);
    return message;
}

Some PHP:

$entries = collect($files)
    ->map(fn (string $file) => $parser->parse(file_get_contents($file)))
    ->sortByDesc('date')
    ->values();

A block with no language hint:

APP_KEY=supersecret
APP_ENV=production
APP_DEBUG=false

Table

Element Tag Styled
Heading h1h4 Yes
Paragraph p Yes
Blockquote blockquote Yes
Code block pre > code Yes
Table table You're looking at it

Images

A small inline-sized image:

Retro terminal

A medium landscape image:

Mountain lake

A full-width image:

Aerial coastline

A tall portrait image:

Forest path

YouTube embed

Nested list

  • Outer item one
    • Nested item A
    • Nested item B
  • Outer item two
    • Nested item C

Inline code in context

Run php artisan serve to start the dev server. The config lives in .env at the project root. Use npm run build for production assets.