We welcome public contribution to the example code repository.
To maintain a high quality of example code, please review the guidelines in this document before submitting your contribution.
- The goal of this repository is to help users of Zaber devices, and more generally to help people working on motion control and automation projects get up and running quickly.
- Examples are in the
examples/
directory in a flat structure and can be browsed directly on GitHub. For an overview of the repository, please see document on Directory Structure
If you notice a bug or typo in any of our example code or documentation and you want us to fix it, please feel free to open an issue.
Alternately you are welcome to contribute directly to the bug fix. For example, if you found a bug
in /examples/<example_directory>/
:
- Fork the repository
- Make the suggested fixes
- Run through the appropriate Language Checklist
- Do a Pull Request
If you want to contribute a new example:
- Take a look at all the examples under
examples/
directory and make sure the new example is not a duplicate or closely related to another example already in the repository. - Make sure that the example you want to add is illustrating a single concept or task, or is a building block that that is likely to be useful to others. Consider how to structure and write the example code to avoid excessive boilerplate that does not contribute to explaining the central concept.
- Fork
- Create a subdirectory
<example_directory>
underexamples/
- i.e.
/examples/microplate_scanning_basic
- See Example Subdirectory Naming Convention
- i.e.
- Create a
README.md
file in the example directory following this README guidelines - If the example is intended to be implementation in multiple languages,
make a subdirectory with the language you want to implement:
- i.e.
/examples/hid_joystick/csharp
and/examples/hid_joystick/python
- See list of valid language subdirectory names.
- i.e.
- Implement the example in the language(s) of your choice. You can start with our example template.
- Add a file,
article.yml
with metadata specifying how to publish to Zaber Code Examples - Run through the appropriate Language Checklist
- Do a Pull Request
Here are the checklists for the various languages:
By contributing to this repository you agree that all of your work will be governed by the terms of the LICENSE file.
Install the EditorConfig plugin for your editor if needed in order to capitalize on the top-level .editorconfig
file in this repository.