A beautiful booking website for a coastal cottage on Bailey Island, Maine.
Shore Leave — the peaceful stillness along the coast at sunset. This website lets friends and family reserve weekend getaways at a private cottage, with a password-protected booking system backed by Google Sheets.
✨ Beautiful Design — Sunset-inspired color palette with smooth animations
📅 Weekend Booking — Shows all 22 weekends from May–September 2026
🔒 Password Protected — Only people with the password can make reservations
📊 Google Sheets Backend — No database needed, just a simple spreadsheet
🚀 GitHub Pages Hosting — Free, fast, and reliable
📱 Mobile Responsive — Works perfectly on phones, tablets, and desktops
shore-leave/
├── index.html # Home page
├── about.html # About the cottage
├── schedule.html # Booking/schedule page
├── css/
│ └── style.css # Shared stylesheet
├── js/
│ └── schedule.js # Booking logic & API integration
├── apps-script/
│ ├── Code.gs # Google Apps Script backend
│ └── sheet-structure.md # How to set up the Google Sheet
├── SETUP.md # Complete deployment guide
└── README.md # This file
Follow the SETUP.md guide for complete step-by-step deployment instructions.
Quick overview:
- Create a Google Sheet with weekend data
- Deploy the Apps Script as a web app
- Create a GitHub repository and upload the website files
- Update
js/schedule.jswith your Apps Script URL - Enable GitHub Pages
- Share the URL and password with your guests!
- Coral:
#FF6B47— Warm sunset glow - Gold:
#FFB347— Golden hour light - Ocean Teal:
#4ECDC4— Coastal waters - Sand:
#F7DC6F— Beach tones - Warm White:
#FFF8F0— Soft background - Charcoal:
#2C3E50— Text and anchors
- Headings: Playfair Display (serif, elegant)
- Body: Inter (sans-serif, clean and modern)
- Frontend: Pure HTML, CSS, JavaScript (no frameworks!)
- Backend: Google Apps Script (serverless API)
- Database: Google Sheets
- Hosting: GitHub Pages
- Cost: $0 (completely free)
All the placeholder content can be edited:
- About page: Update cottage details, amenities, directions
- Color scheme: Modify CSS variables in
style.css - Weekend dates: Edit the Google Sheet to change or add weekends
- Password: Change in the Google Sheet Config tab (cell B1)
- Reservation password is required to book weekends
- Password is validated server-side in Google Apps Script
- Guest names are stored in the sheet but NOT exposed via the API
- Only "Available" or "Taken" status is shown publicly
Works in all modern browsers:
- Chrome/Edge (latest)
- Firefox (latest)
- Safari (latest)
- Mobile browsers (iOS Safari, Chrome Mobile)
This is a private project for personal use. Feel free to adapt it for your own cottage or vacation rental!
Built with ❤️ for coastal getaways and sunset watching 🌅
夕凪 — May you find your evening calm