Repository navigation
Plotlas turns a folder of images, with optional metadata, into a pannable, zoomable map in the browser. It is built for large collections, up to a million images, and runs entirely on your own server.
Live demo: https://app.plotlas.com
- Smithsonian Art Collection: 203,540 images
- Rijksmuseum Collection: 49,048 images
What's in this release
Viewing
- Arrange a collection:
- as a grid;
- by date;
- by category;
- by any two numbers, for example a UMAP or t-SNE embedding;
- geographically.
- Search for a value and fly to it. Filter by tag. Click an image to see its metadata and view it at full resolution.
- Zoom from the whole collection to one image. Every image on screen sharpens to full resolution when you stop moving.
- Phones and tablets: pinch, double-tap and drag, with a small-screen layout.
- If browser graphics fail, the viewer recovers instead of going blank.
- Link straight to a collection with
?d=<collection-id>.
Building and managing collections
- Upload images, with an optional metadata CSV, in the browser. Uploads go in chunks, can span several archives, and resume after an interruption. You can also build a collection from the command line.
- Layout designer. You can:
- choose which columns drive the arrangements;
- add, replace or remove arrangements;
- change the settings of an arrangement that is already built;
- review the changes before you commit them.
- A collection's name, credit line, column labels and default arrangement are stored in its own folder. So you can copy a collection to another server with its settings intact.
Privacy and security
- No outbound network calls: no telemetry, analytics, third-party scripts or update checks. Once a collection is built, Plotlas runs air-gapped.
- Photo metadata is removed: served images carry no EXIF data, GPS included.
- A hardened public profile (
docker-compose.public.yml):- automatic HTTPS and security headers;
- collections are mounted read-only;
- the web server serves only what the viewer needs;
- sign-up is off in production;
- build logs are visible only to a collection's owner.
Getting started
See Quick start in the README: run docker compose up --build, then open http://localhost:8080. To run Plotlas on a public server, see Deploying it publicly.
Licence
Plotlas uses the PolyForm Noncommercial 1.0.0 licence. It is free for personal, research, teaching, non-profit and public-institution use. Commercial use needs a licence: see COMMERCIAL.md or email licensing@plotlas.com.
Would you rather not run it yourself? Hosted Plotlas is available: hello@plotlas.com.
Known limitations
- In the public profile, sign-up is off and the administrator creates accounts from the command line.
- Collections are stored on the server's local disk, so they must fit on it.
What's next
Multi-user support: self-service accounts, so people can upload and manage their own collections and choose who can see them.