Skip to content

Latest commit

 

History

History
97 lines (51 loc) · 3.5 KB

CONTRIBUTING.md

File metadata and controls

97 lines (51 loc) · 3.5 KB

Contributing

Thanks for your interest in the Piccolo project. 👍

The aim of Piccolo is to build a fantastic ORM and query builder, with a world class admin GUI, which makes developers happy and productive. There are lots of ways to get involved. 🚀

The community is friendly and responsive. You don't have to be a Python or database ninja to contribute. 🥷


Pick an appropriate issue

If you take a look at the issues list, there are some with the good first issue tag. You can pick any issue you feel confident in tackling, or even create your own issue. However, the ones marked with good first issue are created with newcomers in mind.

Once you've identified an issue that you're interested in working on, leave a comment on the issue letting others know. This will prevent multiple people accidentally working on the same issue.

What if there are no appropriate issues?

There are always ways to improve a project:

  • Can code coverage be improved?
  • Is documentation lacking?
  • Are there any typos?
  • Can any code be optimised or cleaned up?

If you can identify any areas of improvement, create an issue.


Tips for Pull Requests (PRs)

Try to keep PRs simple

The maintainers do it alongside a day job, so very large PRs may take a long time to review. We try to leave feedback on PRs within a few days of them being opened to keep things flowing.

A PR doesn't have to be perfect before opening it

It's often better to open a pull request with a simple prototype, and get feedback.

Avoid overly complex code

Part of open source's appeal is anyone can contribute to it. To keep a codebase clean and maintainable, it's a constant battle to keep complexity in check. Bear this in mind when doing a PR. The code should be high quality and well documented.


What if my code doesn't get merged?

Most contributions get merged. However, a PR can serve many purposes - it can spark discussion and ideas. There is no wasted effort in open source, as it always contributes to collective learning. If a PR doesn't get merged, it's usually because we decide on a different approach for solving the problem, or the complexity overhead with adding it outweighs the benefits.


Contributing without writing code

Even without writing code there are lots of ways to get involved.

Documentation

Is something in the documentation unclear or missing? These types of contributions are invaluable.

Design input

Is there something about the design which you don't like? Getting constructive user feedback is incredibly useful.

Tutorials

Can you write a blog article or tutorial about Piccolo?

Spreading the word

Just starring the project or a tweet helps us a lot.


Git usage

If you're not confident with Git, then the GitHub Desktop app is highly recommended.


Project setup

See the main Piccolo docs.


Sister projects

The main Piccolo repo is just one piece of the ecosystem. There are other essential components which are open to contributions:


Becoming a project member

There is no formal process for becoming a project member. Typically people become members after making significant contributions to the project, or who require specific permissions which makes contributing to Piccolo easier.