A single-page interactive wishing well experience built with vanilla HTML, CSS, and JavaScript for GitHub Pages.
/home/runner/work/wishing-well/wishing-well/index.html— semantic app shell, layered well scene, canvas overlays, and modals/home/runner/work/wishing-well/wishing-well/css/well.css— midnight theme, isometric well exterior, scroll journey layers, and modal UI/home/runner/work/wishing-well/wishing-well/js/scroll.js— scroll-driven layer progress updates/home/runner/work/wishing-well/wishing-well/js/canvas.js— water shimmer and ambient dust canvas animation loops/home/runner/work/wishing-well/wishing-well/js/firebase.js— Firestore initialization plus submit/fetch helpers/home/runner/work/wishing-well/wishing-well/js/app.js— modal flow and wish form events
- Create a Firebase project and enable Firestore (Spark/free tier).
- In the Firebase console, create a web app and copy its config object.
- In
index.html, definewindow.__WISHING_WELL_FIREBASE_CONFIG__beforejs/firebase.jsloads, for example:
<script>
window.__WISHING_WELL_FIREBASE_CONFIG__ = {
apiKey: "...",
authDomain: "...",
projectId: "...",
storageBucket: "...",
messagingSenderId: "...",
appId: "..."
};
</script>- Use a Firestore collection named
wisheswith documents in the shape:
{
text: string,
createdAt: timestamp,
color: string
}Because this is a static project, you can run it with any static file server, for example:
python -m http.server 8080Then open http://localhost:8080.
- Push this repository to GitHub.
- Go to Settings → Pages.
- Set source to deploy from your default branch root.
- Save and wait for Pages to publish.
Available at `https://nyan-dev.github.io/wishing-well/'.