Getting started
What Basemode does, and a first sync in five minutes.
Basemode keeps design tokens in sync with code. A designer changes a variable in Figma and presses Publish. Basemode turns the variables and styles into code in the formats your team uses, opens one pull request with a plain-language summary, and fixes references to renamed tokens along the way.
Five minutes, no Figma needed
- Create an account with Get started at the top of this page. The Free plan needs no card.
- Create a design system and choose Load sample tokens. You get a small, realistic system with a light and a dark mode.
- Open Export to see what the tokens become in CSS, Tailwind, TypeScript, Swift, Android and the rest.
- Load the sample again. The second version renames a token and changes a color, so Changes shows you what a real update looks like.
Connect your own
| Step | Where | What you need |
|---|---|---|
| Bring in tokens | Figma plugin or Figma's API | Any Figma plan for the plugin; Figma Enterprise for variables over the API |
| Deliver code | A GitHub or GitLab token, the GitHub Action or the CLI | Write access to a repository |
| Keep code on spec | basemode lint in CI and the MCP server for coding agents | Nothing extra |
| Share with everyone | A shared docs page | Nothing extra |
What a sync does
- Reads every variable and style and follows each alias in every mode. A broken alias becomes a warning, not a failed sync.
- Saves a snapshot only if something changed.
- Compares the generated files with your base branch. If the repository already matches, no pull request is opened.
- Measures the change against
basemode.lock.jsonon the base branch, so the pull request describes what merging it really does. - Rewrites code that uses renamed tokens, and lists files that still use removed ones.
- Commits to the
basemode/tokensbranch, opens or updates one pull request, and tells your team in the app and in Slack.
A scheduled sync with nothing new leaves the repository alone, so a pull request someone closed on purpose doesn't come back every night.