photoprism/CONTRIBUTING.md
2022-03-26 14:22:03 +01:00

5.9 KiB
Raw Blame History

Every Contribution Makes a Difference

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

Join the Community

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

An important part of our journey is to explore new ways in product development and build better software through consistent use of community feedback. Feel free to share your thoughts with us at any time.

Not a Developer? No Problem

You can also contribute by...

Creating Bug Reports

Before reporting a bug, please use our Troubleshooting Checklists to determine the cause of your problem. If you have a general question, need help, or an issue has not (yet) been clearly identified:

GitHub Issues

  • All issue subscribers receive an email notification from GitHub for each new comment, so these should only be used for sharing important information and not for personal discussions/questions
  • 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 our source code
  • 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
  • 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

Submitting Pull Requests

Because we want to create the best possible product for our users, we have a set of criteria to ensure that all submissions are acceptable.

Follow our step-by-step guide to learn how to submit new features, bug fixes, and documentation improvements. Issues labeled help wanted / easy can be good (first) contributions.

Reviewing, testing and finally merging pull requests requires significant resources on our side. If it's not just a small fix, it can take several months.

Contributor License Agreement (CLA)

After submitting your first pull request, you will automatically be asked to accept our CLA:

  • this gives us the ability to (re-)license all code and documentation at any time, almost as if we had created it ourselves (you retain the rights to your own work, which may be different for other CLAs)
  • otherwise, we cannot accept pull requests, as this would mean that we are not able to change the license of our software and documentation at a later time, even though most of it was developed and written by us
  • this may be necessary, for example, if the license is incompatible with a larger combined work, we want to remove some restrictions on the AGPL/Creative Commons license, or it turns out that someone is abusing the existing license in a way we don't yet know about
  • the lack of a formal contract would also lead to legal uncertainty for us and all users, as some contributors could later claim that they did not intend to license their code in any way and that it was stolen

PhotoPrism® is a registered trademark. Docs are available under the CC BY-NC-SA 4.0 License; additional terms may apply. By using our software, you agree to our terms of service.