bit-bots / imagetagger

An open source online platform for collaborative image labeling
MIT License
265 stars 53 forks source link

Introducing a JS Framework for the frontend #109

Open lucas-camp opened 5 years ago

lucas-camp commented 5 years ago

As the app heavily depends on JS and AJAX on the client side, using a JS framework (i.e. Angular/React/Vue) might increase the maintainability and modularization.

I see two ways to implement this.

  1. Integrating the JS framework into the current structure and each HTML page separately and still rendering the page in the backend. A huge benefit of this approach is, that it can be merged incrementally.

  2. Write a fully SPA (Single Page Application). The frontend is completely handled by the client side and the backend only exposes a REST API. This would mean a nearly complete rewrite of the frontend and huge parts of the backend.

A viable option might be starting with option 1 followed by 2 at a later point.

As I'm not really familiar with development of web applications I'd like to start a discussion on this topic.

NFiedler commented 5 years ago

As can be seen in the tool (especially my commits) itself, I am by no means fluent in JS. And i don't feel comfortable in and with the JS code we are currently using. So i'm all for a proper framework with modularization. As i have neither the competence nor the time to implement one of these options, i'm open to both, while i think that option 1 offers a more promising way by allowing a stepwise transition. I would be happy to provide REST APIs in the backend.

timonegk commented 4 years ago

The second approach, a complete rewrite of the ImageTagger frontend, is currently done by @ftsell. You can see the progress on the vue_frontend branch.