Theme Pulse
Auto-switch VS Code themes, fonts, and settings — on startup or on a schedule.
Features
- Startup switch: Apply a random (or sequential) preset each time VS Code starts
- Scheduled switch: Automatically rotate settings every N minutes
- Multiple presets: Define named groups of VS Code settings to cycle through
- Manual control: Commands to switch immediately or pick a specific preset
Configuration
themePulse.enabled
Type: boolean, default: true
Master switch to enable or disable automatic switching.
themePulse.switchOnStartup
Type: boolean, default: true
Apply a preset when VS Code starts.
themePulse.interval
Type: number, default: 0
Interval in minutes between automatic switches. Set to 0 to disable scheduled switching.
themePulse.mode
Type: "random" | "sequential", default: "random"
How the next preset is selected:
random — Pick a random preset (different from the current one when possible)
sequential — Cycle through presets in order
themePulse.presets
Type: array, default: []
A list of configuration presets. Each preset has:
name — A display name shown in notifications and the preset picker
settings — An object of VS Code settings to apply
Example:
{
"themePulse.presets": [
{
"name": "Dark Modern",
"settings": {
"workbench.colorTheme": "Default Dark Modern",
"editor.fontFamily": "'JetBrains Mono', monospace",
"editor.fontSize": 14
}
},
{
"name": "Light Modern",
"settings": {
"workbench.colorTheme": "Default Light Modern",
"editor.fontFamily": "'Cascadia Code', monospace",
"editor.fontSize": 13,
"editor.fontLigatures": true
}
}
]
}
Any VS Code setting in section.key format can be used: editor.tabSize, terminal.integrated.fontFamily, workbench.colorCustomizations, etc.
Commands
| Command |
Description |
Theme Pulse: Switch Now |
Immediately switch to the next preset based on the configured mode |
Theme Pulse: Select Preset |
Open a quick pick menu to manually choose a preset |
License
MIT