This project is completely managed on GitHub using its issue tracker.
Anyone can contribute, be it by coding, improving docs or just proposing a new feature. Look for tasks having a "help wanted" tag. When picking up an existing issue, please let us know in the issue comment. Don't hesitate to reach out for guidance or to discuss a solution proposal!
When creating a Pull Request for code changes, please check that you cover the following:
- Include tests for the changes you introduce. See the test folder for examples.
- Formatted the code using
dartfmt -l 120
. You can configure your IDE to do this automatically, e.g. VS Code needs the project-specific settings"editor.defaultFormatter": "Dart-Code.dart-code"
and"dart.lineLength": 120
. - Update the
## latest
section in theCHANGELOG.md
- add a single-line comment what changes. This only applies if the change is "external", i.e. it affects objectbox-dart library users.
ObjectBox offers a C API which can be called by Dart FFI. The C API is also used by the ObjectBox language bindings for Go, Swift, and Python. These languages may serve as an inspiration for this Dart implementation. Internally, ObjectBox uses FlatBuffers to store objects.