[API reference](https://evolu.dev/docs/api-reference) › [@evolu/common](https://evolu.dev/docs/api-reference/common) › [Console](https://evolu.dev/docs/api-reference/common/Console) › createConsoleFormatter

```ts
function createConsoleFormatter(
  __namedParameters?: Partial<TimeDep>,
): (config: ConsoleFormatterConfig) => ConsoleFormatter;
```

Defined in: [packages/common/src/Console.ts:476](https://github.com/evoluhq/evolu/blob/e7144e2bbe9069362b62dec1b64a8aa922b8f1b0/packages/common/src/Console.ts#L476)

Creates a [ConsoleFormatter](https://evolu.dev/docs/api-reference/common/Console/type-aliases/ConsoleFormatter) for [ConsoleConfig.formatter](https://evolu.dev/docs/api-reference/common/Console/interfaces/ConsoleConfig#formatter).

Prepends timestamps and path prefixes to entry args.

### Example

```ts
const root = createConsole({
  formatter: createConsoleFormatter()({
    timestampFormat: "relative",
  }),
});

// Relative — elapsed since start
const relay = root.child("relay");
relay.log("connected"); // +0.000s [relay] connected
relay.log("synced"); // +1.500s [relay] synced

// Nested children
const db = relay.child("db");
db.log("opened"); // +1.500s [relay] [db] opened

// Absolute — local clock time (HH:MM:SS.mmm)
// relay.log("connected"); // 15:30:15.123 [relay] connected
```