A fully interactive, canvas-based lava lamp simulation meant to run anywhere — open locally or publish via GitHub Pages.
- Classic lava lamp silhouette — iconic thin vessel with chrome top and base
- Heat-driven physics — blobs rise when hot, cool, then sink; stretch and deform as they move
- Custom colours — built-in palette presets plus a native colour picker for your own combos
- More responsive layout across desktop and mobile
- Clone or download this repository to your machine.
- Open
index.htmldirectly in any modern browser (Chrome, Firefox, Safari, Edge). - No build tools, no installation, no server required.
- Push this repo to GitHub.
- Go to Settings → Pages.
- Under Build and deployment, set the source to Deploy from a branch.
- Select the
mainbranch and the root folder. - Click Save. The site will be live within a minute.
Live URL will look like: https://dresrok.github.io/flisol-ha/
| Control | Description |
|---|---|
| Brightness / Glow | Adjusts the intensity of the blob glow |
| Heat / Convection Speed | Thermal cycle intensity — higher = faster heat/cool and more energetic rising/sinking |
| Blob Count | Number of blobs inside the lamp (3–25) |
| Color Palette | Switch between Sunset, Ocean, Forest, Berry, Gold presets, or choose Custom… |
| Custom Colors (when Custom selected) | Choose your own primary and secondary blob colours |
| Restore Defaults | Resets all controls to factory settings |
| File | Purpose |
|---|---|
index.html |
Main page structure, lamp hardware chrome, and layout |
styles.css |
Responsive styles, glass morphism UI, classic lamp silhouette |
script.js |
Canvas rendering engine, heat/buoyancy physics, blob merging/stretching, controls |
README.md |
This file |
- Uses Canvas 2D with
screencompositing for soft additive glow. - Blobs model simple thermal states: heat at the bottom → rise and stretch → cool at the top → sink and contract.
- Responsive layout switches from side-by-side (desktop) to stacked (mobile).
- All paths are relative so it works on any host, including GitHub Pages.
- Zero external dependencies — no CDNs, no build step.
Any browser with modern ES6 and Canvas 2D support (all evergreen browsers).
- Lower Blob Count if running on older hardware.
- Reduce Brightness to ease GPU load on high-DPI displays.
MIT — free to remix and share.