There was an error while loading. Please reload this page.
Scratchpad for software architecture, ideas, and comparisons of approaches.
classDiagram class Base { -Mode coreMode buildCoreModes() 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 p5Mode Mode <|-- p5Mode Base --> Mode
--- config: flowchart: defaultRenderer: "elk" --- flowchart TB subgraph 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 --> ipcMain mainFile --> win preloadFile -- webPreferences.preload --- win end subgraph 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 -.-> rendererFile indexFile -.-> sketchFile rendererFile --> proxy sketchFile -.-> proxy proxy -.-> global end sto@{ shape: lean-r, label: "Standard Output\nPiped into PDE console"} win -. loadFile() .-> indexFile preloadFile -- "`**contextBridge**.exposeInMainWorld()`" --- global global messaging@== "`ipcRenderer.send('channel', message)`" ==> ipcMain messaging@{animate: true} ipcMain -- "`console.log`" --- sto