# d2 > A modern diagram scripting language that turns text to diagrams. > Note: the output file supports SVG and PNG file formats. > More information: . - Compile and render a D2 source file into an output file: `d2 {{path/to/input_file.d2}} {{path/to/output_file.ext}}` - [w]atch live changes made to a D2 source file in the default web browser: `d2 --watch {{path/to/input_file.d2}} {{path/to/output_file.ext}}` - Format a D2 source file: `d2 fmt {{path/to/input_file.d2}}` - List available themes: `d2 themes` - Use a different [t]heme for the output file (list available themes first to get the desired `theme_id`): `d2 --theme {{theme_id}} {{path/to/input_file.d2}} {{path/to/output_file.ext}}` - Make rendered diagrams look like hand [s]ketches: `d2 --sketch true {{path/to/input_file.d2}} {{path/to/output_file.ext}}`