# Nick Pappas

Fullstack & platform engineer in Athens. I build geospatial platforms and satellite-data pipelines at Planetek Hellas, and Claude Code plugins on the side.

- Email: nick@thegreek.dev
- Location: Athens, Greece (EU citizen)
- GitHub: https://github.com/pappanick
- LinkedIn: https://www.linkedin.com/in/nick-pappas-021b051a3
- Website: https://thegreek.dev/
- CV: https://thegreek.dev/cv.md (HTML: https://thegreek.dev/cv/, JSON Resume: https://thegreek.dev/resume.json)

## Work

### Federates

Backend and geospatial platform for a European Defence Fund programme, linking satellite-data services with distributed simulation across partner organisations.

- Link: https://federates.planetek.it/
- Code: Private repo on Azure
- Stack: FastAPI, eoAPI, pgSTAC, COG, Leaflet, Keycloak, Traefik, HLA/RTI, Azure DevOps
- Recording: https://thegreek.dev/media/federates-workflow.mp4

## Open source

### Fusion

Claude Code plugins. Fusion puts a panel of AI models to work on one task.

- Link: https://github.com/pappanick/demos/tree/main/fusion
- Code: https://github.com/pappanick/demos
- Stack: Claude Opus, Codex, Antigravity, Kimi, GLM, Qwen, DeepSeek

How it works: Round 1 is blind: every seat (Opus, Codex, Antigravity, Kimi, GLM, Qwen, DeepSeek) reviews alone and cites the file:line it read. After every round the judge runs a convergence test and re-checks each cited line. If every claim is backed by a line another seat re-checked, the run has converged. If the disagreement is grounded in evidence, a rebuttal round follows (at most 3 rounds by default): seats read each other’s blocks and may change position only by citing the line that changed it. At the round cap, on a stalemate, or with fewer than 3 seats, the run falls back: the judge rules on the evidence and records each dissent. Agreement is not corroboration; disagreement is settled by evidence, not votes.

Install:

```
/plugin marketplace add pappanick/demos
/plugin install fusion@demos
```
