DIRACGrid / DIRACGrid/.github

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

Open
#3 1 comment 0 reactions 0 assignees View on GitHub
enhancement
Dominant language
No language data
Stars
0
Forks
1
PR merge metrics
No merged PRs in 30d

Description

### 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](https://github.com/DIRACGrid/DIRAC/blob/integration/.github/CONTRIBUTING.md) and
[DiracX](https://github.com/DIRACGrid/diracx/tree/main/docs/dev) differ; new development happens in DiracX.

**DIRAC — production stack**

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

```mermaid
flowchart TB
MONO["diracx
next-gen core"]
WEB["diracx-web
React UI"]
CHARTS["diracx-charts
Helm chart & demo"]
IMAGES["container-images
secret-generation"]
SIGN["signurlarity
S3 presigned URLs"]
DOCS["mkdocs-diracx-plugin
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;
```

Contributor guide

Open the contributing guide

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.

Assessment

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

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.