Skip to content

Migrate web_diagram from repository Odoo 13 to OCA repository Odoo 18 #3489

Description

@mathben

I did the migration of module web_diagram from Odoo 13 repository for each version to Odoo 18.

Original source: https://github.com/odoo/odoo/tree/6.1/addons/web_diagram
Final version source : https://github.com/odoo/odoo/tree/13.0/addons/web_diagram

PR odoo 14 #3490
PR odoo 15 #3491
PR odoo 16 #3492
PR odoo 17 #3493
PR odoo 18 #3494

Q1. Are we going to merge all the repositories from 14 to 18, and adapt OpenUpgrade?

OCA/OpenUpgrade#3232

Q2. Last commit of Raphael.js is 2019

https://github.com/DmitryBaranovskiy/raphael

Maybe we can change the library.

Comparison

Raphael.js Cytoscape.js ⚠️ D3.js ⚠️ Mermaid ⚠️ Vis.js Network
Maintenance ❌ Abandoned (~2020) ✅ Very active ✅ Very active ✅ Very active ✅ Active
Performance ⚠️ ~100 nodes ✅ 10k+ nodes ✅ 10k+ nodes ⚠️ ~200 nodes ✅ 5k+ nodes
Auto layout ❌ Manual ✅ Built-in (dagre, cola, elk…) ⚠️ Third-party plugins ❌ Declarative only ✅ Built-in force-directed
Interactivity ✅ Yes ✅ Full ✅ Full (must be coded) ❌ Static ✅ Full
License MIT ✅ MIT ✅ ISC ✅ MIT ✅ Apache 2.0 / MIT ✅
Bundle size ~100 KB ~200 KB ~50 KB (core) ~600 KB ~700 KB
Learning curve Medium Medium ⚠️ High Low Low
Use case General SVG graphics Graph / network Data visualization Declarative diagrams Interactive networks
GitHub DmitryBaranovskiy/raphael cytoscape/cytoscape.js d3/d3 mermaid-js/mermaid visjs/vis-network

Q3. web_diagram_builder

I create the application to show diagram on selected model with domain builder for Odoo 18. Maybe web_diagram_builder is more appropriate to be on repository https://github.com/oca/server-tools ?
Project in development https://github.com/TechnoLibre/web/tree/18.0_imp_web_diagram_builder
This module depend on web_diagram for example usage.

Can manage multiple diagram :

Image

Can use template, choose model and recursive field, filter domain :

Image

Show diagram of selected data :

Image

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions