Skip to content

Configuration

InterCentury edited this page Oct 3, 2026 · 3 revisions

Configuration

BinaryFetch is configured with a single file. This page explains every part of it: where it lives, how it is read, and what each section and key does.

The config file

C:\Users\Public\BinaryFetch\BinaryFetch_Config.jsonc

Open it in any text editor, save, and run binaryfetch again to see the change.

Which file is loaded

BinaryFetch supports two file names side by side:

  • BinaryFetch_Config.jsonc: preferred. Comments are allowed.
  • BinaryFetch_Config.json: older name. Still loaded exactly as before.

The file is chosen fresh on every launch:

  1. If both exist, the .jsonc file is used.
  2. If only .jsonc exists, it is used.
  3. If only .json exists, it is used as it is. BinaryFetch never creates a .jsonc next to it.
  4. If neither exists, BinaryFetch writes a fresh default .jsonc file. This is the only case where a new file is created.

BinaryFetch never overwrites a config file that already exists.

Tip

To reset to defaults, delete the config file (and the old .json if you have one) and run binaryfetch again.

Warning

The v1.8 installer deletes C:\Users\Public\BinaryFetch before installing, which removes your config. Back it up first if you want to keep your changes.


Syntax rules

The file is JSON with comments (JSONC).

  • Comments start with // and run to the end of the line. /* ... */ block comments also work.
  • Keys and text values use double quotes.
  • Items are separated by commas, and there must be no comma after the last item in a block or list.
  • A backslash inside a string must be doubled: "C:\\Users\\me". Forward slashes also work.
  • The file is UTF-8, so symbols and emoji can be used in labels and prefixes if your terminal can show them.

Caution

If the file cannot be parsed (for example a missing or extra comma), BinaryFetch treats the config as not loaded and the information sections are not shown. Fix the syntax, or delete the file to regenerate the default.


Top-level layout

The file is one large JSON object. Its top-level keys are:

  • section_order: which sections appear, and in what order.
  • colors: your colour palette.
  • ascii_color_prefixes: colours used by $1, $2, ... in BinaryArt.txt.
  • emoji: global emoji control.
  • art: ASCII art, image, GIF and video.
  • header_settings: the title line.
  • compact_*: the one-line summary sections.
  • detailed_*: the multi-line detail sections.

section_order

section_order lists the sections to show, from top to bottom.

"section_order": [
  "header_settings",
  "compact_date_and_time",
  "compact_operating_system",
  "compact_processor",
  "compact_graphics_card",
  "compact_display_monitor",
  "compact_system_memory",
  "compact_audio_devices",
  "compact_resource_usage",
  "compact_user_account",
  "compact_network_connection",
  "compact_disk_storage",
  "detailed_resource_usage"
  //"detailed_system_memory",
  //"detailed_disk_storage"
]
  • Reorder sections by moving lines.
  • Hide a section by removing its line or commenting it out with //.
  • A section is shown only if it is in section_order and its own enabled is true.
  • Section names must match exactly.
  • If section_order is missing or empty, BinaryFetch uses the full default order below. Entries that are not text are skipped.

All section names, in default order:

header_settings
compact_date_and_time
compact_operating_system
compact_processor
compact_graphics_card
compact_display_monitor
compact_system_memory
compact_audio_devices
compact_resource_usage
compact_user_account
compact_network_connection
compact_disk_storage
detailed_system_memory
detailed_disk_storage
detailed_network_connection
detailed_operating_system
detailed_processor
detailed_graphics_card
detailed_display_monitor
detailed_bios_and_motherboard
detailed_user_account
detailed_resource_usage
detailed_audio_and_power

Note

When you comment out entries, remember the comma rule: the last active entry must not end with a comma.


colors

colors is your palette. You can define any colour name you like, and there is no limit. Sections use these names in their *_color keys.

"colors": {
  "red":     "#F2726B",
  "green":   "46,207,142",
  "blue":    "\u001b[34m",
  "reset":   "RESET",
  "muted_2": "107, 119, 122"
}

Each value can be written in one of three formats:

  • Hex: "#RRGGBB", exactly seven characters.
  • RGB: "R,G,B", three numbers from 0 to 255. Spaces after the commas are fine.
  • ANSI escape: a raw escape sequence such as "\u001b[35m". It is used exactly as written.

The special value "RESET" always resets the terminal colour. A value that matches none of these is skipped.

Using colours inside sections

Colour keys in sections (color, prefix_color, label_color, value_color, filled_color, and so on) take a name from colors, such as "red" or "muted_2".

Important

Put raw hex or RGB values in colors only, and refer to them by name everywhere else. If a name is not found, BinaryFetch falls back to the section's default colour, then to white.

