Editions Mappers Use Cases Documentation Community Download Get Started →
Community

TwinMapper is your project

TwinMapper is open source under Apache 2.0 and built in the open. Join the community, contribute code, report issues, and help shape the platform.

Contributing

Before opening a pull request, confirm your change is within TwinMapper's defined scope (review the Feature Matrix), doesn't introduce a Hard Non-Goal behavior, and respects the two Open Implementation Decisions. Breaking changes to generated code contracts require a discussion issue first.

Module-specific rules: twinmapper-core must remain Spring-container-free. twinmapper-definition-model must be format-neutral. Format modules provide exactly two things: a build-time definition reader and a runtime NodeCursor-producing parser. Security-sensitive changes to BPMN and YAML parsing require explicit security review.

Code standards: Java 21, records for immutable value types, sealed interfaces for algebraic types. No Lombok on generated types. Generated binders and mappers use plain Java method calls with no reflection. All builders in separate files in dedicated subpackages. All exceptions in a single top-level exception package per module. Mandatory inline comments at every business rule enforcement point.

Code of Conduct

TwinMapper follows the Contributor Covenant Code of Conduct. We are committed to providing a welcoming, inclusive environment for everyone. Harassment, discrimination, and disruptive behavior are not tolerated.

Security

TwinMapper takes security seriously. SnakeYAML usage mandates SafeConstructor with LoaderOptions — the default constructor allows arbitrary Java object deserialization and is prohibited. BPMN parsing requires IS_SUPPORTING_EXTERNAL_ENTITIES=false and SUPPORT_DTD=false on XMLInputFactory. All BPMN classpath resolution uses Spring ResourceLoader for correctness across deployment models.

To report a security vulnerability, please email security@pommala.com directly. Do not open a public GitHub issue for security reports.

License

TwinMapper is open source under the Apache License 2.0. The full license text is available in the LICENSE file in the GitHub repository.

Contact

For enterprise inquiries, partnership discussions, or professional services: contact@pommala.com. For technical questions and community support: use GitHub Discussions on the TwinMapper repository.