# Ordinary

Welcome to your website!

## Build

```sh
ordinary build -v -i
```

## Start

```sh
ordinary start --stdio-logs --insecure
```

## Making Changes

### Add a Post

To create a new blog post, add a Markdown file to the `content/posts` directory in the following format:

```md
---
uuid: <uuid String>
title: <Post Title String>
date: <unix timestamp in seconds>
---

<Markdown formatted body>
```

Example "Second Post" at `content/posts/number-2.md`:

```md
---
uuid: cf5daf86-37d7-4cd0-99cc-780054e08de8
title: Number 2
date: 1777574146
---

Second post.
```

View at: <http://localhost:4433/number-2>

### Generate Timestamps and UUIDs

```sh
## timestamp
ordinary timestamp
```

```sh
## UUID
ordinary uuid
```

### Caching

Even in development mode, that HTTP cache configuration remains in place, so if you don't see 
changes after adding a post or modifying the templates/assets, you may need to disable your browser cache.

While there is not currently support for a `--no-cache` flag on `ordinary start` one may be added
in the future.

## CLI Documentation

```sh
ordinary --help
```

See: [docs/cli-reference.md](https://codeberg.org/ordinarylabs/Ordinary/src/branch/main/core/apps/cli/docs/cli-reference.md).

## CLI Completions

Add this line to your `.zshrc`, `.bashrc`, etc. to gain support for dynamic tab completions.

```sh
## ~/.bashrc
eval "$(COMPLETE='bash' ordinary)"

## ~/.zshrc
eval "$(COMPLETE='zsh' ordinary)"
```

See: [clap_complete](https://docs.rs/clap_complete/latest/clap_complete/env/index.html).