How can we help?
Help with our Mac apps, your license key, or the website we look after for you. Pick a product, check the common answers, and write to us if you’re still stuck.
Replies within 24 hours on business days No account needed Lost keys recovered instantly
What do you need help with?
Choose a product and we’ll show the answers people ask for most, then fill it in on your ticket.
Using Kettlestitch? Its help and support live at kettlestitch.app ↗
Before you write: common answers
Most XenoKit questions are answered here. If yours isn’t, the ticket form is right below.
Frequently asked
What does XenoKit do?
XenoKit watches your web projects and compiles Sass, JavaScript, TypeScript and CSS when files change, by rules you keep in a .xenokit.yml file in each project. It can also run your own commands and keep dev servers such as Vite running.
Which Macs does XenoKit run on?
Macs with Apple silicon, running macOS 15 or later. It doesn’t need Homebrew, Node.js or npm.
Does XenoKit send anything over the network?
Only to install compilers and check for their updates, from registry.npmjs.org and nodejs.org, at most once a day and never installing anything on its own. There are no accounts, analytics or telemetry.
Does it need an administrator password?
No. XenoKit isn’t sandboxed, but it never asks for an administrator password or root, and the command-line tool installs into your own ~/.local/bin or ~/bin.
Help articles
- Getting started with XenoKitInstall XenoKit, add the command-line tool, and set up your first project so it compiles as you save.
- The xenokit command lineThe commands you’ll use most, how --json and --dry-run work, and what the exit codes mean.
- Import your CodeKit projectsBring one CodeKit project, or all of them, into XenoKit, and check the output matches before you switch.
Reporting a bug? Tell us what you expected and what happened instead, and attach a screenshot or the app’s log file if it has one. It’s the fastest way to an answer.
Open a ticket
Still stuck? Send us the details. Every reply comes by email with your ticket number in the subject, so the whole conversation stays on one ticket.