PhotoStructure is designed to be a safe, permanent home for all your photos and videos.
There are many, many software packages to help manage photos and video libraries.
PhotoStructure is uniquely focused on
- 🏰 ownership,
- 🏖️ convenience,
- 🛡 privacy, and
- 💎 permanence of your library.
Features unique to PhotoStructure are marked with a 🌟.
🏰 Ownership 🔗
PhotoStructure is “self-hosted,” which means it only runs on your computer.
PhotoStructure isn’t yet-another cloud-based photo service that will be discontinued, shut down, involved in a privacy scandal, or disappear, along with your photo library.
Your photos, videos, and metadata safely stay with you, and always will.
🏖️ Convenience 🔗
PhotoStructure is designed to be easy to install and effortless to run.
PhotoStructure runs on most computers 🔗
PhotoStructure doesn’t require any expensive, proprietary hardware. It happily runs on your laptop, desktop, server, PiBox, network-attached storage, or virtual private server.
We’ve got desktop installers for macOS, Windows 10, and Ubuntu. Server installations, including docker, are supported.
Upgrades are automatic for most editions of PhotoStructure.
View your library on any of your devices 🔗
The PhotoStructure library user interface is web-based, designed to be quick and fun to use even over limited bandwidth connections.
Quick and easy installation 🔗
PhotoStructure’s desktop installation takes less than a minute, and the welcome page only has a couple of questions before you’re on your way.
Fast and fun browsing of “samples” 🌟 🔗
Photo galleries typically show you the last handful of photos and videos you’ve taken.
The human brain is remarkable at image recognition and pattern matching. We recognize patterns effortlessly and find repetition boring: like seeing the last handful of photos and videos you’ve taken.
We find new patterns and images interesting, and even delightful.
When you view your PhotoStructure library’s home page, you’ll see a random
selection, or “sampling,” of images from your library. When you click
you don’t see all photos in reverse-chronological order, but instead, a random
“sample” of images from every year. Click on a year, and you’ll see a random
sampling from each month.
This makes every PhotoStructure page delightfully different.
You’ll find yourself rediscovering and enjoying memories you haven’t seen for years and years.
Polite work scheduling 🔗
PhotoStructure schedules background work carefully to always keep your computer usable and responsive, even during CPU-heavy library imports and filesystem scans.
Automatic imports and synchronization 🔗
PhotoStructure can automatically import photos and videos from all your drives.
PhotoStructure will find that old backup folder that has some long-forgotten baby pictures, and the new photos you just uploaded, without you doing anything.
Automatic organization 🔗
What I had before I started PhotoStructure: a pile of hard drives and old backups and duplicates and some files that had succumbed to bit rot. A big, intractable mess.
What I wanted: a deduplicated set of all my photos and videos, in one organized folder hierarchy.
So I wrote it. PhotoStructure can bring some order to your chaos with automatic organization.
Advanced de-duplication 🌟 🔗
PhotoStructure automatically groups together duplicate copies and similar variations of your photos and videos, and scales to libraries with millions of files.
PhotoStructure doesn’t just de-duplicate the same file contents, mind you: we use direct and inferred metadata, as well as rotation-invariant image content heuristics to aggregate variations. We believe it’s the most robust and scalable solution available to consumers: PhotoStructure’s a really super de-duper.
Support for many photo and video formats 🔗
PhotoStructure supports several hundred image and video formats, including JPEG, many RAW image types, HEIC, and many video formats.
Automatic photo and video validation 🔗
Photos and videos are automatically checked for corruption before being imported into your library.
Advanced metadata handling 🌟 🔗
PhotoStructure reads metadata information from
and Google Takeout
For the files that are missing important metadata, like when the asset was captured, PhotoStructure uses a series of heuristics to “fill in the gaps,” including interpolating captured-at time from sibling files and parsing pathnames for embedded datestamps.
This metadata inference is leveraged by automatic organization.
Advanced search 🌟 🔗
PhotoStructure supports a rich search grammar to quickly and easily find just what you were looking for.
Read more about PhotoStructure’s search feature here.
Automatic file conversions 🔗
PhotoStructure builds high-quality JPEG previews for raw image formats (typically from dSLR and mirrorless cameras) so they are viewable by modern browsers.
Video assets are automatically transcoded to a format supported by modern browsers when needed.Install PhotoStructure on your desktop or server
🛡 Privacy 🔗
Your photos and videos always stay on your hardware.
If you use the free lite edition of PhotoStructure, you’ll never share any personally identifiable information with us.
If you start a trial plus subscription, we only ask for an email address. We only ask for payment information after the free trial period, and only if you decide to subscribe.
The product includes error reporting, but you can opt-out at any time via the settings page.
How does PhotoStructure make money? 🔗
If you are not paying for it, you’re not the customer;
you’re the product being sold.
– Andrew Lewis
PhotoStructure’s only source of revenue is from our users who opt into a plus subscription.
PhotoStructure does not and will never sell our users’ data or metadata.
We’ve designed PhotoStructure from the ground-up to keep your photos and videos on computers you own or control. PhotoStructure contacts external servers only when absolutely required, like for error reporting.
When does PhotoStructure contact external servers? 🔗
PhotoStructure error reporting is opt-in during the installation process. This data is only used for customer support. More details, including what is in an error report, and how to disable them, are in the FAQ.
PhotoStructure will automatically check for renewal licenses that have recently expired. This happens in the background, and only for users with active plus subscriptions. More details, including how to disable automatic renewal, is on the forum.
PhotoStructure for Desktops checks for updates periodically while it is
running. These anonymous checks can be disabled by setting
updateOnLaunch=false (read more about
How many users do you have? 🔗
We honestly don’t know, and that’s by design: as we said above, we don’t collect user or usage analytics.
We know how many plus subscribers users we have, but we don’t know how many people are using the free lite edition.
This makes product planning and new feature prioritization more difficult, but we rely on our active forum and discord users for their feedback: please make your voice heard so we build something that works for you!
💎 Permanence 🔗
A lot of software and hardware is regrettably short-lived.
We’ve made a bunch of decisions, both technically, and organizationally, to help make your PhotoStructure library robust and durable.
Portable libraries 🌟 🔗
Your PhotoStructure library is portable across both machines and operating systems. You can create your library on an external drive attached to a Mac, move the drive to your Windows computer, import more photos on that computer, then move it to your NAS, and everything just works.
Many photo libraries slow down or crash after importing thousands or tens of thousands of assets.
PhotoStructure is designed from the ground up to manage lifetimes of photos and videos.
PhotoStructure is tested and verified to run quickly and efficiently with libraries containing millions of photos and videos.
Automatic backups and internal health checks 🔗
PhotoStructure backs up your library database automatically and continuously monitors for problems. (The results of these health checks are viewable on the “about” page).
When PhotoStructure detects warnings or errors, repair tasks are run when applicable, like:
- database optimization and dump-and-load restoration
- file import retries when processes get “stuck” or timeout
- child process recycling when high RAM usage is detected
- cache clearing when the disk is nearly full
- pausing current imports when the system or library disks are nearly full, to avoid “out of disk space” errors.
Open standards and formats 🔗
PhotoStructure doesn’t hide all your photos and videos in a proprietary library or require expensive, proprietary hardware.
Your photos and videos can stay exactly where they are on your hard drives already (even if they are on a bunch of different hard drives, or even remote servers!). If you’ve got a mess, though, PhotoStructure can automatically organize your library into customizable folder structures for you.
Any metadata that you add or edit via PhotoStructure is stored in standard file formats (like EXIF).
Any updates to your photos and videos made by other applications are imported into your PhotoStructure library automatically. Read more about how PhotoStructure plays well with other apps.
Your library database is stored as an SQLite database, with a clear, readable schema.
If PhotoStructure, Inc. goes away, PhotoStructure won’t 🔗
The code that powers your library will be open-sourced in the event of business closure, so you can continue to run PhotoStructure on your hardware. I’ve written a lot of open-source software in the past, and substantial parts of PhotoStructure are already open source, including exiftool-vendored, mkver, and batch-cluster.