Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with
or
.
Download ZIP
QA tool for Mozilla product localizers
PHP Python Shell CSS JavaScript ApacheConf

Merge pull request #499 from flodolo/entities

Improve search for entities
latest commit 701b88abe5
@flodolo flodolo authored
Failed to load latest commit information.
app Improve search for entities
cache
logs Issue #283: log bad API calls to logs/api-errors.log with Monolog
tests Improve search for entities
web Issue #482: add a 'clear search' button on the input field
.gitignore Update .gitignore for JSON stats files
.php_cs Issue #435: use php-cs-fixer for code consistency
.travis.yml Issue #474: Automate functional testing of our JSON API
CONTRIBUTING.md Issue #435: use php-cs-fixer for code consistency
LICENSE Ajout d'une licence MPL 2 en réponse au bug #330
README.md Issue #466: Add upstream remote in setup script
composer.json upgrade Atoum to the 2.x branch which is PHP7 compatible
start.sh Issue #370: create a 'start.sh -remote' command

README.md

Transvision

Transvision is a Web application targeting the Mozilla localization community, created and maintained by the French Mozilla community (https://www.mozfr.org).

The main purpose of Transvision is to provide a specialized search engine to find localized strings in Mozilla code repositories for all Mozilla products (Firefox, Thunderbird, Firefox OS, Seamonkey…) and websites (currenty only www.mozilla.org is supported) via a Web interface. There are also side-features such as checks for common typographical errors for some languages, validity checks for localized access keys in the UI, or comparison views between Mozilla repository channels (Nightly/Aurora/Beta/Release).

Transvision is written in PHP, the string extraction is done with the Silme library (Python) and server install/maintenance scripts are in Bash.

Transvision is available at: https://transvision.mozfr.org

Transvision Beta is available at: https://transvision-beta.mozfr.org

Transvision was created by Philippe Dessante, from the French Mozilla localization team.

Lead developer since version 1.0 : Pascal Chevrel (pascal AT mozilla DOT com).

Getting Started

The Transvision team uses Git and GitHub for both development and issue tracking.

  • If you'd like to contribute code back to us, you can do it using a Pull Request.
  • We generate automatic documentation of Transvision classes.
  • If you want to chat with the team, you can find us on IRC in #transvision IRC channel (#transvision channel on irc.mozilla.org server).
  • If you want to file a bug Create a new issue on github or contact the team.

Dependencies

  • Bash scripting support
  • Python
  • PHP >= 5.4
  • Composer (Dependency Manager for PHP, http://getcomposer.org/)
  • mercurial, git, svn to check out data sources (only for a Full installation for production)
  • php5-xsl and GraphViz packages for generating the documentation with phpDocumentor
  • Apache with mod_rewrite activated

Full Installation (production or heavy development)

  1. Fork the Transvision Project into your GitHub account.
  2. Clone your fork to your machine.
  3. Copy app/config/config.ini-dist to app/config/config.ini and adapt the variables to your system.
  4. Run first "app/scripts/setup.sh", then "app/scripts/glossaire.sh". This process will take some time as it downloads the source code for all Mozilla products (~20GB of data).
  5. Install Composer (Dependency Manager for PHP, http://getcomposer.org/) and run "php composer.phar install" (or "composer install" if installed globally) inside the web folder.
  6. You can run Transvision in your local machine either with the start.sh script or with php -S localhost:8082 -t web/ app/inc/router.php and opening http://localhost:8082/ with your browser. To bound PHP internal web server to 0.0.0.0 use start.sh -remote: server will be accessible from other devices in the LAN, or from the host machine in case Transvision is running inside a Virtual Machine.

Snapshot installation (regular development)

  1. Fork the Transvision Project into your GitHub account.
  2. Clone your fork to your machine.
  3. Run "start.sh". This process may take some time as it downloads a snapshot of data from Transvision server (~400MB). It will also download Composer, the PHP dependency manager, and install the dependencies needed. A config file located in app/config/config.ini will be created automatically. Once this is done, PHP development server will be launched and you can visit http://localhost:8082/ with your browser.

Note that if you launch start.sh again after the installation, it will not download again all the data, composer and dependencies, it will only launch the development server.

Update glossary

  • To update Transvision glossary, run "app/scripts/glossaire.sh" (only for full installations) .

Contribution tips

  • Add Transvision parent project as a remote repository called 'upstream' (this is a one time operation):
git remote add upstream git@github.com:mozfr/transvision.git
  • Update your master branch to the latest version of Transvision every time you want to do some dev work:
git checkout master
git pull upstream master

Then switch to a new branch where you will work on the patch you want to propose:

git checkout -b my_new_branch
  • Launch unit tests:
php vendor/atoum/atoum/bin/atoum -d tests/units/
  • Update dependencies with composer:
php composer.phar update

or, if Composer is installed globally:

composer update

Licence:

MPL 2

Something went wrong with that request. Please try again.