forked fromprocessing/processing4
- Notifications
You must be signed in to change notification settings - Fork0
Home
Stephan Max edited this pageAug 5, 2025 ·2 revisions
Scratchpad for software architecture, ideas, and comparisons of approaches.
classDiagramclass Base {-Mode coreModebuildCoreModes()getDefaultModeIdentifier() String}class Mode {<<abstract>>#Base base#File folder+getTitle()* String+createEditor(Base base, String path, EditorState state)* Editor+getDefaultExtension()* String+getExtensions()* String[]+getIgnorable()* String[]}class p5ModeMode <|-- p5ModeBase --> Mode---config: flowchart: defaultRenderer: "elk"---flowchart TBsubgraph main["Main (privileged)"]mainFile@{ shape: doc, label: "main.js" }preloadFile@{ shape: doc, label: "preload.js" }win["`**BrowserWindow**- webContents`"]ipcMain@{ shape: trap-t, label: "ipcMain.on('channel', message)"}mainFile --> ipcMainmainFile --> winpreloadFile -- webPreferences.preload --- winendsubgraph renderer["Renderers (sandboxed)"]indexFile@{ shape: docs, label: "index.html" }proxy(("`*Proxy*console`"))rendererFile@{ shape: doc, label: "renderer.js" }sketchFile@{ shape: docs, label: "sketch.js" }global[window.electron.sendMessage]indexFile -.-> rendererFileindexFile -.-> sketchFilerendererFile --> proxysketchFile -.-> proxyproxy -.-> globalendsto@{ shape: lean-r, label: "Standard Output\nPiped into PDE console"} win -. loadFile() .-> indexFilepreloadFile -- "`**contextBridge**.exposeInMainWorld()`" --- globalglobal messaging@== "`ipcRenderer.send('channel', message)`" ==> ipcMainmessaging@{animate: true}ipcMain -- "`console.log`" --- sto