Closed Bug 1473330 Opened 6 years ago Closed 6 years ago

[Translate.Next] Create architecture for code and deployment

Categories

(Webtools Graveyard :: Pontoon, enhancement, P1)

enhancement

Tracking

(Not tracked)

RESOLVED FIXED

People

(Reporter: adrian, Assigned: adrian)

References

Details

Attachments

(2 files)

This bug involves: 

- making technological choices for the new Translate app
- figuring out deployment for development and production
- creating an architecture for code and tests
- building a first, simple feature (Entities list)
- writing documentation to explain choices and onboard people
Blocks: 1473328
Priority: -- → P2
Blocks: 1473348
Status: NEW → ASSIGNED
Commit pushed to master at https://github.com/mozilla/pontoon

https://github.com/mozilla/pontoon/commit/43becde477e4168c52986284c0abc115b770469b
Fix bug 1473330 - Translate.Next architecture (#989)

* Add React frontend for Translate app.
This has been set up using create-react-app.

* Integrate new Translate app into django.
This provides a working prod and dev environment. In production, django will serve the index.html file as a template, and files built by webpack will be collected and distributed with other django static files. In development, all requests are proxied to the dev webpack server, allowing all dev niceties to be used.

* Add support for websockets.

* Add a bit of documentation specific to our use case.

* Add redux for state management.

* Show a very basic list of entities.

* Enable absolute path import.

* Add links to various resources.

* Rearchitecture code into modules.

All features should be self-contained into a module in src/modules/. All code that is shared amongst several modules should go into a module in src/core/.

* Remove unused assets.

* Add some architecture documentation.

* Add Flow to current code for type checking.

* Add unit testing with jest, enzyme and sinon.

* Extend documentation, talk about type checking, modules, and list tools we use.

* Move CSS rules closer to actual component.

* Add django-waffle and hide translate.next behind a switch.

* Better structure for the README file.

* Build and test frontend in travis.

* Of course it is better if dependencies are installed.

* Use pushd to run commands in frontend.

* Configure eslint and fix errors.

* Add more code comments.

* Improve documentation around local dev and Flow.

* Add tests for the Translate view.

* Improve documentation.

* Fix serving static files for development.

* Integrate Translate.Next with out docker setup.

* Remove debug.

* Use DEV instead of DEBUG.

* Much review.
          Many comments.
    Wow better!

* Flatter module public interfaces.

* Import correctly from modules.

* Fix docker webapp run.
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
I forgot to add build steps during deployment to Heroku.
Status: RESOLVED → REOPENED
Resolution: FIXED → ---
Commit pushed to master at https://github.com/mozilla/pontoon

https://github.com/mozilla/pontoon/commit/a72a26fb824d88d8c1a208e6c4876466842d7750
Fix bug 1473330 - Build frontend resources during Heroku deploy. (#1018)

* Fix bug 1473330 - Build frontend resources during Heroku deploy.

* Use correct URL to request data from the server.

* Load actual fontawesome CSS file.
Status: REOPENED → RESOLVED
Closed: 6 years ago6 years ago
Resolution: --- → FIXED
Priority: P2 → P1
Product: Webtools → Webtools Graveyard
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: