Variety of Contribution

We value contributions of all types — not just code.

Make sure that you read Project Philosophy and Policy to understand how we try to develop OmegaT.


Documentation

Anyone can contribute to OmegaT’s documentation, whether by contributing to the user manual, creating tutorial videos, or writing documentation that can be shared outside of the OmegaT project. If the material is useful, the OmegaT team will gladly reference it on the web site and share it with the broader user community.

See Contributing to OmegaT documentation for more information.


Localization

Since we are all translators, localization (L10N) of the application and translation of the documentation is the most active area of contributions, and easiest to access for us. It also helps understanding OmegaT and is sometimes the first step to further contributions.

See Localize applications and manuals for more information.


User support

At one point, you will know more about OmegaT than any beginner who just started. Trying to give help based on your experience is the best way to put that experience to use. It also helps more experienced contributors to see what is lacking in OmegaT’s documentation and contributes to improving OmegaT as a whole.

Subscribe to the user list to introduce yourself.


Scripting

OmegaT supports automation through scripts. Scripts are small programs that can perform tasks automatically when certain events happen in OmegaT. You can write scripts in Groovy or JavaScript.

Scripting is a powerful way to customize how OmegaT works for you. For example, you could create a script that:

  • Automatically formats text in a specific way

  • Performs custom quality checks on your translations

  • Connects to external tools or services

Even if you’re new to programming, scripting can be a good way to start contributing, as scripts are typically smaller and more focused than other code contributions.

See How to write an OmegaT script for more information.


Plugins

OmegaT supports plugins, which are add-ons that extend what the program can do without changing its core. This makes it easy to customize OmegaT to fit your specific needs.

If you have an idea for a new feature, creating a plugin is a great way to bring it to life. It’s also a good first step for new contributors since you can work on your own piece without needing to understand the entire codebase.

Plugins can add or modify many aspects of OmegaT, including

  • User interface themes

  • File filters (to support additional file formats)

  • Dictionary connectors

  • Machine translation services

  • And much more

Many of OmegaT’s built-in features are actually implemented as plugins, so you can learn by looking at these examples.

See


External utilities

OmegaT tries to foster an ecosystem of external utilities that can be used with or around OmegaT. Such utilities are most of the time personal scripts or small applications writing for specific settings or platforms, but they can nonetheless be useful to other users.

Such utilities can include OmegaT launchers, TMX generators based on OmegaT’s exported text contents, etc., and can be written in a variety of languages.

Subscribe to the user list to introduce or discuss your utility.


Code

Java code contributions to OmegaT are probably the most complex way to contribute to OmegaT. Besides for a working knowledge of Java, it requires a minimal understanding of how OmegaT works as an application and how its internals work. Such contributions also require some knowledge of conventions that we use for code contributions.

If you have some experience with OmegaT and know Java, you are strongly invited to dive in and help us with feature and core development.

See


Other areas of contribution

If you have other contribution ideas for OmegaT, do not hesitate to get in touch with us.

Send a message to the developer list at omegat-development@lists.sourceforge.net or to the project coordinator at info@omegat.org.


Adoption of Contributions

Everyone is welcome to propose changes to OmegaT. The project team reviews these proposals and includes those that benefit most users in the official release. This helps maintain the quality and reliability of OmegaT.

Even if your suggestion isn’t included in the official release, remember that the GPL license terms allow you to modify your own copy of OmegaT and to share your modified version with others.


Communication Channels

OmegaT is developed by volunteers who contribute based on their interests and skills. Everyone works on what they find most interesting or important.

Here’s how you can connect with the community:

  • User Support Mailing List
    A friendly place where both new and experienced users can ask questions and suggest improvements.
    Search/Subscribe to the list

We are all translators, you can use any language that you want to get help and share ideas.

If you’re interested in the programming side of things, this is the place to join.

  • Issue Tracker
    Where you can report bugs, suggest new features (called Feature Requests) and register documentation related items (either errors or addition requests). → Search/Register issues

Registering a feature request does not mean that somebody will implement it right away. But registering it is the best way to have it implemented one day.