Delicate Apps · Widget

App Shots. Your sites, alive in a card.

Screenshots of your websites, taken by a small Docker tool and shown as cards that come alive. On a computer the site scrolls inside a browser frame when you hover. On a phone, one swipe shows the mobile version. One script, one config file.

Try it

Hover a card. On a phone, swipe it.

Real screenshots of sites built at Delicate Apps, taken with the App Shots shooter. Hover a card to watch the site scroll in its frame. On a phone, swipe a card to the left for the mobile version.

What it does

Show the work, not a list of links.

Real screenshots, taken for you

A small Docker tool with its own app in your browser visits every site and saves a desktop and an iPhone screenshot. Use them in the cards, or on their own as WebP, PNG or JPEG.

Alive on hover

On a computer the card swaps its motif for the site in a browser frame, which scrolls slowly from top to bottom and back.

A swipe on phones

On touch screens the motif comes first. One swipe shows the mobile site in a phone frame, and two dots show where you are.

Motifs that move

Ten animated motifs in each card's color, or your own image or SVG. Cards without screenshots simply keep their motif.

Light on the page

One module with no dependencies, about 9 KB. Screenshots load only when a card comes near the screen, and each device loads only the ones it shows.

Your colors, your grid

Colors, corners, fonts and card width from the config file. The grid fills as many columns as fit, from one on a phone to four on a wide screen.

Configure

List your sites, take both files with you.

List your sites, take the list with you.

Every change here writes into the two files below: sites.txt tells the shooter what to photograph, appshots.config.json tells the widget what to show. Names that match a screenshot show it in the preview.

Every change here writes into sites.txt below, the list the shooter works through. The preview shows the files you will get.

You need
Sites

The short name becomes the screenshot file name, so keep it the same in both files.

Colors
Options
Views
Format
Size

Card size is 640 px wide on a computer and 480 px on a phone. Full resolution is 2560 px and 1170 px.

Page length

Put this sites.txt into the shooter folder from appshots-shooter-0.3.1.zip and run docker compose run --rm shots there. The images land in its shots folder.

Preview

        

Set it up

One command for the shots, two lines for the page.

Download

Unzip appshots-0.3.1.zip. It holds the widget, an example page and the shooter folder with everything Docker needs.

Take the shots

Double-click start in the shooter folder and add your sites in your browser, or put your sites.txt there and run the command below. The screenshots land in shooter/shots; copy that folder next to your config.

Place it

Upload app-shots.js, your appshots.config.json and the shots folder, add an element with data-appshots and load the script once.

shooter folder · your page
# take the screenshots, inside the shooter folder
docker compose run --rm shots

<!-- where the cards go -->
<div data-appshots="/appshots/appshots.config.json"></div>

<!-- once, anywhere on the page -->
<script type="module" src="/appshots/app-shots.js"></script>

Only need the screenshots?

Download appshots-shooter-0.3.1.zip, the shooter on its own. Double-click start and it opens in your browser: add your sites, take the screenshots, download them. Use them anywhere, from a portfolio to slides or a client report.

Write my sites.txt

Licence

Free to use, with our mark in the corner.

App Shots is free for your site. The Delicate Audio icon and copyright line under the cards stay visible and unchanged.

Need App Shots without our mark, for a client or inside your own product? An unbranded version is available on request.

armin.lanzinger@gmail.com
© 2026 Delicate Audio stays visible

Built by Armin Lanzinger in Innsbruck. The widget has no third-party code. The shooter runs Chromium through Playwright and saves images with Pillow, fetched when its Docker image is built; their licences are listed in THIRD_PARTY.md.