GuideOctober 27, 20266 min read

The Frontend Developer's Config Sync Checklist

Every config, extension, and dotfile a frontend developer needs to sync across machines. Never reconfigure ESLint or lose your Prettier settings again.

The Frontend Config Problem

Frontend development involves a staggering number of configuration files. Between your editor, linter, formatter, package manager, Node.js version manager, browser dev tools, and design tokens, there are dozens of files that define how you work. Lose any one of them and your workflow breaks in subtle, frustrating ways.

The real problem is not any single config file. It is the combination. Your Prettier config needs to match your ESLint config, which needs to match your VS Code settings, which need to reference the right extensions. When you set up a new machine or switch between a desktop and laptop, every piece has to be in place or your code starts looking different, your linter throws false positives, and your team thinks you stopped caring about formatting.

This checklist covers everything a frontend developer should be syncing with ConfigSync. Work through it once, and you will never manually configure a frontend environment again.

VS Code with ESLint and Prettier Extensions

VS Code is the default editor for most frontend developers, and your settings go far beyond the defaults. You have carefully tuned format-on-save, configured ESLint to run on file change, set Prettier as the default formatter, and installed dozens of extensions.

Enable the VS Code module
# Sync VS Code settings, keybindings, snippets, and extensions $ configsync enable module vscode # This captures: # ~/.config/Code/User/settings.json # ~/.config/Code/User/keybindings.json # ~/.config/Code/User/snippets/ # Extension list (installed via CLI on restore)

The vscode module captures your full editor state, including the list of installed extensions. When you pull on a new machine, it installs each extension via the code --install-extension command. No more scrolling through the marketplace trying to remember which 23 extensions you had.

NPM Authentication and Registry Config

If you use private registries, scoped packages, or GitHub Packages, your .npmrc contains auth tokens and registry URLs that are essential to your workflow. Losing them means you cannot install dependencies.

Sync npm and git configs
# Enable npm and git modules $ configsync enable module npm $ configsync enable module git # Add project-level configs $ configsync add config ~/.prettierrc $ configsync add config ~/.eslintrc.json $ configsync add config ~/.nvmrc
Your .npmrc may contain auth tokens. ConfigSync encrypts all tracked files with AES-256-GCM before upload, so your registry credentials stay safe.

Node.js Version Manager Config

Whether you use nvm, fnm, or Volta, your Node.js version manager has configuration that determines which version of Node runs by default. The .nvmrc in your home directory sets the global default, while project-level files pin versions per repository.

ConfigSync tracks your global .nvmrc automatically through the node module. For project-level files, they live in the repo and do not need syncing. But your global default matters: without it, a new machine might default to the wrong Node version and your builds break silently.

Browser Dev Tools and Design Tokens

Chrome DevTools has exportable settings, but most developers never bother. Network throttling presets, custom device dimensions for responsive testing, and workspace mappings all live in your browser profile. While ConfigSync does not directly capture browser state, you can track exported settings files.

Figma tokens and design system configuration files are another overlooked category. If you use tools like Style Dictionary or Tailwind config generators, those output files should be tracked.

Track Tailwind and design configs
# Track your global Tailwind preset $ configsync add config ~/tailwind-preset.js # Track custom CSS variables or design tokens $ configsync add config ~/.config/style-dictionary/config.json

Environment Files Per Project

Frontend projects increasingly rely on environment variables: API endpoints, feature flags, analytics keys, and authentication URLs that change between local, staging, and production. These live in .env.local files that are gitignored and easy to lose.

Track project environment files
# Add .env files for your frontend projects $ configsync add env ~/projects/webapp/.env.local $ configsync add env ~/projects/webapp/.env.development # These are encrypted and tied to your project path # On a new machine, they restore to the same location

Packages and CLI Tools

Frontend developers rely on global npm packages and system tools that are easy to forget. Here is a typical set:

ToolPurposeSynced Via
node / npmRuntime and package managerhomebrew module
typescriptGlobal TypeScript compilernpm module
vercel / netlify CLIDeployment toolsnpm module
prettierCode formattingnpm module
eslintLintingnpm module
http-serverQuick local servernpm module

The Complete Frontend Push

Once everything is configured, a single push captures your entire frontend environment:

Push your frontend setup
$ configsync push -m "Complete frontend environment" Scanning modules: vscode, npm, git, shell, homebrew... Tracking configs: .prettierrc, .eslintrc.json, .nvmrc Encrypting 3 env files... Pushed snapshot (1.8 MB) in 4s.

The next time you sit down at a different machine, configsync pull brings back everything: your editor exactly how you left it, your linter rules, your formatter settings, your Node version, your package manager auth, and every project environment file. No checklist required.

Ready to try ConfigSync?

Sync your entire dev environment across machines in minutes. Free forever for up to 3 devices.