Photos App powered by Go and Google TensorFlow 🌈 🎄
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
Go to file
Michael Mayer e3857a45f9
Develop: Add Prometheus test server configuration #213 #3730 #3943
19 hours ago
.github CI: Update codeql-analysis.yml 7 months ago
assets HEIC: Add iPhone 15 Pro file samples and update related tests #3852 1 month ago
cmd/photoprism CLI: Add photoprism connect command 9 months ago
docker Develop: Update Ubuntu base image Dockerfiles #3885 3 weeks ago
frontend Frontend: Update deps in package-lock.json 19 hours ago
internal Backend: Expose prometheus-style metrics endpoint 4 days ago
pkg Metadata: Update list of special terms in specialwords.go 23 hours ago
scripts Setup: Prepare build scripts to provide .deb and .rpm packages #3861 1 month ago
setup Setup: Update installation package readme 2 days ago
.clabot CI: Add initial .clabot config file 2 years ago
.dockerignore Icons: Extend render scripts with additional types and formats 1 year ago
.drone.yml Docker: Change "docker-compose" command to "docker compose" #1192 1 year ago
.fossa.yml Links: Change to 10 months ago
.gitignore CI: Update .gitignore 10 months ago
.ldap.cfg Auth: Refactor user roles and auth providers in entity model #98 9 months ago
.my.cnf Docker: Reduce image layers and improve build scripts 2 years ago Update 5 months ago Mention that translations should be added through Weblate (#3606) 4 months ago
Dockerfile Develop: Upgrade base image from 231127-mantic to 231206-mantic 4 days ago
FUNDING.yml Update FUNDING.yml 6 months ago
LICENSE Links: Change to 10 months ago
Makefile Setup: Update tar.gz target in Makefile #3861 1 month ago
NOTICE Update third-party licenses in NOTICE file 7 months ago Docs: Update badges in 2 weeks ago Update 1 year ago Update 3 weeks ago
codecov.yml Codecov: Disable commit status on GitHub 4 years ago
docker-compose.armv7.yml Mariadb docker-compose simplification (#3928) 6 days ago Mariadb docker-compose simplification (#3928) 6 days ago
docker-compose.latest.yml Docker: Update docker-compose.yml config examples 8 months ago
docker-compose.local.yml Docker: Update docker-compose.yml config examples 8 months ago
docker-compose.mariadb.yml Setup: Simplify mariadb service config in docker-compose.yml files #3928 6 days ago
docker-compose.mysql.yml Setup: Simplify mariadb service config in docker-compose.yml files #3928 6 days ago
docker-compose.postgres.yml Develop: Upgrade base images to 231015 2 months ago
docker-compose.yml Develop: Add Prometheus test server configuration #213 #3730 #3943 19 hours ago
go.mod Backend: Expose prometheus-style metrics endpoint 4 days ago
go.sum Backend: Expose prometheus-style metrics endpoint 4 days ago
prometheus.yml Develop: Add Prometheus test server configuration #213 #3730 #3943 19 hours ago

PhotoPrism: Browse Your Life in Pictures

License: AGPL Documentation Community Chat GitHub Discussions Bluesky Social Mastodon

PhotoPrism® is an AI-Powered Photos App for the Decentralized Web. It makes use of the latest technologies to tag and find pictures automatically without getting in your way. You can run it at home, on a private server, or in the cloud.

To get a first impression, you are welcome to play with our public demo. Please be careful not to upload any private, unlawful or offensive pictures.

Feature Overview

Our mission is to provide the most user- and privacy-friendly solution to keep your pictures organized and accessible. That's why PhotoPrism was built from the ground up to run wherever you need it, without compromising freedom, privacy, or functionality:

Being completely self-funded and independent, we can promise you that we will never sell your data and that we will always be transparent about our software and services. Your data will never be shared with Google, Amazon, Microsoft or Apple unless you intentionally upload files to one of their services. 🔒

Getting Started

Step-by-step installation instructions for our self-hosted community edition can be found on - all you need is a Web browser and Docker to run the server. It is available for Mac, Linux, and Windows.

The stable releases and development preview are available as a multi-arch image for 64-bit AMD, Intel, and ARM processors. That means, Raspberry Pi and Apple Silicon users enjoy the exact same functionality and can follow the same installation steps.

See our Getting Started FAQ for alternative installation methods, for example using the tar.gz packages we provide.

Support Our Mission 💎

PhotoPrism is 100% self-funded and independent. Your continued support helps us provide more features to the public, release regular updates, and remain independent!

Our members enjoy additional features, including access to interactive world maps, and can join our private chat room to connect with our team. We currently have the following membership options:

  • You can sign up directly on our website and pay with credit card or SEPA through Stripe, so you don't need to link an external account and can easily upgrade or downgrade at any time
  • Alternatively, Patreon also supports PayPal, additional currencies, and lets you choose between monthly and annual billing for all tiers

If you currently support us through GitHub Sponsors, you can also register on our website and use the Activate GitHub Sponsors Membership button to link your account. For details on this and how to link your Patreon account, see our Activation Guide.

You are welcome to contact us for change requests, membership questions, and business partnerships.

View Membership FAQ Sign Up

Why Your Support Matters

  • Your continued support helps us provide regular updates and remain independent, so we can fulfill our mission and protect your privacy
  • Sustained funding is key to quickly releasing new features requested by you and other community members
  • Being self-funded and independent, we can personally promise you that we will never sell your data and that we will always be transparent about our software and services

Please also leave a star on GitHub if you like this project. It provides additional motivation to keep going.

A big thank you to all current and past sponsors, whose generous support has been and continues to be essential to the success of the project!

View Sponsors View Credits

Getting Support

Visit to learn how to sync, organize, and share your pictures. If you need help installing our software at home, you are welcome to post your question in GitHub Discussions or ask in our Community Chat. Common problems can be quickly diagnosed and solved using our Troubleshooting Checklists. Eligible members are also welcome to email us for technical support and advice.

Upcoming Features and Enhancements

Our Project Roadmap shows what tasks are in progress and what features will be implemented next. You are invited to give ideas you like a thumbs-up, so we know what's most popular.

Be aware that we have a zero-bug policy and do our best to help users when they need support or have other questions. This comes at a price though, as we can't give exact release dates for new features. Our team receives many more requests than can be implemented, so we want to emphasize that we are in no way obligated to implement the features, enhancements, or other changes you request. We do, however, appreciate your feedback and carefully consider all requests.

Because sustained funding is key to quickly releasing new features, we encourage you to support our mission by signing up as a sponsor or purchasing a commercial license. Ultimately, that's what's best for the product and the community.

GitHub Issues ⚠️

We kindly ask you not to report bugs via GitHub Issues unless you are certain to have found a fully reproducible and previously unreported issue that must be fixed directly in the app. Thank you for your careful consideration!

  • When reporting a problem, always include the software versions you are using and other information about your environment such as browser, browser plugins, operating system, storage type, memory size, and processor
  • Note that all issue subscribers receive an email notification from GitHub whenever a new comment is added, so these should only be used for sharing important information and not for discussions, questions or expressing personal opinions
  • Contact us or a community member if you need help, it could be a local configuration problem, or a misunderstanding in how the software works
  • This gives our team the opportunity to improve the docs and provide best-in-class support to you, instead of handling unclear/duplicate bug reports or triggering a flood of notifications by responding to comments

Connect with the Community

Follow us on Twitter and join the Community Chat to get regular updates, connect with other users, and discuss your ideas. Our Code of Conduct explains the "dos and donts" when interacting with other community members.

Feel free to contact us at with anything that is on your mind. We appreciate your feedback! Due to the high volume of emails we receive, our team may be unable to get back to you immediately. We do our best to respond within five business days or less.

Every Contribution Makes a Difference

We welcome contributions of any kind, including blog posts, tutorials, translations, testing, writing documentation, and pull requests. Our Developer Guide contains all the information necessary for you to get started.

PhotoPrism® is a registered trademark. By using the software and services we provide, you agree to our Terms of Service, Privacy Policy, and Code of Conduct. Docs are available under the CC BY-NC-SA 4.0 License; additional terms may apply.