Contributing to OmegaT Development

OmegaT is developed by a global team of volunteers. If you’re interested in improving the code, fixing bugs, or adding new features — you’re more than welcome to join us! Don’t worry if you’re new to this! We’re happy to help you get started.

Whether you’re just getting started or already familiar with OmegaT, Git and Java, this guide will help you make your first contribution. Also feel free to ask questions on the developers mailing list.


Step-by-Step: How to Contribute

0. Read the relevant documentation

This contribution guide tries to give you a clear picture of who we are, how we work and why we do all that. Make sure that you read the general sections and the technical sections that pertain most to the contribution that you want to make, including coding conventions, tests, documentation additions, etc.

If you are not familiar with Git based workflows, make sure that you read Git Workflow for New Contributors before going further.


1. Start a Conversation

Before commiting yourself to writing code, we recommend that you start a discussion on the OmegaT Developers Mailing List:
📬 http://lists.sourceforge.net/lists/listinfo/omegat-development

This gives everyone a chance to understand your idea, give feedback, or suggest alternatives.


2. Open a Ticket

Once your idea is clear, please open a ticket to track your proposed change:

⚠️ We do not use GitHub Issues. Please use SourceForge only!


3. Write Your Code

The main development takes place in the master branch of our Git repository:
👉 https://github.com/omegat-org/omegat

  • Make sure that you use an appropriate branch to base your work on.

  • Follow the conventions that we describe in Coding Styles.

  • Include the relevant tests.

  • Write the relevant new sections or modifications to the manual.


4. Submit Your Code

You can contribute your changes in one of two ways:

  • Option A: Patch file
    Use git diff to create a patch and attach it to the ticket on SourceForge.

  • Option B: Pull request (PR)
    Fork the OmegaT project on GitHub and open a PR from your fork.


5. Code Review and Integration

All submitted patches and pull requests will be reviewed by a core developer:

  • If your change is accepted, it will be merged into the master branch by the reviewer or an integration manager.

  • If improvements are needed, you’ll receive feedback, suggestions, or questions.