Sailwing
Wind on the map, sails in your hands. Trim a 7 m keelboat, plan a race leg, and follow the navigator on your phone.
Sailwing is a sailing-trim and race-navigation tool that runs in the browser. The map is on the left and the trim panel on the right. You place a 7 m keelboat, sheet the main and jib, and ask how to reach a mark. Wind, land and depth are fetched in the page.
Open it at sailwing.burso.eu. The same build is at sailwing.burso.workers.dev. The write-up, including where the velocity-prediction model stops, is on the blog.
On the water
A tack costs 10 seconds and a gybe 6, so a short leg stays straight unless the two-board route arrives sooner. The course is saved on the device. Draft defaults to 1.5 m and the shore margin to 40 m, both under Plan → Safety. On the map, red is too shallow and amber is inside that margin. Depth covers European seas. Lakes and other seas keep the shore margin only.
Small rocks, moorings and anything newer than the data are missing. Keep a lookout.
Develop
npm install
npm run dev # http://localhost:5173
npm test # physics, navigator and routing
npm run build # static site in dist/npm run dev:phone serves HTTPS on your LAN so a phone can use GPS. npm run deploy builds and runs wrangler deploy. Pushes to main are built and deployed by Cloudflare’s Git integration. GitHub Actions runs the tests and the build.