Skip to content

Latest commit

 

History

History
178 lines (129 loc) · 9.38 KB

CONTRIBUTING.md

File metadata and controls

178 lines (129 loc) · 9.38 KB

Welcome

Thank you for your interest in Openverse! We're so excited to bring new contributors into the fold in Openverse, WordPress and FOSS in general. This document is a set of guidelines to help you contribute to this project.

Code of Conduct

You should read and agree to abide by the code of conduct before contributing to WordPress projects. This applies to all Openverse repositories because Openverse is a WordPress Foundation project.

Keep in touch

Don't hesitate to ask for help; if you're stuck, we're here for you! You can ping us via any of our communication channels.

Code and code-related contributions

Get started

Detailed help for contributing code can be found in the developer documentation, which also includes the following subfolders.

The following resources are preferred reading for starting your Openverse contribution journey in the code and code-related space.

Friendly notes

It's totally acceptable to work on more than one "good first issue".

On GitHub, you can ping us on any issue you would like to work on or triaging and on PRs that you've opened or are giving feedback on. You can ping a specific person using their GitHub handle, or even the entire Openverse team using @WordPress/openverse-maintainers.

Text and documentation

Our documentation and copy text could always use improvement. If you spot any scope for improvement, from the smallest punctuation error to the largest factual inaccuracy, you can file an issue or fix an already open one.

Bug reproduction & triage

Openverse has a large list of open bugs. In many cases these bugs can be out of date, or their reproduction criteria may no longer be accurate. It is useful information for maintainers to know whether the issue mentioned can still be reproduced on recent versions of the code or if the issue can no longer be replicated.

Pull request review

New contributors are welcome and invited to provide feedback on pull requests. You can start by just asking questions! It's great to get to know the project and helps PR authors by uncovering unspoken or undocumented assumptions that exist about the project. It is frequently folks who know the least about and are newest to a project that ask the most helpful questions in this regard.

Programming

Any issues labeled as "good first issue" or "help wanted" in our repositories are all up for grabs. Just add a comment tagging the maintainers using @WordPress/openverse-maintainers on the issue with questions or requesting the issue be assigned to you when you're ready to work on it.

Non-code contributions

If programming is not your cup of tea, there are ways to contribute to Openverse that do not involve working with code at all. Some of them are listed below.

Design

If you'd like to contribute to the design, feel free to propose a solution to an existing problem labeled with Needs Design, or share an idea if you think it meets Openverse's goals.

The WordPress Design team uses Figma to collaborate and share work for all WordPress projects. If you are not familiar with designing for WordPress, please carefully read the design handbook. Once you have a WordPress Slack account, join the #design channel and ask the team to set you up with a free Figma account.

This will give you access to all projects and files used in WordPress.

Before designing a proposal, browse the Design Library file to understand how Openverse has been built, and take a look at the created work to get a glance at how design ideas are made. As the design onboarding section in the design library file is constantly being added to and improved, some documentation may be missing. If you have doubts, ask on #design channel for clarification. If you discover new information that is yet to be documented, contributing this information back to the documentation is very much appreciated.

Once you are done and ready to share your idea, create an issue with the design label and fill in the template. Please be as specific and concise as possible and feel free to add mockups, prototypes, videos, sketches, and anything that makes your idea easier to understand.

After creating the issue, it will be labeled with aspect: design. Please reference existing design issues as a guide for how to describe your solution and to understand how the discussion evolves before implementation begins.

Translations

You can also contribute to Openverse by translating it.

An overview of Openverse translations is here: https://translate.wordpress.org/projects/meta/openverse/

A getting started guide for translating on GlotPress (the software behind translate.wordpress.org) is here: https://make.wordpress.org/polyglots/handbook/translating/glotpress-translate-wordpress-org/#getting-started

Providers

Openverse is powered by upstream providers of openly licensed media. You can help expand Openverse by identifying sources of Creative Commons licensed media - we're always looking to broaden our dataset.

Our currently list of providers which have been identified but are not yet being ingested can be found here.

You can use the New Source Suggestion for Openverse issue template to submit whatever sources you find.

Feedback

Feedback like reporting bugs and missing features is big help for Openverse. We want Openverse to be a bug-free app with great user experience and providing feedback is a way to put any shortcomings on our radar and get them resolved.

You can report bugs, request features and see all other forms of feedback we would like to receive by submitting a new issue on GitHub. All are welcome to write issues and the Openverse maintainers have deep gratitude for those who do. Note that you will need a GitHub account to create new issues.

You can also provide feedback via any of our other communication channels.

Referrals

If you know folks who have expertise in any of the above areas who you think might be interested in contributing to open source, send them our way! We're happy to help onboard folks to the project itself, as well as the tools and technologies we use.