The default palette contains red, green, yellow, blue, magenta, cyan, white, the bright_ versions of each, reset, purple, amber, orange, muted, muted_2 and fg_dim. You can rename, remove or add colours freely, as long as every name used by a section exists.


ascii_color_prefixes

Sets the colours for the $1, $2, ... codes in BinaryArt.txt.

"ascii_color_prefixes": {
  "show_colors": true,
  "$1":  "#F2726B",
  "$2":  "46,207,142",
  "$3":  "cyan",
  "$15": "RESET"
}
  • Values use the same formats as colors, or the name of a colour defined in colors.
  • Set show_colors to false to remove colour from the art.
  • Codes you do not list keep their defaults.

emoji

Global control over emoji and symbol glyphs in labels and prefixes.

"emoji": {
  "enabled": false,
  "style": "color"
}
  • enabled: set to false to remove emoji and symbols from the output.
  • style: "auto" (default), "color" or "text". Any other value is treated as "auto".

Note

"color" and "text" are requests to your terminal and font. Some glyphs may still appear in colour.


art

Image, GIF, video and ASCII art are set in the art section. See the Art, Image, GIF and Video page.


How sections are built

Almost every section follows the same pattern, so once you understand it you can edit any of them.

Label and value

Each item on a line is made of a label and a value:

label:  prefix, prefix_color, text, color, suffix, suffix_color
value:  prefix, prefix_color, color, suffix, suffix_color

For example, the processor name and core count:

"cores": {
  "enabled": true,
  "value": {
    "prefix": "(",
    "prefix_color": "muted_2",
    "color": "muted_2",
    "suffix": "C",
    "suffix_color": "muted_2"
  }
}

