# Dev Tools

Prax provides developer-focused tools to help you debug, inspect, and customize your flows.

***

#### Flow Inspector

Each node’s input/output can be inspected live during execution.

* Open any flow
* Run it through the chat or API
* Click any node to inspect:
  * Inputs
  * Outputs
  * Errors
  * Execution duration

Useful for tracing logic and debugging failures.

***

#### Console Output

For local development, logs are printed to the terminal:

```bash
bashCopyEditnpm run dev
```

You’ll see:

* Node executions
* API requests
* Errors or invalid configs

***

#### Dev Mode Config

Use `.env` settings to toggle dev-specific behavior:

```env
envCopyEditDEV_MODE=true
LOG_LEVEL=debug
```

***

#### Custom Node Development

You can build your own node types:

```bash
bashCopyEditsrc/
  nodes/
    my-custom-node/
      index.ts
```

A basic custom node structure:

```ts
tsCopyEditmodule.exports = {
  name: "MyCustomNode",
  inputs: ["text"],
  outputs: ["result"],
  run: async ({ text }) => {
    return { result: text.toUpperCase() };
  }
}
```

Custom nodes can be hot-reloaded during development and will appear in the flow editor.
