Files
imajviewer/CONTRIBUTING.md

1.4 KiB

Contributing to imajViewer

Thanks for taking the time to contribute! 🎉

Development setup

  • Flutter SDK (stable channel)
  • Linux: GTK dev libraries (libgtk-3-dev, ninja-build, clang, cmake)
  • Windows: Visual Studio 2022 Build Tools with "Desktop development with C++"
flutter pub get
flutter build linux    # or: flutter build windows --release

Code style

  • Follow flutter_lints (see analysis_options.yaml)
  • Keep changes minimal and focused — no drive-by refactors
  • Use existing patterns in lib/ (services, widgets, screens)

Tests

Run the test suite before opening a PR:

flutter test

Commit conventions

We use conventional commit prefixes:

  • feat: — new feature
  • fix: — bug fix
  • perf: — performance improvement
  • build: — build/packaging/CI changes
  • docs: — documentation only

Pull request process

  1. Fork the repository
  2. Create a branch: git checkout -b fix/describe-the-fix
  3. Make your changes, run flutter test
  4. Commit with a conventional message
  5. Open a PR against main and describe what you changed and why

Reporting bugs

Open an issue using the bug report template. Include:

  • imajViewer version (from pubspec.yaml or the release name)
  • OS and desktop environment
  • Steps to reproduce
  • Expected vs. actual behavior