This prints the core count wrapped as (6C. The number itself comes from your system. You choose only the text around it and the colours.

If a key is left out, it simply means empty or no effect. Nothing breaks.

Common keys

  • enabled: turns the section, or a single item, on or off.
  • top_line_spacing: blank lines placed before the section.
  • prefix and prefix_color: the decoration at the start of the section's line. The default sections use ╭, │ and ╰ to draw a curved line down the left side.
  • label: the section's title, such as CPU or Memory.
  • order: the items to show and the sequence they appear in.

order lists and spacers

In compact sections, order lists the items to show, left to right. Entries that are plain spaces are spacers:

"order": ["name", " ", "cores", "threads", " ", "clock"]
  • To hide an item, remove it from order or set its enabled to false.
  • To reorder, move the entries.
  • To change spacing, add or remove " " entries, or use another separator such as " | ".

header_settings

The title line at the top.

"header_settings": {
  "enabled": true,
  "prefix": "~>>",
  "prefix_color": "green",
  "label": {
    "text": " BinaryFetch",
    "color": "red"
  },
  "suffix": "",
  "suffix_color": "muted"
}

Change label.text to rename the title, or set enabled to false to remove it.


Compact sections

Compact sections show one line each (some show two). All of them use the label and value pattern above. Below, order items are the names you can use in order.

compact_date_and_time

  • Order items: time, date, week, leap_year.
  • time has hour, minute, second.
  • date has day, month_name, month_num, year.
  • week has num and day_name.
  • leap_year has val. It is off by default.

Each sub-item has its own enabled. For example, set month_num to true and month_name to false for a numeric month.

compact_operating_system

  • Order items: name, build, arch, uptime.

compact_processor

  • Order items: name, cores, threads, clock.

compact_graphics_card

  • Order items: name, usage, vram, freq.

compact_display_monitor

  • Order items: name, resolution_w, resolution_h, scale, upscale, refresh.
  • no_displays sets the text and colour shown when no display is found.
  • upscale is off by default.

compact_system_memory

  • Order items: total, free, percent.

compact_audio_devices

  • Order items: input, output.
  • input and output each print their own line, with their own label (including the line prefix), device and status.

compact_resource_usage

  • Order items: cpu, gpu, ram, disk.

compact_user_account

  • Order items: username, domain, type.

compact_network_connection

  • Order items: name, type, ip.
  • Disabled by default.

compact_disk_storage

Two blocks, each printing its own line:

  • usage: disk usage per drive, with letter and size.
  • capacity: capacity per drive, with letter and size.

Each block has its own enabled, prefix, label and top_line_spacing.


Detailed sections

Detailed sections print several lines each, with a header and one line per field. They are mostly off by default. To use one, set enabled to true and add its name to section_order.

The detailed pattern

"detailed_operating_system": {
  "enabled": true,
  "top_line_spacing": 0,
  "order": ["name", "build", "uptime"],
  "header": {
    "show": true,
    "prefix": "#- ",
    "prefix_color": "muted_2",
    "text": "Operating System ",
    "text_color": "red",
    "suffix": "-----------------------------------------------#",
    "suffix_color": "muted_2"
  },
  "fields": {
    "name": {
      "show": true,
      "name_prefix": "~ ",
      "name_prefix_color": "red",
      "label": "Name",
      "label_color": "muted_2",
      "label_suffix": "                      : ",
      "label_suffix_color": "red",
      "value_color": "muted_2",
      "value_suffix": "",
      "value_suffix_color": "red"
    }
  }
}
  • order: the fields to show, in order.
  • header: the title line. Set show to false to hide it.
  • fields: one block per field.
  • show: turns a single field on or off.
  • <field>_prefix and <field>_prefix_color: the decoration before the line, for example ~ .
  • label and label_color: the field name and its colour.
  • label_suffix: the text after the label, normally spaces followed by : .
  • value_color, value_suffix, value_suffix_color: how the value is drawn.

Tip

The spaces inside label_suffix line the colons up in a column. If you rename a label, adjust those spaces so the colons stay aligned.

Available fields

  • detailed_operating_system: name, build, architecture, kernel, uptime, install_date, serial.
  • detailed_processor: brand, utilization, speed, base_speed, cores, logical_processors, sockets, virtualization, l1_cache, l2_cache, l3_cache. Also has a separator block.
  • detailed_graphics_card: name, memory, usage, vendor, driver, temperature, cores. See the extra keys below.
  • detailed_display_monitor: name, applied_resolution, native_resolution, aspect_ratio, scaling, upscale, dsr. Uses banner instead of header.
  • detailed_bios_and_motherboard: mb_model, mb_manufacturer, bios_vendor, bios_version, bios_date.
  • detailed_user_account: username, computer_name, domain.
  • detailed_network_connection: name, type, local_ip, public_ip, locale, mac, upload, download. Disabled by default.
  • detailed_resource_usage: uptime, cpu_usage, ram_usage, gpu_usage, disk_usage. The usage fields have bars (see [Usage bars](#usage-bars-visualizer)).

Extra keys in some sections

  • detailed_graphics_card: show_gpu_list, show_primary_gpu, primary_order, primary_fields, gpu_header, primary_header, error_text, error_color.
  • detailed_system_memory: sections (header, total, free, used_percentage, modules) and a modules block with its own order: label, used, capacity, type, speed.
  • detailed_disk_storage: sections (storage_summary, disk_performance), no_drives, and a top-level fields block for used_visualizer and free_visualizer.
  • detailed_audio_and_power: order is output, input, power.
  • dummy_network_info: uses fixed sample values. You can ignore it.

Usage bars (visualizer)

Several fields can draw a bar, such as cpu_usage. The visualizer block controls it:

"visualizer": {
  "enabled": true,
  "width": 43,
  "filled": "█",
  "filled_color": "red",
  "empty": "█",
  "empty_color": "muted_2",
  "left": "[",
  "left_color": "muted_2",
  "right": "]",
  "right_color": "muted_2"
}
  • enabled: turn the bar on or off.
  • width: bar length in characters.
  • filled and empty: the characters for the used and unused parts.
  • filled_color and empty_color: their colours.
  • left, right and their colours: the brackets around the bar.

Using █ for both filled and empty, with different colours, gives a solid bar. Using ░ for empty gives a lighter track.


Common recipes

Change a colour everywhere. Edit its value in colors. Every section that uses that name changes.

Hide a section. Remove it from section_order, or set its enabled to false.

Reorder sections. Move the lines in section_order.

Hide one item in a compact section. Set its enabled to false, or remove it from that section's order.

Show more detail. Set a detailed_* section's enabled to true and add it to section_order.

Turn off emoji. Set emoji.enabled to false.

Rename a label. Change the text in the section's label, or the label value in a detailed field.

Change the separator between items. Edit the spacer entries in a compact section's order.

Change the bar look. Edit filled, empty and width in the visualizer block.

Switch the art. Set enabled in Ascii_Art, Image, Gif or Video. See the Art, Image, GIF and Video page.


Troubleshooting

  • Nothing is shown, or sections are missing: the file probably has a syntax error, often a missing or extra comma. Check the recent edit, or delete the file to regenerate it.
  • A section does not appear: check that its name is in section_order and that its enabled is true.
  • A colour looks wrong or white: the colour name does not exist in colors. Use a defined name, or add it.
  • My changes did nothing: make sure you edited C:\Users\Public\BinaryFetch\BinaryFetch_Config.jsonc, and that no older .json file takes priority in a way you did not expect. If both exist, .jsonc wins.
  • Columns do not line up in a detailed section: adjust the spaces in label_suffix.
  • Emoji look wrong: set emoji.style to "text", or set emoji.enabled to false.
  • My settings disappeared after updating: v1.8 and later installers clear the old config folder. Restore from your backup.