Zanata is a web-based system for translators to translate documentation and software online using a web browser.
Java JavaScript HTML CSS Kotlin Shell Other
Switch branches/tags
zanata-parent-29 zanata-parent-28 zanata-parent-27 zanata-parent-26 zanata-parent-25 zanata-parent-24 zanata-parent-23 zanata-parent-22 zanata-parent-21 zanata-parent-20 zanata-parent-19 zanata-parent-18 zanata-parent-17 zanata-parent-16 zanata-parent-15 zanata-parent-14 zanata-parent-13 zanata-parent-12 zanata-parent-11 zanata-parent-10 zanata-parent-9 zanata-parent-8 zanata-parent-7 zanata-parent-6 zanata-parent-5 zanata-parent-4 zanata-parent-3 zanata-parent-2 zanata-1.6.0-alpha-1 zanata-1.5.0 zanata-1.5.0-alpha-2 zanata-1.5.0-alpha-1 zanata-1.4.5.2 zanata-1.4.5.1 zanata-1.4.5 zanata-1.4.5-alpha-1 zanata-1.4.4 zanata-1.4.3 zanata-1.4.3-beta-1 zanata-1.4.3-alpha-2 zanata-1.4.3-alpha-1 zanata-1.4.2 zanata-1.4.1 zanata-1.4 zanata-1.4-alpha-1 zanata-1.3.1 zanata-1.3 zanata-1.3-alpha-3 zanata-1.3-alpha-2 zanata-1.3-alpha-1 server-3.9.6 server-3.9.5 server-3.9.4 server-3.9.3 server-3.9.2 server-3.9.1 server-3.9.0 server-3.8.4 server-3.8.3 server-3.8.2 server-3.8.1 server-3.8.0 server-3.8.0-rc-5 server-3.8.0-rc-4 server-3.8.0-rc-3 server-3.8.0-rc-2 server-3.8.0-rc-1 server-3.7.3 server-3.7.2 server-3.7.2-rc-1 server-3.7.1 server-3.7.1-rc-1 server-3.7.0 server-3.7.0-alpha-2 server-3.6.2 server-3.6.1 server-3.6.0 server-3.5.1 server-3.5.0 server-3.4.2 server-3.4.1 server-3.4.0 server-3.3.2 server-3.3.1 server-3.3.0 server-3.2.3 server-3.2.2 server-3.2.1 server-3.2.0 server-3.1.2 server-3.1.1 server-3.1.0 server-3.0.3 server-3.0.2 server-3.0.1 server-3.0.0 server-3.0.0-alpha-1 server-2.3.2 server-2.3.1 server-2.3.0
Nothing to show
Permalink
Failed to load latest commit information.
.github doc: Update PR template (#560) Oct 6, 2017
.mvn Update Maven to 3.5.2 (#605) Nov 9, 2017
api chore(version): development version is now 4.5.0-SNAPSHOT Jan 11, 2018
build-tools chore(version): development version is now 4.5.0-SNAPSHOT Jan 11, 2018
client chore(version): development version is now 4.5.0-SNAPSHOT Jan 11, 2018
common chore(version): development version is now 4.5.0-SNAPSHOT Jan 11, 2018
docs Revert "Merge branch 'release'" Jan 15, 2018
parent chore(version): development version is now 4.5.0-SNAPSHOT Jan 11, 2018
server Merge commit '0c1a24bf9425858959b698813acdcef032a28fce' into HEAD Jan 23, 2018
.editorconfig refactor(test): Code coverage and test quality improvements (#205) Jun 8, 2017
.gitattributes Add .gitattributes for scripts and JS files (#422) Jul 13, 2017
.gitignore chore(ZNTA-1413): enable Takari extensions, incl. Smart Builder Nov 11, 2016
.travis-settings.xml Travis: prefetch dependencies without logging; disable openjdk6 Nov 6, 2014
CONTRIBUTING.md doc: Update PR template (#560) Oct 6, 2017
Jenkinsfile Merge commit '3eb77e8d86c131379a2229c605e589f5bd7d3511' into HEAD Dec 15, 2017
README.md doc: add commit message format in readme (#642) Jan 3, 2018
build Update to JBoss EAP 7.1 (#632) Dec 14, 2017
license-gpl.md Use Markdown licences, Maven badges for clients (#417) Jul 11, 2017
license.md Use Markdown licences, Maven badges for clients (#417) Jul 11, 2017
license_header.txt chore(ZNTA-1391): update references for zanata-platform (#36) Nov 12, 2016
mkdocs.yml ZNTA-2134 version TM merge docs Sep 5, 2017
mvnw Optimise/tweak Jenkinsfile Mar 30, 2017
mvnw.cmd Add Maven Wrapper Oct 20, 2016
pom.xml chore(version): development version is now 4.5.0-SNAPSHOT Jan 11, 2018
run-clean.sh Update Jenkinsfile (wip) Mar 30, 2017

README.md

Zanata

Zanata is a web-based system for translators to translate documentation and software online using a web-browser. It is written in Java and uses modern web technologies like JBoss EAP, CDI, GWT, Hibernate, and a REST API. It currently supports translation of DocBook/Publican documentation through PO files, and a number of other formats. Projects can be uploaded to and downloaded from a Zanata server using a Maven plugin or a command line client.

For developers and writers: By using Zanata for your document translations, you can open up your project for translations without opening your entire project in version control.

For translators: No need to deal with PO files, gettext or a version control system - just log in to the website, join a language team and start translating, with translation memory (history of similar translations) and the ability to see updates from other translators in seconds.

Find out about Zanata here: http://zanata.org/

Zanata is Free software, licensed under the LGPL.

Developers: Building Zanata from source

Prerequisites

You will need:

  • Java SDK 8 (OpenJDK recommended)
  • zsh (for the build script)
  • npm (optional)
  • MySQL or MariaDB (optional)
  • JBoss EAP 7 or WildFly 10 (optional)
  • Linux or Mac OSX. Windows works too, sometimes.

A full build needs to download and install node, npm, mysql and WildFly/EAP, some of which are platform-dependent.

Building

The build script you need to know about is ./build. It covers all your Zanata-building needs. Disclaimer: may not cover all your Zanata-building needs.

The -h argument prints the build script's help.

Building on Mac OS X and macOS Sierra

Currently, there is an extra step needed to build Zanata on a Mac. For ./build to work, you will need to point to the correct Java directory using the following command (using the correct JDK version on your Mac):

export JAVA_HOME="/Library/Java/JavaVirtualMachines/jdk1.8.X_XX.jdk/Contents/Home"

This JAVA_HOME workaround will not be needed in the next release of the Maven wrapper: io.takari:maven-wrapper:0.1.7.

See https://github.com/takari/maven-wrapper/pull/14 for details.

Build everything with unit tests

./build --all - Builds the entire project (client and server ) fairly quickly, skipping integration tests and static analysis (checkstyle, etc), but including unit tests.

NB: If you need to run functional tests later without rebuilding, you should add -i to install the war file to your Maven repo after packaging.

Quickly build a .war file for later tests or docker deployment

./build --server -iQ - Builds and installs the project as quickly as possible, skipping all checks and verifications (i.e. tests, checkstyle, etc).

The binaries will be installed to your Maven repo for usage in later (partial) builds and tests.

Quickly build and run a server for testing

./build -w - Builds zanata-war and starts a JBoss/WildFly server using the cargo plugin. This is intended for starting a Zanata instance with the aim of running functional tests from an IDE.

Development using docker (experimental)

For a quick Zanata development environment with Docker, please visit the docker README.

Commits

These are the format rules for our git commit messages. This leads to more readable messages that are easy to follow when looking through the project history.

Commit Message Format

Each commit message consists of a header, a body and a footer. The header has a special format that includes a type, a scope and a subject:

<type>: <subject>
<BLANK LINE>
<Jira reference>
<body>

Type

Must be one of the following:

  • revert: Revert previous commit. Subject should be This reverts commit <hash>
  • feat: A new feature
  • fix: A bug fix
  • docs: Documentation only changes
  • style: Changes that do not affect the meaning of the code (white-space, formatting, missing semi-colons, etc)
  • refactor: A code change that neither fixes a bug nor adds a feature
  • perf: A code change that improves performance
  • test: Adding missing tests
  • chore: Changes to the build process or auxiliary tools and libraries such as documentation generation

Source code note

Please note that any references to pull request numbers in commit messages (eg merge nodes) prior to 20 October 2016 are referring to the old repositories (before they were merged into the zanata-platform repository):

GitHub tries to auto-link numbers to pull requests, but such links will generally be incorrect for old commit messages.