Thank you for your interest in contributing to this project!
Developed by: Greg Lamberson, Lamco Development (https://www.lamco.ai/) Contact: greg@lamco.io
This is a reference implementation of JPEG XL in Rust, designed to:
- Serve as an educational resource for understanding JPEG XL
- Provide a Rust-based alternative to the C++ reference implementation
- Complement the existing JPEG XL ecosystem
This implementation is based on the official libjxl C++ reference implementation:
- Upstream Repository: https://github.com/libjxl/libjxl
- Specification: ISO/IEC 18181:2022
- Official Website: https://jpeg.org/jpegxl/
- libjxl: Official C++ reference (encoder + decoder)
- jxl-oxide: Production Rust decoder
- This project: Educational Rust reference (encoder + decoder)
-
Code Quality
- Improve Rust idioms and patterns
- Add documentation and examples
- Enhance type safety
-
Performance
- SIMD optimizations
- Parallel processing improvements
- Memory efficiency
-
Features (as documented in IMPLEMENTATION.md)
- Full DC/AC group processing
- Adaptive quantization
- Progressive decoding
- Animation support
- JPEG reconstruction mode
-
Testing
- Unit tests for individual modules
- Integration tests
- Conformance testing against libjxl
- Fork this repository
- Create a feature branch (
git checkout -b feature/amazing-feature) - Commit your changes with clear messages
- Test your changes (
cargo test --all) - Push to your branch (
git push origin feature/amazing-feature) - Open a Pull Request
- Follow Rust 2021 edition conventions
- Use
rustfmtfor formatting - Use
clippyfor linting - Add tests for new functionality
- Update documentation as needed
Follow conventional commits format:
feat: Add support for progressive decoding
fix: Correct ANS entropy decoding edge case
docs: Update encoder usage examples
test: Add unit tests for DCT transform
- Issues: Open an issue for bugs or feature requests
- Discussions: For general questions about the implementation
- Email: greg@lamco.io for direct contact
- Be respectful and inclusive
- Focus on constructive feedback
- Help make this a welcoming learning resource
By contributing, you agree that your contributions will be licensed under the BSD 3-Clause License, matching the libjxl project.
Copyright (c) 2025 Greg Lamberson, Lamco Development