Skip to content


We use GitHub issues for managing bugs, ideas, todos and epics (collection of todos). There is no Kanban or Scrum board, simply pick a todo you would like to work on and tell us about it. Issues labeled help wanted / easy can be good (first) contributions.

User Stories

Start the description of new ideas and todos with a user story similar to this:

As a [type of person] I'd like to be able to [do something] so that I can [get some result].

That makes it easier for others to understand who wants what and why. It can take a lot of time to read between the lines otherwise. It takes even more time if the wrong thing gets done.

Issues should therefore contain a list of acceptance criteria that clearly define when a story is done so that it can be properly implemented and tested. Use MAY, SHOULD and MUST as keywords to indicate priorities. This Markdown example renders with clickable checkboxes:

Acceptance Criteria:
- [ ] "Log In" button MUST be visible on /login page
- [ ] "Log In" button MAY be disabled if password field is empty
- [ ] Page SHOULD use existing Vuetify components
- [ ] Login MUST work in latest Firefox, Safari and Chrome

It is fundamentally the confusion between effectiveness and efficiency that stands between doing the right things and doing things right. There is surely nothing quite so useless as doing with great efficiency what should not be done at all.
Peter Drucker

Mailing List

Please join our developers mailing list to receive regular project updates, get in contact with other contributors and discuss your ideas. Don't be afraid to ask stupid questions.

Developer Chat

Community Chat Gophers Chat

You are welcome to join our #photoprism channel on If you don't have an account yet, you can create one on

Please add important information from chat sessions to our Wiki or related GitHub issues.


Part of this project is to find better ways of organizing product development, in particular by embracing simplicity and consistently leveraging community feedback. Please share your experience with us, especially if you haven't actively contributed yet.