INI Configuration File
WyzBooks uses an INI configuration file for advanced customization beyond what the Settings UI provides. The file is plain text and can be edited with any text editor.
- Location:
~/.wyzbooks/wyzbooks.ini - Created: Automatically on first launch (seeded from built-in template)
- Format:
[section]headers followed bykey = valuepairs - Comments: Lines starting with
#are ignored. Uncomment a line to activate it
Changes take effect after restarting the app, or immediately by clicking Settings > Advanced > "Reload INI". Theme changes made via Settings > Appearance are written to this file automatically. Boolean keys accept only true or false — typos (e.g., tru, yes, 1) are ignored with a console warning and the default is used. Enum keys (date-range, default-sort, summary-font) are validated against their allowed values.
[dashboard]
Controls dashboard behavior.
- popup-count — Number of invoices shown in summary box hover popups, sorted by amount due descending. Default: 5
- toast-duration — Auto-dismiss duration for dashboard confirmation messages, in milliseconds. Default: 7000 (7 seconds)
- card-title — Tailwind CSS classes for dashboard card header titles. Default:
font-semibold text-sm uppercase tracking-wide - card-bg — Card body container classes for stat cards, Quick Actions, and business info. Default:
bg-white rounded-lg shadow - card-header-bg — Tailwind background class for card header bars. When empty (default), derives from the global theme's table-head color. Example:
bg-purple-500 - card-value — Main stat value text classes (count/amount). Default:
text-2xl font-bold - card-subtitle — Secondary value line text classes. Default:
text-xl font-semibold mt-1 - income-color — Hex color for income bars in the monthly chart. Default:
#818cf8 - expense-color — Hex color for expense bars in the monthly chart. Default:
#64748b - positive-color — Tailwind text class for positive P/L values. Default:
text-blue-600 - negative-color — Tailwind text class for negative P/L values. Default:
text-red-600 - revenue-color — Tailwind text class for revenue amounts. Default:
text-green-700 - expense-text-color — Tailwind text class for expense amounts. Default:
text-red-700 - badge-draft — Tailwind classes for draft invoice badge. Default:
bg-gray-100 text-gray-600 - badge-sent — Tailwind classes for sent invoice badge. Default:
bg-blue-100 text-blue-700 - badge-printed — Tailwind classes for printed invoice badge. Default:
bg-purple-100 text-purple-700 - preset-name — Name of the active dashboard theme preset. Set automatically when a preset is applied from the Dashboard header dropdown or Settings > Appearance. Values:
Default, any built-in preset name, or a user-defined preset name.
[dashboard]
popup-count = 10
toast-duration = 5000
card-title = font-semibold text-base uppercase tracking-wide
income-color = #818cf8
expense-color = #64748b
[invoices]
Controls invoice defaults.
- start-number — Base invoice number for new invoices. The next invoice number is max(existing invoices, start-number) + 1. Default: 1000 (first invoice is 1001)
- date-range — Default date range for the Invoices list view. Also settable in Settings > General > Invoice Defaults. Default:
this-year - default-item — Default item for new invoice lines, by name (e.g., Consulting). Also settable in Settings > General. Default: none
- payment-terms — Default payment terms for new invoices (e.g., Net 30). Also settable in Settings > General. Default:
Due on Receipt - default-sort — Default sort for the invoice list as "field dir". Fields: date, number, customer, status, total, balance. Dir: asc or desc. Default:
date desc
Accepted date-range values: this-month, last-month, this-quarter, last-quarter, this-ytd, this-year, last-year, last-12, all
[invoices]
start-number = 5000
date-range = this-year
default-item = Consulting
payment-terms = Net 30
default-sort = date desc
[registers]
Controls Account Register, Bank Register, and Credit Card Register defaults. Can also be set via Settings > General > Register Defaults. Per-account overrides can be set in the Chart of Accounts.
- date-range — Default date range when opening a register. Default:
all(all dates, no filter)
Accepted values:
prev-month— First of last month through todaythis-month— Current monthlast-month— Previous full monththis-quarter— Current quarterlast-quarter— Previous full quarterthis-ytd— Year to datethis-year— Current calendar yearlast-year— Previous calendar yearlast-12— Last 12 monthsall— All dates, no filter (default)
[registers]
date-range = this-year
[chart-of-accounts]
Default checkbox states for the Chart of Accounts page. These set the initial state when no user preference has been saved.
- show-all-dates — Show balances from all dates (vs. year-to-date). Default:
true - hide-zero — Hide accounts with zero balance. Default:
false - show-inactive — Show inactive (deactivated) accounts. Default:
true
[chart-of-accounts]
show-all-dates = true
hide-zero = false
show-inactive = true
[general]
Controls general UI timing behavior.
- copy-duration — Auto-dismiss duration for "Copied!" clipboard confirmation toasts, in milliseconds. Default: 2000 (2 seconds)
- save-duration — Auto-dismiss duration for "Saved" indicators (e.g., after saving business profile), in milliseconds. Default: 3000 (3 seconds)
- open-links-in-tabs — When Tabs are enabled, automatically open cross-page links in a new tab instead of replacing the current view. Default:
false - switch-to-new-tabs — Automatically switch to a new tab when it opens. When false, new tabs open in the background. Default:
true
[general]
copy-duration = 1500
save-duration = 5000
open-links-in-tabs = true
switch-to-new-tabs = true
[help-theme]
Override Tailwind CSS classes for help page elements. Also editable via Settings > Appearance > Help Theme.
- heading — Main heading style. Default:
text-lg font-semibold text-gray-800 mb-3 - subheading — Secondary heading style. Default:
font-semibold text-gray-700 mt-4 mb-2 - section-heading — Section heading style. Default:
text-base font-bold text-gray-800 mt-6 mb-2 - text — Body text style. Default:
text-gray-600 mb-3 - labeled-list — Key-value list style. Default:
text-sm text-gray-600 space-y-2 - tip-box — Blue info box style. Default:
bg-blue-50 rounded-lg p-4 text-sm text-blue-700 space-y-1 - gray-box — Gray highlight box style. Default:
bg-gray-50 rounded-lg p-4 text-sm space-y-2 - code-block — Code block style. Default:
bg-gray-100 rounded px-3 py-2 text-xs font-mono text-gray-800 mt-1 mb-2 overflow-x-auto - link — Link style. Default:
text-blue-600 hover:underline - list — Bulleted list style. Default:
text-sm text-gray-600 list-disc list-inside space-y-1 mb-3 - grid — Grid layout style. Default:
text-sm text-gray-600 space-y-1
[compact-view]
Override Tailwind CSS padding classes used when Compact View is enabled. Also editable via Settings > Appearance > Compact View Padding.
- th — Table header padding. Default:
px-3 py-1.5 - td — Table cell padding. Default:
px-3 py-1 - td-register — Register table cell padding. Default:
px-3 py-1 - td-checkbox — Checkbox column padding. Default:
px-2 py-1 - td-action — Action button column padding. Default:
px-1 py-1 - div-row — Div-based row padding. Default:
px-3 py-1
[global-theme] and [global-theme-dark]
Override Tailwind CSS classes for core UI elements in light mode and dark mode respectively. Also editable via Settings > Appearance > Global Theme. Both sections use the same 10 keys:
- content-bg — Main content area background
- page-heading — Page header text style
- btn-primary — Primary button style
- btn-secondary — Secondary button style
- card-bg — Card/panel background and shape
- table-head — Table header row style
- row-hover — Table row hover effect
- focus-ring — Input focus ring color
- link — Link text color
- label — Form label style
[nav-theme]
Override Tailwind CSS classes for the left sidebar navigation. Also editable via Settings > Appearance > Sidebar Navigation.
- nav-bg — Sidebar background. Default:
bg-gray-900 - border — Sidebar border. Default:
border-gray-700 - title — App title text. Default:
text-white font-bold text-lg - item — Navigation item style (includes text color and padding). Default:
text-gray-300 px-4 py-0.5 text-base - item-active — Active item highlight. Default:
bg-blue-600 text-white - item-hover — Item hover effect. Default:
hover:bg-gray-800 - footer — Footer area style. Default:
text-xs text-gray-500
[cloud-sync]
Configure cloud sync connection. The enabled key is a master kill switch that overrides saved preferences — set to false to completely disable cloud sync. Other values serve as defaults when the Settings UI has no saved preferences. See Cloud Sync & Multi-User for full documentation.
- enabled — Master switch — set to
falseto completely disable cloud sync, overriding saved preferences. When false, the Cloud Sync checkbox in Settings is disabled and auto-connect is blocked. Default:true - server-url — Cloud server URL (must start with http:// or https://). Example: https://sync.example.com
- api-key — API key for server authentication. Stored in plain text.
- auto-connect — Automatically connect to the server on app launch. Requires
server-urlandapi-keyto be set. Separate from theenabledswitch —auto-connectcontrols startup behavior only. Default:false - messaging — Enable cloud messaging (send/receive text messages between connected instances). Default:
true - messaging-echo — Show your own sent messages in the Dashboard message area. Default:
false - dock-badge — Show macOS dock icon badge with unread message count. Default:
true
[cloud-sync]
enabled = true
server-url = https://sync.example.com
api-key = your-api-key-here
auto-connect = true
[multi-user]
Controls multi-user shared file mode. The enabled key is a master kill switch that overrides saved preferences.
- enabled — Master switch — set to
falseto completely disable multi-user mode, overriding saved preferences. When false, the Multi-User Mode checkbox in Settings is disabled and shared file locking is blocked. Default:true
[multi-user]
enabled = true
[backup]
Controls the automatic daily backup system. Backups are stored at ~/Library/Application Support/WyzBooks/data/backups/.
- enabled — Enable or disable auto daily backups. When
true, a backup is created on every app launch and every 24 hours. Default:true - keep-days — Number of days to retain backups. Backups older than this are automatically deleted. Default:
30 - keep-events — Number of recent events to keep in the event log after compaction. Older events are collapsed into a base snapshot. Lower values reduce file size; higher values preserve more history. Default:
1000
[backup]
enabled = true
keep-days = 30
keep-events = 1000
Custom Presets
You can define custom presets that appear in the Settings > Appearance dropdowns. Create a section with the format [preset-TYPE:Name] where TYPE is one of: help-theme, compact-view, nav-theme, global-theme, or dashboard.
[preset-help-theme:My Theme]
heading = text-xl font-bold text-blue-900 mb-3
tip-box = bg-blue-100 rounded-lg p-4 text-sm text-blue-800 space-y-1
[preset-nav-theme:Midnight Blue]
nav-bg = bg-blue-900
border = border-blue-800
item = text-blue-200 px-4 py-0.5 text-base
item-active = bg-blue-700 text-white
item-hover = hover:bg-blue-800
User presets appear with a star prefix in the dropdown. You can also create and manage presets from Settings > Appearance using the "Save as Preset" button.
Tips
- To reset the INI file to defaults, delete
~/.wyzbooks/wyzbooks.iniand restart the app. A fresh copy will be created automatically. - Back up your INI file before making changes. It is included in Settings > Export/Import backups.
- All 22 Tailwind CSS 3 color families are available for theme customization, including extended families like amber, teal, emerald, rose, violet, fuchsia, cyan, lime, orange, sky, slate, zinc, stone, and neutral.
- The INI file is separate from your accounting data. Resetting data does not affect your INI customizations.
- See
~/.wyzbooks/README.mdfor a full reference of available Tailwind CSS classes.