Patterns, surfaces and textures
Nineteen repeating patterns, seventeen generated surfaces, and the same thing made from a photograph of your own: a wall, a sheet of paper, a piece of linen. Take the CSS, the SVG or the PNG.
Drop a photograph here
It is read in this page and never uploaded.
What it is doing
The patterns are one or two CSS gradients each. No image is fetched and nothing is generated, so a pattern costs the same as a flat colour, stays sharp at any size, and recolours instantly because the colour is in the declaration rather than baked into pixels.
The surfaces are SVG filters: turbulence, shaped and lit. The ones that read as a material rather than a pattern have a light source, which is why concrete and plaster have a direction to them and static does not. They are still text, so they scale and recolour the same way.
From a photo arrives at the same place from the other end. The lighting of the room is taken back out, the edges are blended so the tile repeats without a seam, and then you can stop there or keep going: Surface reads the result as a height field and lights it from a direction you choose, which is the same shading model the generated surfaces use, and Normal map writes that relief out in the form a 3D tool or a shader wants.
A photograph is read in this page and never uploaded. Nothing is stored, and closing the tab is all the cleaning up there is.