# Command-Line Help for `ordinary`
This document contains the help content for the `ordinary` command-line program.
**Command Overview:**
* [`ordinary`↴](#ordinary)
* [`ordinary new`↴](#ordinary-new)
* [`ordinary ssg`↴](#ordinary-ssg)
* [`ordinary ssg init`↴](#ordinary-ssg-init)
* [`ordinary build`↴](#ordinary-build)
* [`ordinary start`↴](#ordinary-start)
* [`ordinary publish`↴](#ordinary-publish)
* [`ordinary templates`↴](#ordinary-templates)
* [`ordinary templates add`↴](#ordinary-templates-add)
* [`ordinary templates upload`↴](#ordinary-templates-upload)
* [`ordinary content`↴](#ordinary-content)
* [`ordinary content definition`↴](#ordinary-content-definition)
* [`ordinary content definition add`↴](#ordinary-content-definition-add)
* [`ordinary content definition edit`↴](#ordinary-content-definition-edit)
* [`ordinary content object`↴](#ordinary-content-object)
* [`ordinary content object add`↴](#ordinary-content-object-add)
* [`ordinary content object edit`↴](#ordinary-content-object-edit)
* [`ordinary content object delete`↴](#ordinary-content-object-delete)
* [`ordinary content update`↴](#ordinary-content-update)
* [`ordinary assets`↴](#ordinary-assets)
* [`ordinary assets write`↴](#ordinary-assets-write)
* [`ordinary models`↴](#ordinary-models)
* [`ordinary models add`↴](#ordinary-models-add)
* [`ordinary models items`↴](#ordinary-models-items)
* [`ordinary models items list`↴](#ordinary-models-items-list)
* [`ordinary actions`↴](#ordinary-actions)
* [`ordinary actions add`↴](#ordinary-actions-add)
* [`ordinary actions install`↴](#ordinary-actions-install)
* [`ordinary integrations`↴](#ordinary-integrations)
* [`ordinary integrations add`↴](#ordinary-integrations-add)
* [`ordinary accounts`↴](#ordinary-accounts)
* [`ordinary accounts register`↴](#ordinary-accounts-register)
* [`ordinary accounts login`↴](#ordinary-accounts-login)
* [`ordinary accounts logout`↴](#ordinary-accounts-logout)
* [`ordinary accounts access`↴](#ordinary-accounts-access)
* [`ordinary accounts access get`↴](#ordinary-accounts-access-get)
* [`ordinary accounts password`↴](#ordinary-accounts-password)
* [`ordinary accounts password reset`↴](#ordinary-accounts-password-reset)
* [`ordinary accounts password forgot`↴](#ordinary-accounts-password-forgot)
* [`ordinary accounts mfa`↴](#ordinary-accounts-mfa)
* [`ordinary accounts mfa reset`↴](#ordinary-accounts-mfa-reset)
* [`ordinary accounts mfa lost`↴](#ordinary-accounts-mfa-lost)
* [`ordinary accounts recovery-codes`↴](#ordinary-accounts-recovery-codes)
* [`ordinary accounts recovery-codes reset`↴](#ordinary-accounts-recovery-codes-reset)
* [`ordinary accounts delete`↴](#ordinary-accounts-delete)
* [`ordinary accounts invite`↴](#ordinary-accounts-invite)
* [`ordinary accounts current`↴](#ordinary-accounts-current)
* [`ordinary accounts list`↴](#ordinary-accounts-list)
* [`ordinary accounts switch`↴](#ordinary-accounts-switch)
* [`ordinary app`↴](#ordinary-app)
* [`ordinary app deploy`↴](#ordinary-app-deploy)
* [`ordinary app migrate`↴](#ordinary-app-migrate)
* [`ordinary app kill`↴](#ordinary-app-kill)
* [`ordinary app restart`↴](#ordinary-app-restart)
* [`ordinary app erase`↴](#ordinary-app-erase)
* [`ordinary app download`↴](#ordinary-app-download)
* [`ordinary app logs`↴](#ordinary-app-logs)
* [`ordinary app logs sync`↴](#ordinary-app-logs-sync)
* [`ordinary app logs sync info`↴](#ordinary-app-logs-sync-info)
* [`ordinary app logs sync file`↴](#ordinary-app-logs-sync-file)
* [`ordinary app logs sync all`↴](#ordinary-app-logs-sync-all)
* [`ordinary app logs search`↴](#ordinary-app-logs-search)
* [`ordinary app accounts`↴](#ordinary-app-accounts)
* [`ordinary app accounts list`↴](#ordinary-app-accounts-list)
* [`ordinary app routes`↴](#ordinary-app-routes)
* [`ordinary secrets`↴](#ordinary-secrets)
* [`ordinary secrets store`↴](#ordinary-secrets-store)
* [`ordinary root`↴](#ordinary-root)
* [`ordinary root info`↴](#ordinary-root-info)
* [`ordinary root logs`↴](#ordinary-root-logs)
* [`ordinary root logs sync`↴](#ordinary-root-logs-sync)
* [`ordinary root logs sync info`↴](#ordinary-root-logs-sync-info)
* [`ordinary root logs sync file`↴](#ordinary-root-logs-sync-file)
* [`ordinary root logs sync all`↴](#ordinary-root-logs-sync-all)
* [`ordinary root logs search`↴](#ordinary-root-logs-search)
* [`ordinary root lock`↴](#ordinary-root-lock)
* [`ordinary root unlock`↴](#ordinary-root-unlock)
* [`ordinary doctor`↴](#ordinary-doctor)
* [`ordinary utils`↴](#ordinary-utils)
* [`ordinary utils uuid`↴](#ordinary-utils-uuid)
* [`ordinary utils timestamp`↴](#ordinary-utils-timestamp)
* [`ordinary utils html`↴](#ordinary-utils-html)
* [`ordinary utils html minify`↴](#ordinary-utils-html-minify)
* [`ordinary utils css`↴](#ordinary-utils-css)
* [`ordinary utils css minify`↴](#ordinary-utils-css-minify)
* [`ordinary utils js`↴](#ordinary-utils-js)
* [`ordinary utils js minify`↴](#ordinary-utils-js-minify)
* [`ordinary utils markdown`↴](#ordinary-utils-markdown)
* [`ordinary utils markdown to-html`↴](#ordinary-utils-markdown-to-html)
* [`ordinary utils exif`↴](#ordinary-utils-exif)
* [`ordinary utils exif tool`↴](#ordinary-utils-exif-tool)
* [`ordinary utils wasm-opt`↴](#ordinary-utils-wasm-opt)
## `ordinary`
Ordinary CLI
**Usage:** `ordinary [OPTIONS] <COMMAND>`
###### **Subcommands:**
* `new` — create a new Ordinary project
* `ssg` — manage static site configuration
* `build` — build your Ordinary project
* `start` — start the app, locally
* `publish` — combines `build`, `content update`, `assets write`, `templates upload`, `actions install`
* `templates` — manage templates in your Ordinary project
* `content` — manage content in your Ordinary project
* `assets` — manage assets in your Ordinary project
* `models` — manage models in your Ordinary project
* `actions` — manage actions in your Ordinary project
* `integrations` — manage integrations in your Ordinary project
* `accounts` — manage accounts connected to `ordinaryd`
* `app` — manage applications running on `ordinaryd`
* `secrets` — manage secrets in your Ordinary application
* `root` —
* `doctor` — ensure that all the correct system components are installed
* `utils` — utility functions for aiding project development
###### **Options:**
* `-p`, `--project <PROJECT>` — project path
Default value: `.`
* `--api-domain <API_DOMAIN>` — should only be necessary with localhost or when addressing by IP
* `--insecure` — use HTTP instead of HTTPS
Default value: `false`
* `--danger-accept-invalid-certs` — DANGER: only use when working with self-signed localhost certs
Default value: `false`
* `-v`, `--verbose` — Increase logging verbosity
* `-q`, `--quiet` — Decrease logging verbosity
* `--pretty` — whether to pretty print events to stdio
Default value: `false`
## `ordinary new`
create a new Ordinary project
**Usage:** `ordinary new [OPTIONS] <DOMAIN>`
###### **Arguments:**
* `<DOMAIN>` — project domain
###### **Options:**
* `--path <PATH>` — project path
Default value: `.`
## `ordinary ssg`
manage static site configuration
**Usage:** `ordinary ssg <COMMAND>`
###### **Subcommands:**
* `init` — generate an `ordinary.json` config to deploy your SSG to a running instance of `ordinaryd`
## `ordinary ssg init`
generate an `ordinary.json` config to deploy your SSG to a running instance of `ordinaryd`
**Usage:** `ordinary ssg init [OPTIONS] <DOMAIN> <DIR_PATH>`
###### **Arguments:**
* `<DOMAIN>` — project domain
* `<DIR_PATH>` — assets `dir_path`
###### **Options:**
* `-c`, `--contacts <CONTACTS>` — contacts for Let's Encrypt (auto-TLS) [source](https://docs.rs/rustls-acme/latest/rustls_acme/struct.AcmeConfig.html#method.contact_push)
* `-e`, `--error-page` — include generated 404.html as error page
Default value: `false`
* `-s`, `--inline-styles` — accommodate inline styles in the generated files
Default value: `false`
* `-r`, `--inline-scripts` — accommodate inline scripts in the generated files
Default value: `false`
* `-m`, `--inline-images` — accommodate inline images in the generated files
Default value: `false`
## `ordinary build`
build your Ordinary project
Note: will load environment variables from `.env`
**Usage:** `ordinary build [OPTIONS]`
###### **Options:**
* `-i`, `--ignore-cache` — build project without checking the cache
Default value: `false`
## `ordinary start`
start the app, locally
**Usage:** `ordinary start [OPTIONS]`
###### **Options:**
* `--provision <PROVISION>` — what mode TLS certs should be provisioned in
Default value: `localhost`
Possible values: `staging`, `production`, `localhost`
* `--port <PORT>` — specify HTTP(s) port for server
* `--redirect-port <REDIRECT_PORT>` — specify HTTP port for server when running in secure mode
* `--insecure` — run without HTTPS
Default value: `false`
* `--insecure-cookies` — run with insecure cookies
Default value: `false`
* `--log-ttl-hours <LOG_TTL_HOURS>` — max period of time logs are stored
Default value: `72`
* `--log-rotation-file-size <LOG_ROTATION_FILE_SIZE>` — max size (in bytes) per log file
Default value: `10000000`
* `--log-rotation-mins <LOG_ROTATION_MINS>` — max amount of time a log file is appended to before being compressed and stored
Default value: `60`
* `--log-headers` — whether HTTP request and response headers are logged
Default value: `false`
* `--log-ips` — whether IP Addresses are logged with HTTP requests
Default value: `false`
* `--redacted-header-hash <REDACTED_HEADER_HASH>` — "none" | "blake2" | "blake3"
Default value: `none`
* `--danger-dns-no-verify` — set to `true` to bypass verification of proxy domain and CNAME DNS TXT records.
**IMPORTANT**: should ONLY be used for local development and testing.
Default value: `false`
* `--data-dir <DATA_DIR>` — specify the data directory
Default value: `~/.ordinary`
* `--stored-logs` — persists JSON formatted log lines to <data-dir>/logs/<domain>/
Default value: `false`
* `--stdio-logs` — logs events to stdio
Default value: `false`
* `--stdio-logs-fmt <STDIO_LOGS_FMT>` — how to format stdio logs
Default value: `json`
Possible values: `concise`, `pretty`, `json`
* `--journald-logs` — logs events to `journald` (only works on Linux distros that use `systemd`)
Default value: `false`
* `--log-level <LOG_LEVEL>` — base log level for every component
Default value: `info`
Possible values: `error`, `warn`, `info`, `debug`, `trace`
* `--log-sizes` — whether storage and certain payload sizes are logged
Default value: `false`
* `--stdio-logs-timing` — whether span timing is logged
Default value: `false`
* `-d`, `--disable-defaults` — disables these defaults set for development: `--stdio-logs` `--stdio-logs-fmt concise` `--insecure` `--insecure-cookies`
Default value: `false`
## `ordinary publish`
combines `build`, `content update`, `assets write`, `templates upload`, `actions install`
**Usage:** `ordinary publish [OPTIONS]`
###### **Options:**
* `-t`, `--tls-staging` — overrides if mode=production. does nothing if mode is localhost or staging
useful for when you're validating that your DNS is configured properly, and you want to avoid the Let's Encrypt rate limit for production mode <https://letsencrypt.org/docs/rate-limits/>
Default value: `false`
## `ordinary templates`
manage templates in your Ordinary project
**Usage:** `ordinary templates <COMMAND>`
###### **Subcommands:**
* `add` — add a new template to the Ordinary project
* `upload` — upload templates to application running on `ordinaryd` instance
## `ordinary templates add`
add a new template to the Ordinary project
**Usage:** `ordinary templates add [OPTIONS] <NAME> <ROUTE> <MIME>`
###### **Arguments:**
* `<NAME>` — template name
* `<ROUTE>` — HTTP route (must start with leading "/")
* `<MIME>` — MIME type for template output: [reference](https://developer.mozilla.org/en-US/docs/Web/HTTP/Guides/MIME_types/Common_types)
###### **Options:**
* `-e`, `--error <ERROR>` — whether the template is an error template
Possible values: `true`, `false`
## `ordinary templates upload`
upload templates to application running on `ordinaryd` instance
**Usage:** `ordinary templates upload [OPTIONS]`
###### **Options:**
* `-n`, `--name <NAME>` — name of a specific template to upload (optional). will upload all when the `--name` flag is not passed
## `ordinary content`
manage content in your Ordinary project
**Usage:** `ordinary content <COMMAND>`
###### **Subcommands:**
* `definition` — manage content definitions for Ordinary project
* `object` — manage content objects for Ordinary project
* `update` — update content for application running on `ordinaryd` instance
## `ordinary content definition`
manage content definitions for Ordinary project
**Usage:** `ordinary content definition <COMMAND>`
###### **Subcommands:**
* `add` — add a content definition to your Ordinary project
* `edit` — edit a content definition to your Ordinary project
## `ordinary content definition add`
add a content definition to your Ordinary project
**Usage:** `ordinary content definition add <NAME> <FIELDS>`
###### **Arguments:**
* `<NAME>` — content definition / instance name
* `<FIELDS>` — JSON formatted list of fields
EXAMPLE: `'[{ "idx": 0, "name": "some", "kind": "String" }, { "idx": 1, "name": "thing", "kind": "I32" }]'`
## `ordinary content definition edit`
edit a content definition to your Ordinary project
**Usage:** `ordinary content definition edit <IDX> <NAME> <FIELDS>`
###### **Arguments:**
* `<IDX>` — numerical identifier / index for the content definition
* `<NAME>` — content definition / instance name
* `<FIELDS>` — JSON formatted list of fields
EXAMPLE: `'[{ "idx": 0, "name": "some", "kind": "String" }, { "idx": 1, "name": "thing", "kind": "I32" }]'`
## `ordinary content object`
manage content objects for Ordinary project
**Usage:** `ordinary content object <COMMAND>`
###### **Subcommands:**
* `add` — add a content object to your Ordinary project
* `edit` — edit a content object to your Ordinary project
* `delete` — delete a content object to your Ordinary project
## `ordinary content object add`
add a content object to your Ordinary project
**Usage:** `ordinary content object add <JSON>`
###### **Arguments:**
* `<JSON>` — json value of content object
## `ordinary content object edit`
edit a content object to your Ordinary project
**Usage:** `ordinary content object edit <JSON>`
###### **Arguments:**
* `<JSON>` — json value of content object
## `ordinary content object delete`
delete a content object to your Ordinary project
**Usage:** `ordinary content object delete <INSTANCE_OF> <UUID>`
###### **Arguments:**
* `<INSTANCE_OF>` — instance name that matches the content definition
* `<UUID>` — unique identifier for the object to be deleted
## `ordinary content update`
update content for application running on `ordinaryd` instance
**Usage:** `ordinary content update`
## `ordinary assets`
manage assets in your Ordinary project
**Usage:** `ordinary assets <COMMAND>`
###### **Subcommands:**
* `write` — write assets to application running on `ordinaryd` instance
## `ordinary assets write`
write assets to application running on `ordinaryd` instance
**Usage:** `ordinary assets write [OPTIONS]`
###### **Options:**
* `-n`, `--name <NAME>` — name of a specific asset to write (optional). will write all when the `--name` flag is not passed
## `ordinary models`
manage models in your Ordinary project
**Usage:** `ordinary models <COMMAND>`
###### **Subcommands:**
* `add` — add a new model to your Ordinary project
* `items` — manage model items for the application running on an `ordinaryd` instance
## `ordinary models add`
add a new model to your Ordinary project
**Usage:** `ordinary models add <NAME> [UUID_VERSION]`
###### **Arguments:**
* `<NAME>` — name of the model
* `<UUID_VERSION>` — UUID version
Possible values: `v4`, `v7`
## `ordinary models items`
manage model items for the application running on an `ordinaryd` instance
**Usage:** `ordinary models items <COMMAND>`
###### **Subcommands:**
* `list` — list model items for the application running on an `ordinaryd` instance
## `ordinary models items list`
list model items for the application running on an `ordinaryd` instance
**Usage:** `ordinary models items list [OPTIONS] <NAME>`
###### **Arguments:**
* `<NAME>` — name of the model
###### **Options:**
* `--json` — for applications that need to consume stdio or pipe to `jq`
Default value: `false`
## `ordinary actions`
manage actions in your Ordinary project
**Usage:** `ordinary actions <COMMAND>`
###### **Subcommands:**
* `add` — add a new action to your Ordinary project
* `install` — install actions to application running on `ordinaryd` instance
## `ordinary actions add`
add a new action to your Ordinary project
**Usage:** `ordinary actions add <NAME> <LANG> [TRANSACTIONAL]`
###### **Arguments:**
* `<NAME>` — action name
* `<LANG>` — language the action runs
* `<TRANSACTIONAL>` — whether the action is transactional
Possible values: `true`, `false`
## `ordinary actions install`
install actions to application running on `ordinaryd` instance
**Usage:** `ordinary actions install [OPTIONS]`
###### **Options:**
* `-n`, `--name <NAME>` — name of a specific action to install (optional). will install all when the `--name` flag is not passed
## `ordinary integrations`
manage integrations in your Ordinary project
**Usage:** `ordinary integrations <COMMAND>`
###### **Subcommands:**
* `add` — add a new integration to your Ordinary project
## `ordinary integrations add`
add a new integration to your Ordinary project
**Usage:** `ordinary integrations add <NAME> <ENDPOINT> <PROTOCOL>`
###### **Arguments:**
* `<NAME>` — name of the integration
* `<ENDPOINT>` — url endpoint for integration
* `<PROTOCOL>` — protocol for the integration
Possible values: `JSON`
## `ordinary accounts`
manage accounts connected to `ordinaryd`
**Usage:** `ordinary accounts <COMMAND>`
###### **Subcommands:**
* `register` — register a new account
* `login` — log in to an existing account
* `logout` — log out of a logged in account
* `access` — access management subcommands
* `password` — password management
* `mfa` — MFA management
* `recovery-codes` — recovery code management
* `delete` — delete account
* `invite` — invite another user to a project
* `current` — display info for current account
* `list` — list all logged in accounts
* `switch` — switch to a different logged in account
## `ordinary accounts register`
register a new account
**Usage:** `ordinary accounts register [OPTIONS] <HOST> <ACCOUNT>`
###### **Arguments:**
* `<HOST>` — url where `orindaryd` is running
* `<ACCOUNT>` — name of your account with the host
###### **Options:**
* `--password <PASSWORD>` — password for your new account
* `--invite <INVITE>` — base64 encoded invite token
## `ordinary accounts login`
log in to an existing account
**Usage:** `ordinary accounts login [OPTIONS] <HOST> <ACCOUNT>`
###### **Arguments:**
* `<HOST>` — url where `orindaryd` is running
* `<ACCOUNT>` — name of your account with the host
###### **Options:**
* `--password <PASSWORD>` — password for your existing account
* `--mfa <MFA>` — 6 digit TOTP MFA code
## `ordinary accounts logout`
log out of a logged in account
**Usage:** `ordinary accounts logout`
## `ordinary accounts access`
access management subcommands
**Usage:** `ordinary accounts access <COMMAND>`
###### **Subcommands:**
* `get` — get access
## `ordinary accounts access get`
get access
**Usage:** `ordinary accounts access get [OPTIONS]`
###### **Options:**
* `-m`, `--min <MIN>` — how long the client signature is valid for
## `ordinary accounts password`
password management
**Usage:** `ordinary accounts password <COMMAND>`
###### **Subcommands:**
* `reset` — reset your password
* `forgot` — recover your password
## `ordinary accounts password reset`
reset your password
**Usage:** `ordinary accounts password reset [OPTIONS]`
###### **Options:**
* `--password <PASSWORD>` — existing password
* `--new-password <NEW_PASSWORD>` — new password to be set
* `--mfa <MFA>` — 6 digit TOTP MFA code
## `ordinary accounts password forgot`
recover your password
**Usage:** `ordinary accounts password forgot [OPTIONS]`
###### **Options:**
* `--new-password <NEW_PASSWORD>` — new password to be set
* `--recovery-code <RECOVERY_CODE>` — 11 character recovery code
## `ordinary accounts mfa`
MFA management
**Usage:** `ordinary accounts mfa <COMMAND>`
###### **Subcommands:**
* `reset` — reset MFA TOTP secret
* `lost` — recovery MFA TOTP secret
## `ordinary accounts mfa reset`
reset MFA TOTP secret
**Usage:** `ordinary accounts mfa reset [OPTIONS]`
###### **Options:**
* `--password <PASSWORD>` — account password
* `--mfa <MFA>` — 6 digit TOTP MFA code
## `ordinary accounts mfa lost`
recovery MFA TOTP secret
**Usage:** `ordinary accounts mfa lost [OPTIONS]`
###### **Options:**
* `--password <PASSWORD>` — account password
* `--recovery-code <RECOVERY_CODE>` — 11 character recovery code
## `ordinary accounts recovery-codes`
recovery code management
**Usage:** `ordinary accounts recovery-codes <COMMAND>`
###### **Subcommands:**
* `reset` — reset recovery codes
## `ordinary accounts recovery-codes reset`
reset recovery codes
**Usage:** `ordinary accounts recovery-codes reset [OPTIONS]`
###### **Options:**
* `--password <PASSWORD>` — account password
* `--mfa <MFA>` — 6 digit TOTP MFA code
## `ordinary accounts delete`
delete account
**Usage:** `ordinary accounts delete [OPTIONS] <HOST> <ACCOUNT>`
###### **Arguments:**
* `<HOST>` — url where `orindaryd` is running
* `<ACCOUNT>` — name of your account with the host
###### **Options:**
* `--password <PASSWORD>` — password for your existing account
* `--mfa <MFA>` — 6 digit TOTP MFA code
## `ordinary accounts invite`
invite another user to a project
**Usage:** `ordinary accounts invite <ACCOUNT> <DOMAIN> [PERMISSIONS]...`
###### **Arguments:**
* `<ACCOUNT>` — name of the account to be invited & registered
* `<DOMAIN>` — domain for the invited application
* `<PERMISSIONS>` — which permissions to include in their set
Possible values: `admin`, `read`, `write`, `update`, `upload`, `install`, `deploy`, `bridge`, `kill`, `erase`
## `ordinary accounts current`
display info for current account
format: <host> <account> <project> <permissions> <session exp>
**Usage:** `ordinary accounts current`
## `ordinary accounts list`
list all logged in accounts
**Usage:** `ordinary accounts list`
## `ordinary accounts switch`
switch to a different logged in account
**Usage:** `ordinary accounts switch <DOMAIN> <ACCOUNT>`
###### **Arguments:**
* `<DOMAIN>` — API domain where `orindaryd` is running
* `<ACCOUNT>` — name of the account you'd like to switch to
## `ordinary app`
manage applications running on `ordinaryd`
**Usage:** `ordinary app <COMMAND>`
###### **Subcommands:**
* `deploy` — deploy a changes to ordinary.json
* `migrate` — push a configuration change which will modify the shape of your data stores
* `kill` — kill a running instance of the application
* `restart` — restart a running instance of the application
* `erase` — fully erase all content of the application from the host
* `download` — download an application as static files
* `logs` — query application logs
* `accounts` — manage application accounts
* `routes` — list all HTTP routes
## `ordinary app deploy`
deploy a changes to ordinary.json
**Usage:** `ordinary app deploy [OPTIONS]`
###### **Options:**
* `-j`, `--json-to-stdout` — whether the result of the operation should be printed to stdout formatted as JSON
Default value: `false`
* `-t`, `--tls-staging` — overrides if mode=production. does nothing if mode is localhost or staging
useful for when you're validating that your DNS is configured properly, and you want to avoid the Let's Encrypt rate limit for production mode <https://letsencrypt.org/docs/rate-limits/>
Default value: `false`
## `ordinary app migrate`
push a configuration change which will modify the shape of your data stores
(i.e. a structural change to model or content definitions)
**Usage:** `ordinary app migrate`
## `ordinary app kill`
kill a running instance of the application
**Usage:** `ordinary app kill`
## `ordinary app restart`
restart a running instance of the application
**Usage:** `ordinary app restart [OPTIONS]`
###### **Options:**
* `-j`, `--json-to-stdout` — whether the result of the operation should be printed to stdout formatted as JSON
Default value: `false`
* `-t`, `--tls-staging` — overrides if mode=production. does nothing if mode is localhost or staging
useful for when you're validating that your DNS is configured properly, and you want to avoid the Let's Encrypt rate limit for production mode <https://letsencrypt.org/docs/rate-limits/>
Default value: `false`
## `ordinary app erase`
fully erase all content of the application from the host
**Usage:** `ordinary app erase`
## `ordinary app download`
download an application as static files
**Usage:** `ordinary app download [OPTIONS]`
###### **Options:**
* `-u`, `--url <URL>` — url override. will use project domain by default
* `-o`, `--out <OUT>` — where to store downloaded files
Default value: `out`
## `ordinary app logs`
query application logs
**Usage:** `ordinary app logs <COMMAND>`
###### **Subcommands:**
* `sync` — sync files, indexes and tables
* `search` — search the tantivy index
## `ordinary app logs sync`
sync files, indexes and tables
**Usage:** `ordinary app logs sync <COMMAND>`
###### **Subcommands:**
* `info` — get information about remote and local log files
* `file` — sync a single file
* `all` — repair local state for all out of sync (⚠️) and remote files not yet downloaded (❌)
## `ordinary app logs sync info`
get information about remote and local log files.
- "✅" remote and local are synced - "❌" not found on remote *or* local - "⚠️" present on both but local is out of sync
**Usage:** `ordinary app logs sync info`
## `ordinary app logs sync file`
sync a single file
**Usage:** `ordinary app logs sync file <NAME>`
###### **Arguments:**
* `<NAME>` — file name
## `ordinary app logs sync all`
repair local state for all out of sync (⚠️) and remote files not yet downloaded (❌)
**Usage:** `ordinary app logs sync all [OPTIONS]`
###### **Options:**
* `-f`, `--force <FORCE>` — download all files from the server, overwriting everything you have locally.
Note: will preserve the state of any files the server no longer has a record of.
Possible values: `true`, `false`
## `ordinary app logs search`
search the tantivy index
**Usage:** `ordinary app logs search [OPTIONS] <FORMAT> <QUERY>`
###### **Arguments:**
* `<FORMAT>` — format
Possible values: `all`, `top`, `count`
* `<QUERY>` — [reference](https://quickwit.io/docs/reference/query-language)
###### **Options:**
* `--limit <LIMIT>` — limit (when using 'top' format)
* `-s`, `--sync <SYNC>` — whether to sync from remote
Possible values: `true`, `false`
## `ordinary app accounts`
manage application accounts
**Usage:** `ordinary app accounts <COMMAND>`
###### **Subcommands:**
* `list` — list application accounts
## `ordinary app accounts list`
list application accounts
**Usage:** `ordinary app accounts list`
## `ordinary app routes`
list all HTTP routes
**Usage:** `ordinary app routes`
## `ordinary secrets`
manage secrets in your Ordinary application
**Usage:** `ordinary secrets <COMMAND>`
###### **Subcommands:**
* `store` — store an application secret
## `ordinary secrets store`
store an application secret
Note: currently requires a restart via `ordinary app restart` after being stored.
**Usage:** `ordinary secrets store <NAME> <SECRET>`
###### **Arguments:**
* `<NAME>` — secret name
* `<SECRET>` — secret value
## `ordinary root`
**Usage:** `ordinary root <COMMAND>`
###### **Subcommands:**
* `info` — get system and process info for the Ordinary API server
* `logs` — query system and application logs
* `lock` — lock resources to prevent abuse
* `unlock` — unlock resources upon resolution
## `ordinary root info`
get system and process info for the Ordinary API server
**Usage:** `ordinary root info`
## `ordinary root logs`
query system and application logs
**Usage:** `ordinary root logs <COMMAND>`
###### **Subcommands:**
* `sync` — sync files, indexes and tables
* `search` — search the tantivy index
## `ordinary root logs sync`
sync files, indexes and tables
**Usage:** `ordinary root logs sync <COMMAND>`
###### **Subcommands:**
* `info` — get information about remote and local log files
* `file` — sync a single file
* `all` — repair local state for all out of sync (⚠️) and remote files not yet downloaded (❌)
## `ordinary root logs sync info`
get information about remote and local log files.
- "✅" remote and local are synced - "❌" not found on remote *or* local - "⚠️" present on both but local is out of sync
**Usage:** `ordinary root logs sync info`
## `ordinary root logs sync file`
sync a single file
**Usage:** `ordinary root logs sync file <NAME>`
###### **Arguments:**
* `<NAME>` — file name
## `ordinary root logs sync all`
repair local state for all out of sync (⚠️) and remote files not yet downloaded (❌)
**Usage:** `ordinary root logs sync all [OPTIONS]`
###### **Options:**
* `-f`, `--force <FORCE>` — download all files from the server, overwriting everything you have locally.
Note: will preserve the state of any files the server no longer has a record of.
Possible values: `true`, `false`
## `ordinary root logs search`
search the tantivy index
**Usage:** `ordinary root logs search [OPTIONS] <FORMAT> <QUERY>`
###### **Arguments:**
* `<FORMAT>` — format
Possible values: `all`, `top`, `count`
* `<QUERY>` — [reference](https://quickwit.io/docs/reference/query-language)
###### **Options:**
* `--limit <LIMIT>` — limit (when using 'top' format)
* `-s`, `--sync <SYNC>` — whether to sync from remote
Possible values: `true`, `false`
## `ordinary root lock`
lock resources to prevent abuse
**Usage:** `ordinary root lock --account <ACCOUNT>`
###### **Options:**
* `-a`, `--account <ACCOUNT>` — account to be locked
## `ordinary root unlock`
unlock resources upon resolution
**Usage:** `ordinary root unlock --account <ACCOUNT>`
###### **Options:**
* `-a`, `--account <ACCOUNT>` — account to be unlocked
## `ordinary doctor`
ensure that all the correct system components are installed
**Usage:** `ordinary doctor [OPTIONS]`
###### **Options:**
* `-f`, `--fix <FIX>` — auto fix installs
Possible values: `all`, `rust`, `wasm`, `wasm-opt`, `exiftool`
## `ordinary utils`
utility functions for aiding project development
**Usage:** `ordinary utils <COMMAND>`
###### **Subcommands:**
* `uuid` — generate a UUID
* `timestamp` — generate a UNIX timestamp for the current time (i.e. `date +%s`)
* `html` — utilities for managing HTML files
* `css` — utilities for managing CSS files
* `js` — utilities for managing JavaScript files
* `markdown` — utilities for manipulating Markdown files
* `exif` — utilities for manipulating exif data
* `wasm-opt` — [`wasm-opt`](https://github.com/WebAssembly/binaryen#wasm-opt) command
## `ordinary utils uuid`
generate a UUID
**Usage:** `ordinary utils uuid [OPTIONS]`
###### **Options:**
* `--v <V>` — uuid version
Default value: `4`
Possible values: `4`
## `ordinary utils timestamp`
generate a UNIX timestamp for the current time (i.e. `date +%s`)
**Usage:** `ordinary utils timestamp [OPTIONS]`
###### **Options:**
* `-u`, `--unit <UNIT>` — unit of time
Default value: `seconds`
Possible values: `seconds`, `millis`, `micros`, `nanos`
* `-f`, `--fmt <FMT>` — formatting (uses `time` crate <https://time-rs.github.io/book/api/format-description.html>)
i.e. `"[year]/[month]/[day] [hour]:[minute]:[second]"`
## `ordinary utils html`
utilities for managing HTML files
**Usage:** `ordinary utils html <COMMAND>`
###### **Subcommands:**
* `minify` — minify HTML files
## `ordinary utils html minify`
minify HTML files
**Usage:** `ordinary utils html minify [OPTIONS] <PATH>`
###### **Arguments:**
* `<PATH>` — path to the HTML file
###### **Options:**
* `-i`, `--in-place` — whether it should overwrite the existing file
Default value: `false`
## `ordinary utils css`
utilities for managing CSS files
**Usage:** `ordinary utils css <COMMAND>`
###### **Subcommands:**
* `minify` — minify CSS files
## `ordinary utils css minify`
minify CSS files
**Usage:** `ordinary utils css minify [OPTIONS] <PATH>`
###### **Arguments:**
* `<PATH>` — path to the CSS file
###### **Options:**
* `-i`, `--in-place` — whether it should overwrite the existing file
Default value: `false`
## `ordinary utils js`
utilities for managing JavaScript files
**Usage:** `ordinary utils js <COMMAND>`
###### **Subcommands:**
* `minify` — minify JavaScript files
## `ordinary utils js minify`
minify JavaScript files
**Usage:** `ordinary utils js minify [OPTIONS] <PATH>`
###### **Arguments:**
* `<PATH>` — path to the JavaScript file
###### **Options:**
* `-i`, `--in-place` — whether it should overwrite the existing file
Default value: `false`
## `ordinary utils markdown`
utilities for manipulating Markdown files
**Usage:** `ordinary utils markdown <COMMAND>`
###### **Subcommands:**
* `to-html` — process and place an .html file next to the referenced .md file
## `ordinary utils markdown to-html`
process and place an .html file next to the referenced .md file
**Usage:** `ordinary utils markdown to-html [OPTIONS] <PATH>`
###### **Arguments:**
* `<PATH>` — path to the Markdown file
###### **Options:**
* `-s`, `--safe` — if `true` escape all HTML in the Markdown file
Default value: `false`
## `ordinary utils exif`
utilities for manipulating exif data
**Usage:** `ordinary utils exif <COMMAND>`
###### **Subcommands:**
* `tool` — [`exiftool`](https://exiftool.org) command
## `ordinary utils exif tool`
[`exiftool`](https://exiftool.org) command
**Usage:** `ordinary utils exif tool [ARGS]...`
###### **Arguments:**
* `<ARGS>` — `exiftool` args: <https://exiftool.org/exiftool_pod.html>
## `ordinary utils wasm-opt`
[`wasm-opt`](https://github.com/WebAssembly/binaryen#wasm-opt) command
**Usage:** `ordinary utils wasm-opt [ARGS]...`
###### **Arguments:**
* `<ARGS>` — `wasm-opt` args: `ordinary utils wasm-opt -- --help`
<hr/>
<small><i>
This document was generated automatically by
<a href="https://crates.io/crates/clap-markdown"><code>clap-markdown</code></a>.
</i></small>