|
1 | | -Contributing |
2 | | ------------------- |
3 | | -This project is completely managed on GitHub using its [issue tracker](https://github.com/objectbox/objectbox-dart/issues). |
| 1 | +# Contributing |
4 | 2 |
|
5 | | -Anyone can contribute, be it by coding, improving docs or just proposing a new feature. |
| 3 | +For public issues see the [GitHub issue tracker](https://github.com/objectbox/objectbox-dart/issues). |
| 4 | + |
| 5 | +We welcome smaller contributions, be it by coding, improving docs or just proposing a new feature. |
6 | 6 | Look for tasks having a [**"help wanted"**](https://github.com/objectbox/objectbox-dart/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22) tag. |
7 | | -When picking up an existing issue, please let us know in the issue comment. |
| 7 | +When picking up an existing issue, please talk to us beforehand by commenting in the issue. |
8 | 8 | Don't hesitate to reach out for guidance or to discuss a solution proposal! |
9 | 9 |
|
10 | | -### Code contributions |
| 10 | +## Code contributions |
| 11 | + |
11 | 12 | When creating a Pull Request for code changes, please check that you cover the following: |
12 | | -* Include tests for the changes you introduce. See the [test folder](objectbox/test) for examples. |
13 | | -* Formatted the code using `dartfmt -l 120`. You can configure your IDE to do this automatically, |
14 | | - e.g. VS Code needs the project-specific settings `"editor.defaultFormatter": "Dart-Code.dart-code"` and `"dart.lineLength": 120`. |
15 | | -* Update the `## latest` section in the `CHANGELOG.md` - add a single-line comment what changes. |
16 | | - This only applies if the change is "external", i.e. it affects objectbox-dart library users. |
17 | 13 |
|
18 | | -### Basic technical approach |
| 14 | +- Include tests for the changes you introduce. See the [test package](objectbox_test) for examples. |
| 15 | +- Formatted your changes using `dart format`. |
| 16 | +- If the change affects users of this library, update the `## latest` section in the `CHANGELOG.md` |
| 17 | + by adding a single-line comment what changes. |
| 18 | + |
| 19 | +## Basic technical approach |
| 20 | + |
19 | 21 | ObjectBox offers a [C API](https://github.com/objectbox/objectbox-c) which can be called by [Dart FFI](https://dart.dev/server/c-interop). |
20 | 22 | The C API is also used by the ObjectBox language bindings for [Go](https://github.com/objectbox/objectbox-go), [Swift](https://github.com/objectbox/objectbox-swift), and [Python](https://github.com/objectbox/objectbox-python). |
21 | 23 | These languages may serve as an inspiration for this Dart implementation. |
22 | | -Internally, ObjectBox uses [FlatBuffers](https://google.github.io/flatbuffers/) to store objects. |
| 24 | +Internally, ObjectBox uses [FlatBuffers](https://google.github.io/flatbuffers/) to store objects. |
0 commit comments