# R&D Bouwblok: EVOLV (Edge-Layer Evolution for Optimized Virtualization)

## Over

Dit bouwblok is ontwikkeld door het R&D-team van Waterschap Brabantse Delta voor gebruik in Node-RED.


> *[Voeg hier een korte toelichting toe over de specifieke functionele werking van dit bouwblok]*

---

## Licentie

Deze software valt onder de **Creative Commons Attribution-NonCommercial 4.0 International (CC BY-NC 4.0)**-licentie.

- Gebruik, aanpassing en verspreiding is toegestaan voor **niet-commerciële doeleinden**, mits duidelijke naamsvermelding naar Waterschap Brabantse Delta.
- Voor **commercieel gebruik** is voorafgaande toestemming vereist.

📧 Contact: [rdlab@brabantsedelta.nl](mailto:rdlab@brabantsedelta.nl)  
🔗 Licentie: [https://creativecommons.org/licenses/by-nc/4.0/](https://creativecommons.org/licenses/by-nc/4.0/)

---

## Generieke opbouw van bouwblokken

- Reageren automatisch op inkomende data (bijv. de positie van een object bepaalt de berekening).
- Ondersteunen koppeling van complexe dataketens tussen processen.
- Gestandaardiseerde input/output:
  - Output = procesdata
  - Opslaginformatie + relatieve positionering t.o.v. andere objecten
- Ontworpen voor combinatie met andere bouwblokken (ook van derden).
- Open source en vrij beschikbaar voor iedereen.

---

## Installatie – Alle bouwblokken (via EVOLV)

Alle bouwblokken van het R&D-team zijn gebundeld in de **EVOLV-repository**, waarin gebruik wordt gemaakt van Git submodules.

### Eerste keer klonen:

```bash
git clone --recurse-submodules https://gitea.centraal.wbd-rd.nl/RnD/EVOLV.git
cd EVOLV
```

Of, als je zonder submodules hebt gekloond:

```bash
git submodule init
git submodule update
```

### Submodules updaten:

Om alle submodules te updaten naar de laatste versie van hun eigen repository:

```bash
git submodule update --remote --merge
```

Individuele submodule updaten:

```bash
cd nodes/<bouwblok-naam>
git checkout main
git pull origin main
cd ../..
git add nodes/<bouwblok-naam>
git commit -m "Update submodule <bouwblok-naam>"
```

---

## Installatie – Enkel bouwblok

1. Clone de gewenste repository:

   ```bash
   git clone https://gitea.centraal.wbd-rd.nl/<repo-naam>.git
   ```

2. Kopieer het bouwblok naar je Node-RED map:

   ```bash
   mkdir -p ~/.node-red/nodes
   cp -r <pad-naar-geclonede-map> ~/.node-red/nodes/
   ```

3. Controleer of `settings.js` het volgende bevat:

   ```js
   nodesDir: './nodes',
   ```

4. Herstart Node-RED:

   ```bash
   node-red-stop
   node-red-start
   ```

---

## Bijdragen (Fork & Pull Request)

Wil je bijdragen aan de R&D bouwblokken? Volg dan dit stappenplan:

1. Fork maken

- Maak een fork van de gewenste R&D repository in Gitea.

- Je krijgt hiermee een eigen kopie van de repository in je account.

2. Wijzigingen aanbrengen

- Clone je fork lokaal en maak een nieuwe branch (bijv. feature/mijn-wijziging).

- Breng je wijzigingen aan, commit en push de branch terug naar je fork.

3. Pull Request indienen

- Ga in Gitea naar je fork en open de branch.

- Klik op New Pull Request.

- Stel de R&D repository in bij samenvoegen met.

- Stel jouw fork/branch in bij trekken van.

4. Beschrijving toevoegen

- Geef een duidelijke titel en beschrijving.

- Verwijs indien van toepassing naar een issue met de notatie #<nummer> (bijv. #42).

5. Code review en merge

- De beheerders van de R&D repository beoordelen je wijziging.

- Na goedkeuring wordt de wijziging opgenomen in de R&D repository.

----

## Contact

📧 rdlab@brabantsedelta.nl
