Danncode10 / Danncode10/nextviz

fix: migrate inconsistent node files to proper 3-file folder structure

Open
#3 0 comments 0 reactions 0 assignees View on GitHub
bug refactor
Dominant language
TypeScript
Stars
0
Forks
0
PR merge metrics
No merged PRs in 30d

Description

## Problem

Several nodes do not follow the established three-file folder pattern. This causes inconsistency in how the engine discovers and registers nodes.

### Required structure (per AGENTS.md + actual conventions):
```
app/nextviz/nodes/{node-name}/
├── node.tsx ← canvas UI component
├── panel.tsx ← properties sidebar
└── logic.ts ← NodeExecutorFn (server-side executor)
```

### Violations found:

| File | Issue |
|---|---|
| `app/nextviz/nodes/on-http.tsx` | Single file at root — not in a folder, no `panel.tsx` or `logic.ts` |
| `app/nextviz/nodes/log-data.tsx` | Single file at root — not in a folder, no `panel.tsx` or `logic.ts` |
| `app/nextviz/nodes/chat-model-node/node.tsx` | Missing `logic.ts` and `panel.tsx` |
| `app/nextviz/nodes/memory-node/node.tsx` | Missing `logic.ts` and `panel.tsx` |

## Tasks
- [ ] Move `on-http.tsx` → `on-http/node.tsx`, add `panel.tsx` stub, add `logic.ts`
- [ ] Move `log-data.tsx` → `log-data/node.tsx`, add `panel.tsx` stub, add `logic.ts`
- [ ] Add `panel.tsx` and `logic.ts` to `chat-model-node/`
- [ ] Add `panel.tsx` and `logic.ts` to `memory-node/`
- [ ] Update `app/nextviz/nodes/index.ts` imports if affected
- [ ] Update `lib/nextviz/node-executors/index.ts` if affected

## Why this matters
The engine's `nodeExecutors` registry and the canvas `nodeTypes` map both rely on consistent file locations. Stray single files are easy to miss during refactors and break the two-pattern guarantee that makes nodes portable.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.