diff --git a/apps/canvas/front/src/Config.tsx b/apps/canvas/front/src/Config.tsx
index 9b410e1..137a467 100644
--- a/apps/canvas/front/src/Config.tsx
+++ b/apps/canvas/front/src/Config.tsx
@@ -1,13 +1,25 @@
 import { useStateStore } from "./lib/state";
 import { generateDodoConfig } from "./lib/config";
 import JSONView from "@microlink/react-json-view";
+import { useMemo } from "react";
 
 export function Config() {
 	const store = useStateStore();
+	const config = useMemo(
+		() => generateDodoConfig(store.projectId, store.nodes, store.env),
+		[store.projectId, store.nodes, store.env],
+	);
+	const cleaned = useMemo(() => {
+		if (config == null) {
+			return null;
+		}
+		const { input: _, ...rest } = config;
+		return rest;
+	}, [config]);
 	return (
 		<div className="h-full p-4 bg-muted overflow-auto text-xs">
 			<JSONView
-				src={generateDodoConfig(store.projectId, store.nodes, store.env) as object}
+				src={cleaned as object}
 				theme="rjv-default"
 				name={false}
 				displayDataTypes={false}
diff --git a/apps/canvas/front/src/Gateways.tsx b/apps/canvas/front/src/Gateways.tsx
index a1fce28..92a30a2 100644
--- a/apps/canvas/front/src/Gateways.tsx
+++ b/apps/canvas/front/src/Gateways.tsx
@@ -17,11 +17,13 @@
 	return (
 		<ul>
 			{Array.from(groupedAccess.entries()).map(([name, access]) => (
-				<li key={name}>
+				<>
 					{access.map((a) => (
-						<Gateway g={a} />
+						<li key={name}>
+							<Gateway g={a} />
+						</li>
 					))}
-				</li>
+				</>
 			))}
 		</ul>
 	);
diff --git a/apps/canvas/front/src/components/node-gateway-tcp.tsx b/apps/canvas/front/src/components/node-gateway-tcp.tsx
index c37f31b..4210d47 100644
--- a/apps/canvas/front/src/components/node-gateway-tcp.tsx
+++ b/apps/canvas/front/src/components/node-gateway-tcp.tsx
@@ -235,7 +235,7 @@
 				),
 			);
 		},
-		[id, data, store],
+		[id, data, store, nodes],
 	);
 	return (
 		<>
