BikeControl (SwiftControl)
Use Zwift Click, Zwift Play, Shimano Di2, or any Bluetooth controller with MyWhoosh, Rouvy, Zwift, and more. Free to try on iOS, Android, Windows, and macOS.
Golf companion PWA — caddie, live scorecard, course finder, and golf weather. No backend, works offline.
Translation pending
Sports & fitnessJavaScript · CSSGitHub @Nebby-SecOnlineOwner unconfirmed
Have you tried it? One tap is enough. No sign-in needed.
No updates detected yet. GitHub releases will appear here.
Owners of public repositories under a personal GitHub account can sign in to verify ownership and manage the introduction themselves. No administrator approval is needed.
Sign in, generate a verification file, and commit it to this repository’s default branch within 30 minutes. Files on other branches or forks do not count. Then check the file below to manage the project without administrator approval. Keep the file to retain your access.
If needed, you will go to sign-in. After signing in, return here and press your chosen verification button again.
Run /nomorevibe verify in your project folder to verify ownership and manage the introduction yourself.
Verify in one minuteAsk about other verification options
The maker's introduction consists of the line above. Read the repository README for more details. Repository README ↗
Loading the full README.
Read the full README ↗A golf companion web app — AI caddie, live scorecard, course finder, and golf-specific weather. Built as a progressive web app: no backend, no accounts, installable on your phone, and it keeps working on the course when you lose signal.
Live: parsense-golf.netlify.app
A personal, non-commercial project. ParSense is built and shared for free with friends. It takes no payments, runs no ads, collects nothing server-side, and is not a commercial product or service. The weather and map data it uses is provided under free/non-commercial terms, and keeping the project non-commercial is what keeps that usage within those terms.
Your golfer profile drives personalization across the whole app — name, home town, handicap bracket, typical 18-hole score, and your driver / 7-iron carry distances. Click the avatar to generate a new randomized golf scene (sunsets, night skies with stars, bunkers, tree lines, and a golfer character with varied hair, skin tones, and outfits).
A live hole-by-hole scorecard. Editable par per hole to match the real card, color-coded results (birdie / bogey / double), OUT and IN subtotals, and a running Thru / Strokes / To Par summary. Auto-saves every tap, so you can close the app mid-round and pick up where you left off.
Saved rounds with computed stats — rounds played, average score, best score, average to par, and average putts.
Live conditions from Open-Meteo with a golf-specific verdict (wind affecting club selection, rain, cold killing carry distance, lightning warnings), plus an interactive precipitation radar centered on your location.
Plain HTML, CSS, and JavaScript — no framework, no build step, no bundler. Open index.html and it runs.
| Concern | Approach |
|---|---|
| Data storage | localStorage — per device, nothing leaves the browser |
| Weather | Open-Meteo (free, no API key) |
| Radar | Windy.com embed |
| Course data | OpenStreetMap via the Overpass API |
| Geocoding | Open-Meteo geocoding |
| Offline | Service worker caching the app shell |
No API keys are required, and no server is needed.
Commits in this repository carry a Co-Authored-By: Claude trailer, reflecting that the project was built with AI assistance.
Open index.html directly, or serve it (needed for the service worker and geolocation):
python -m http.server 5173
Then visit http://localhost:5173.
index.html markup for all six tabs
style.css styling, theming, light/dark palettes
app.js all application logic
sw.js service worker (offline support)
manifest.json PWA manifest
icon-192.png app icons
icon-512.png
What stays on your device: profiles, rounds, scores, and your avatar live in your browser's localStorage. There is no backend, no account, and no analytics. Each person who opens the app gets their own independent copy, and nobody can see anyone else's data.
What leaves your device: ParSense talks to third-party services to answer requests, and those requests necessarily include your IP address plus:
| Service | What it receives | Why |
|---|---|---|
| Open-Meteo | The town you type, then its coordinates | Weather conditions and geocoding |
| Overpass / OpenStreetMap | Coordinates of your home town, or your GPS position if you use "Use my exact location" | Finding nearby courses |
| Windy.com | Coordinates, via an embedded iframe | Precipitation radar |
| Course name, only when you click a fallback search link | Finding tee times / rules |
The Windy radar is a third-party embed and may set its own cookies. If you deploy this for others, that is worth disclosing to them — it's the one component that could carry tracking you don't control.