Contribute

Basic Principles

  1. Use MVVM as architectural pattern for frondend development where possible.

  2. Use dependency injection to make your code testable.

  3. Write unit tests for your code.

  4. Follow the coding conventions used in the existing code base.

  5. Document your code with XML comments.

  6. Use meaningful commit messages, AI generated commit messages are also fine most of the time. But they should be reviewed before submitting.

  7. Create pull requests for your changes and request reviews from your peers.

  8. Ensure that your code passes all tests and checks before merging.

  9. Use ReactiveUI and Reactive Extensions for asynchronous programming and data binding.

  10. Follow the SOLID principles of object-oriented design.

  11. Use async/await for asynchronous operations.

  12. RethinkDB is the database of choice.

  13. sqlite is used for local fast key-value storage via Akavache.

  14. Use Dahlke.Lib.Logging for logging.

  15. Dahlke.Interface is the interface library for all projects.