1.4 KiB
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(seeanalysis_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 featurefix:— bug fixperf:— performance improvementbuild:— build/packaging/CI changesdocs:— documentation only
Pull request process
- Fork the repository
- Create a branch:
git checkout -b fix/describe-the-fix - Make your changes, run
flutter test - Commit with a conventional message
- Open a PR against
mainand describe what you changed and why
Reporting bugs
Open an issue using the bug report template. Include:
- imajViewer version (from
pubspec.yamlor the release name) - OS and desktop environment
- Steps to reproduce
- Expected vs. actual behavior