The product website for BetterTile, a free, open-source macOS window manager.
Use Node.js 22 or later. No npm dependencies are required.
npm run build
npm run devOpen http://localhost:4175. The build checks the demo and creates dist/.
The interactive windows and Settings are browser simulations.
- In the website repository, open Settings → Pages.
- Set Build and deployment → Source to GitHub Actions.
- Push to
main, or run Website checks and GitHub Pages from Actions. - Open the deployment URL reported by the workflow.
Pull requests run the build checks. Only main publishes. The workflow uploads
dist/, which contains only the site's HTML, CSS, JavaScript, and app icon.
GitHub Actions uses its short-lived repository token; no custom secret is needed.
Buy and verify ownership of the domain before directing its DNS to Pages. Add the domain in Settings → Pages → Custom domain. Configure the records specified by GitHub's custom-domain guide, then enable Enforce HTTPS when GitHub's certificate is ready. The free GitHub Pages address works before a custom domain is connected.
The site has no analytics or third-party scripts. Its theme choice is saved in the browser's local storage. Demo choices stay in memory. GitHub receives ordinary web request metadata when it hosts the site. Download and source links open the BetterTile GitHub repository.
The Layout Wheel sector geometry and default actions follow BetterTile's
LayoutWheelView.swift and LayoutWheel.swift. The browser draws SVG action
diagrams; it does not run the native app or control real windows.