[Feature]: Getting documentation about the relationships between the repos

Open
#3 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Assessment

Difficulty
4/5
Estimated time
3-5 days
Newbie friendliness
58/100
Issue type
Documentation
Clarity
Mostly clear
Activity status
Quiet
Tech stack
markdown
Domain
documentation

Research direction

Start by reviewing the DIRACGrid organization README and the referenced DIRAC CONTRIBUTING.md and diracx docs/dev pages. Use the proposed Mermaid diagrams as the basis for documenting repository relationships and contribution status, then link the architecture information from the organization README and the DIRAC and diracx documentation. Done means newcomers can easily find and understand where the projects fit together.

Written by the indexing model from the issue text.

Description

enhancement
User Story

As a newcomer, I want to quickly understand the relationships between all the projects within the DIRACGrid organization because there are many of them, so that I can quickly understand the status of the project and where I could contribute the most.

Feature Description

Having mermaid diagram showing what belongs to DIRAC and diracx and both and their state could be useful (but would require manual updates of course).

For context, this came to me a few months ago when I tried to add a contribution in another organization with many repos and I wasn't completely sure where to add my contribution (in the end I targeted the wrong repo). Note: this organization might have been less clear to navigate than the DIRACGrid one, but I am way to biased to tell.

The README of the organization could be used but it would be probably too much content.
Adding the architecture in both DIRAC and diracx documentation and reference them from the README could be a good trade off.

Definition of Done
  • easily find information about the relationships of the projects
Alternatives Considered

No response

Related Issues

No response

Additional Context

Here is a proposal:

How the repositories fit together

Node colours show how open each project is to contributions:

🟩 Features welcome — actively developed, new features accepted ·
🟧 Bug fixes only — maintained, no new features ·
🟥 Frozen — not accepting external contributions ·
Supporting — infra/tooling maintained by the core team; touch as needed

Each codebase has its own contributing guide —
DIRAC and
DiracX differ; new development happens in DiracX.

DIRAC — production stack

flowchart TB
    WEBAPP["<b>WebAppDIRAC</b><br/>ExtJS web portal"]
    DIRAC["<b>DIRAC</b><br/>core"]
    RES["<b>DIRACWebAppResources</b><br/>static assets"]
    PKG["<b>dirac-webapp-packaging</b><br/>JS build backend"]
    TM2["<b>tornado_m2crypto</b><br/>cert-based transport"]
    TORN["<b>tornado (fork)</b><br/>patched framework"]
    MGMT["<b>management</b><br/>release & CI images"]
    PILOT["<b>Pilot</b><br/>pilot jobs"]
    DB12["<b>DB12</b><br/>node benchmark"]
    OS["<b>DIRACOS2</b><br/>runtime / deps"]
    CFG["<b>diraccfg</b><br/>cfg parser"]

    WEBAPP -->|extends| DIRAC
    RES -->|assets for| WEBAPP
    PKG -->|builds| WEBAPP
    TM2 -->|secures| DIRAC
    TM2 -->|requires| TORN
    MGMT -.->|builds & releases| DIRAC
    PILOT -->|pulls jobs from| DIRAC
    PILOT -->|benchmarks via| DB12
    OS -->|runtime for| DIRAC
    CFG -->|parses CS of| DIRAC

    classDef bugfix fill:#ffe0b2,stroke:#e65100,color:#000;
    classDef frozen fill:#ffcdd2,stroke:#c62828,color:#000;
    classDef support fill:#eceff1,stroke:#607d8b,color:#000;
    class DIRAC,WEBAPP bugfix;
    class TORN,TM2 frozen;
    class RES,PKG,MGMT,PILOT,DB12,OS,CFG support;

DiracX — next-generation stack

flowchart TB
    MONO["<b>diracx</b><br/>next-gen core"]
    WEB["<b>diracx-web</b><br/>React UI"]
    CHARTS["<b>diracx-charts</b><br/>Helm chart & demo"]
    IMAGES["<b>container-images</b><br/>secret-generation"]
    SIGN["<b>signurlarity</b><br/>S3 presigned URLs"]
    DOCS["<b>mkdocs-diracx-plugin</b><br/>docs aggregation"]

    WEB -->|REST| MONO
    CHARTS -->|deploys| MONO
    CHARTS -->|deploys| WEB
    CHARTS -->|uses| IMAGES
    SIGN -.->|sandbox store| MONO
    DOCS -.->|aggregates docs| MONO

    classDef features fill:#c8e6c9,stroke:#2e7d32,color:#000;
    classDef frozen fill:#ffcdd2,stroke:#c62828,color:#000;
    classDef support fill:#eceff1,stroke:#607d8b,color:#000;
    class MONO features;
    class WEB frozen;
    class CHARTS,IMAGES,SIGN,DOCS support;
Dominant language
No language data
Stars
0
Forks
1
PR merge metrics
No merged PRs in 30d

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Similar issues

More Documentation issues

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.