Skip to content

Latest commit

 

History

History
45 lines (25 loc) · 3 KB

CONTRIBUTING.md

File metadata and controls

45 lines (25 loc) · 3 KB

Contributing

Thank you for helping contribute to OpenFL!

Every bug report and pull request helps make OpenFL better 😁

Reporting Issues

If you discover any problems while using OpenFL, please let us know!

It is really helpful if you can share some of the following along with your report:

  • Example code we can use to reproduce the problem
  • A screen capture (if the issue is visual)
  • If you are using Haxelib, the current OpenFL, Lime and Haxe version on your system
  • If you are using NPM, the OpenFL version and language (ES6 JS, TS, Haxe, etc) you are using

We are also happy to discuss issues on the OpenFL community forums and on Discord.

Writing Code

The best place to start is joining the #openfl-dev channel in our Discord server. That's the best way to discuss not only the issue you are trying to solve, but also form a game plan for how to solve it.

As you make quality pull requests, over time we can add you as a contributor to the project. This will give you direct commit rights to the OpenFL develop branch on GitHub. Small and large contributions are welcome!

The Purpose of OpenFL

Sometimes, there are changes to OpenFL that may raise some questions of the purpose of the library. "I have a neat idea for a new feature," or "I found a difference between Flash and OpenFL" are both important to consider.

We welcome ideas for new features, but often-times a new feature might work better in another library. We would love to discuss your ideas on Discord or the forums! We are careful about adding new features, but welcome the input.

Unimportant differences between OpenFL and Flash Player are considered bugs. We appreciate your help in discovering behaviors! We seek to create a similar environment between Flash and OpenFL, but it is important to know that has never been meant to be a Flash emulator. An emulator tries the duplicate the behavior of another system exactly -- even if it is slow or is considered a bad behavior.

We consider our HTML5 and native platforms to be "first-class citizens" in OpenFL development. As we continue to develop the platform, we want to continue to pursue an ideal working environment to deploy creative content to these platforms.

There are other supported platforms as well (such as AIR, Flash and Neko) which we regularly test, but may lack certain features or have reduced performance. For example, we have added OpenGL-specific features that are not available on Flash. This is okay. Other platforms are not officially supported, but are used by OpenFL developers and we can partner to help integrate important code changes.

As we continue to achieve synergy among our target platforms, we believe that the best contributions will continue to lead towards eliminating issues, improving performance, increasing our testing or the quality of the API documentation, and will move farther from broad feature changes.