Blockly welcomes your contributions. Want to add a new feature? Want to fix a bug that's annoying you? Want to add hooks needed for your own application? Want to improve our unit test coverage?

A pull request on GitHub is the preferred way to handle contributions.

Before you get started, find or file a feature request and comment on it to confirm that we will accept your change as a contribution to core. Sometimes we can suggest how to implement it; other times we may ask you to implement it as a plugin instead.

Some rules:

  • All pull requests must be made against the develop branch.
  • You must fill out the pull request template with relevant details.
  • All code must conform to Google's JavaScript Style Guide. We are pedantic about consistency.
  • Any new code files must be prefixed with the Apache License, Version 2.0. We won't mix licenses.
  • User-visible strings must be in the /msg directory so they may be translated. Less than 6% of the world speaks English natively.
  • Text on blocks should generally be all lowercase (just like the keywords in most programming languages).
  • Maintain backwards compatibility. There are a lot of Blockly apps out there, don't break everyone else.
  • Spell "colour" correctly.

Tell Us!

Help us focus our development efforts by telling us what you are doing with Blockly. The questionnaire only takes a few minutes and will help us better support the Blockly community.

Or join our newsgroup for developers and say hello. Show us your prototypes early; collectively we have a lot of experience and can offer hints which will save you time. Plus, we always love to hear about new projects and use cases for Blockly!