Skip to content

lukehollenback/wallpaper-generator

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

48 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Wallpaper Generator

Generate desktop and mobile wallpapers with color-theory palettes and layered patterns. Runs entirely client-side — no server, no build step, just static files served via GitHub Pages.

Live Demo →

Features

  • 9 pattern types → gradient, geometric, waves, noise, particles, text, landscape, celestial, texture.
  • Layered compositing → stack unlimited patterns with per-layer opacity, blend modes, and CSS filters.
  • Color theory engine → 5 harmony types (complementary, analogous, triadic, split-complementary, tetradic) with dark/light variant generation.
  • 21 built-in presets → one-click starting points from minimal gradients to full sci-fi landscapes.
  • PNG export → download dark, light, or both variants at any resolution up to 5K.
  • Shareable links → config encoded in the URL hash fragment for zero-server sharing.
  • Responsive neumorphic UI → dark/light theme toggle, live preview, drag-to-reorder layers.

Tech Stack

Layer Choice
Language Vanilla JS (ES modules, no build step)
Rendering Canvas 2D API
Styling CSS custom properties, neumorphic design
Icons Lucide via CDN
Fonts DM Sans + Outfit
Testing Vitest (117 tests across 10 files)
Hosting GitHub Pages (static files)

Development

# Install dev dependencies (Vitest only).
npm install

# Run tests.
npm test

# Run tests in watch mode.
npm run test:watch

No build step — open index.html directly or serve with any static file server.

Project Structure

├── index.html              Entry point.
├── css/                    Stylesheets (variables, base, components).
├── js/
│   ├── core/               Color engine, layers, renderer, config, presets.
│   │   └── patterns/       Pattern implementations + registry.
│   └── ui/                 Theme, controls, layers panel, preview, download.
├── tests/                  Vitest test suites mirroring js/ structure.
└── docs/specs/             Behavior specifications (6 spec files).

License

MIT

About

Generate desktop and mobile wallpapers with color-theory palettes and layered patterns. Runs entirely client-side via GitHub Pages.

Topics

Resources

License

Stars

Watchers

Forks

Contributors