Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/ZSeven-W/openpencil
/ functions
Functions
3,401 in github.com/ZSeven-W/openpencil
⨍
Functions
3,401
◇
Types & classes
844
↓ 1 callers
Function
setPretty
(v: boolean)
apps/cli/src/output.ts:7
↓ 1 callers
Method
setSourceResolver
(resolver: (src: string) => ResolvedImageSource)
packages/pen-renderer/src/image-loader.ts:42
↓ 1 callers
Function
setSshKeyManager
(mgr: SshKeyManager | null)
apps/desktop/git/git-engine.ts:204
↓ 1 callers
Method
setThemes
(themes: Record<string, string[]>)
packages/pen-engine/src/core/variable-manager.ts:97
↓ 1 callers
Method
setViewport
Set viewport state with zoom clamping.
packages/pen-engine/src/core/viewport-controller.ts:37
↓ 1 callers
Function
setWrappedLineCounter
(counter: WrappedLineCounter)
packages/pen-core/src/layout/text-measure.ts:236
↓ 1 callers
Function
setupAutoUpdater
()
apps/desktop/auto-updater.ts:141
↓ 1 callers
Function
setupGitIPC
()
apps/desktop/git/ipc-handlers.ts:206
↓ 1 callers
Function
setupIPC
(deps: IpcDeps)
apps/desktop/ipc-handlers.ts:31
↓ 1 callers
Function
shouldApplyLegacyPenCompatibility
(doc: PenDocument, filePath?: string | null)
packages/pen-mcp/src/document-manager.ts:311
↓ 1 callers
Function
shouldApplyLegacyPenCompatibility
( doc: PenDocument, options: ImportSourceOptions, )
apps/web/src/utils/import-pen-document.ts:50
↓ 1 callers
Function
shouldDropDuplicateOpenPathFill
(node: PenNode)
apps/web/src/services/ai/sanitize-llm-anti-patterns.ts:387
↓ 1 callers
Function
shouldStripFill
(childFill: string, rootFill: string | null)
packages/pen-core/src/layout/strip-redundant-section-fills.ts:157
↓ 1 callers
Function
slugifyName
(name: string | undefined, fallback: string)
apps/web/src/services/ai/codegen-assets.ts:50
↓ 1 callers
Function
solidFill
(color: string)
apps/web/src/services/ai/mobile-status-bar.ts:41
↓ 1 callers
Function
splitOperations
* Split DSL operations handling multi-line JSON bodies. Splits on newlines * that are OUTSIDE quoted strings and balanced brackets. This lets agents
packages/pen-mcp/src/tools/batch-design.ts:122
↓ 1 callers
Function
splitSections
(markdown: string)
packages/pen-core/src/design-md-parser.ts:28
↓ 1 callers
Function
splitTopLevel
(str: string)
packages/pen-mcp/src/tools/batch-design.ts:694
↓ 1 callers
Method
startArcDrag
(_scene: { x: number; y: number }, _engine: DesignEngine)
packages/pen-engine/src/browser/interaction/arc-handler.ts:10
↓ 1 callers
Method
startArcDrag
* Try to start an arc drag. Returns true if an arc handle was hit.
apps/web/src/canvas/skia/skia-interaction-arc.ts:26
↓ 1 callers
Function
startDesktop
()
apps/cli/src/launcher.ts:116
↓ 1 callers
Method
startDrawing
(tool: ToolType, scene: { x: number; y: number })
packages/pen-engine/src/browser/interaction/draw-handler.ts:17
↓ 1 callers
Function
startNitroServer
()
apps/desktop/main.ts:238
↓ 1 callers
Function
startRenameVariant
(tv: string)
apps/web/src/components/panels/variable-theme-manager.tsx:478
↓ 1 callers
Method
startRenderLoop
()
packages/pen-renderer/src/renderer.ts:297
↓ 1 callers
Method
startRenderLoop
()
packages/pen-engine/src/browser/canvas-renderer.ts:202
↓ 1 callers
Method
startRenderLoop
()
apps/web/src/canvas/skia/skia-engine.ts:213
↓ 1 callers
Method
startResize
* Try to start a resize from a handle hit. Returns true if a handle was hit.
apps/web/src/canvas/skia/skia-interaction-resize.ts:41
↓ 1 callers
Method
startRotation
* Try to start a rotation from a rotation zone hit. Returns true if hit.
apps/web/src/canvas/skia/skia-interaction-resize.ts:124
↓ 1 callers
Function
startWeb
()
apps/cli/src/launcher.ts:137
↓ 1 callers
Function
stopApp
()
apps/cli/src/launcher.ts:175
↓ 1 callers
Function
stopMcpHttpServer
()
apps/web/server/utils/mcp-server-manager.ts:169
↓ 1 callers
Function
stopMcpServer
()
apps/desktop/dev.ts:194
↓ 1 callers
Function
streamCodexExec
( userPrompt: string, options: CodexExecOptions = {}, )
apps/web/server/utils/codex-client.ts:156
↓ 1 callers
Function
streamViaAgentSDK
Stream via Claude Agent SDK — emits text/thinking deltas as SSE
apps/web/server/api/ai/generate.ts:307
↓ 1 callers
Function
streamViaAgentSDK
Stream via Claude Agent SDK (uses local Claude Code OAuth login, no API key needed)
apps/web/server/api/ai/chat.ts:228
↓ 1 callers
Function
streamViaBuiltin
* Stream via builtin provider — direct API key, no CLI tool needed. * Uses Zig NAPI addon (agent-native) with Anthropic or OpenAI-compatible provider
apps/web/server/api/ai/chat.ts:978
↓ 1 callers
Function
streamViaCodex
Stream via Codex CLI — emits text/error deltas as SSE
apps/web/server/api/ai/generate.ts:360
↓ 1 callers
Function
streamViaCodex
(body: ChatBody, model?: string)
apps/web/server/api/ai/chat.ts:530
↓ 1 callers
Function
streamViaCopilot
Stream via GitHub Copilot SDK (@github/copilot-sdk)
apps/web/server/api/ai/chat.ts:899
↓ 1 callers
Function
streamViaGemini
Stream via Gemini CLI — emits text deltas as SSE
apps/web/server/api/ai/generate.ts:447
↓ 1 callers
Function
streamViaGemini
Stream via Gemini CLI (`gemini -p -o stream-json`) — CLI handles its own auth
apps/web/server/api/ai/chat.ts:843
↓ 1 callers
Function
streamViaOpenCode
Stream via OpenCode SDK — emits text/thinking deltas as SSE
apps/web/server/api/ai/generate.ts:385
↓ 1 callers
Function
streamViaOpenCode
Stream via OpenCode SDK using event subscription for real-time streaming
apps/web/server/api/ai/chat.ts:598
↓ 1 callers
Function
streamWithTimeout
Wrap an async generator with a timeout — yields values until timeout fires
apps/web/server/api/ai/chat.ts:519
↓ 1 callers
Function
stripEmptySlots
(params: Params)
apps/web/server/opencode/v2/gen/core/params.gen.ts:97
↓ 1 callers
Function
stripEmptySlots
(params: Params)
apps/web/server/opencode/gen/core/params.gen.ts:97
↓ 1 callers
Function
stripNoToolsRestriction
* Strip "NEVER use tools" and similar instructions from system prompt * when we need Claude Code Agent SDK to use its Read tool for image analysis.
apps/web/server/api/ai/chat.ts:223
↓ 1 callers
Function
stripNoise
* Strip fields that don't influence code generation. Keeps request bodies small * enough that proxies don't reject them with 403/413, and reduces inp
apps/web/src/services/ai/codegen-prompts.ts:15
↓ 1 callers
Function
stripNonStandardTags
* Strip non-standard XML-like tags that third-party models may inject * (e.g. `<minimax:tool_call>`, `<tool_call>`, `<|im_start|>`). * Preserves con
apps/web/src/services/ai/design-parser.ts:25
↓ 1 callers
Function
stripStepBlocks
(text: string)
apps/web/src/components/panels/chat-message-tool-call.tsx:52
↓ 1 callers
Function
stripToolCallBlocks
* Strip fake tool call blocks that basic-tier models (MiniMax, etc.) may emit. * These look like `{tool => "Write", args => { ... }}` and are not val
apps/web/src/services/ai/design-parser.ts:38
↓ 1 callers
Function
stripToolCallXml
Strip raw tool-call / function-call XML that should never be shown to users
apps/web/src/components/panels/chat-message.tsx:25
↓ 1 callers
Function
submitAuthAndRetry
( which: 'pull' | 'push', creds: GitAuthCreds, remember: boolean, )
apps/web/src/components/panels/git-panel/git-panel-remote-controls.tsx:164
↓ 1 callers
Function
summarizeNode
(n: PenNode, depth = 0)
apps/web/src/components/panels/design-md-ai-generator.ts:100
↓ 1 callers
Function
tick
()
apps/web/server/utils/sse-keepalive.ts:5
↓ 1 callers
Function
timestamp
()
apps/desktop/logger.ts:24
↓ 1 callers
Function
timestamp
()
apps/web/server/utils/server-logger.ts:35
↓ 1 callers
Function
toFileUrl
(filePath: string)
apps/web/src/utils/document-assets.ts:94
↓ 1 callers
Function
toHex7
Convert any CSS color string to #rrggbb for <input type="color">.
packages/pen-react/src/components/color-picker.tsx:5
↓ 1 callers
Function
toHex7
Convert any CSS color string to #rrggbb for <input type="color">.
apps/web/src/components/shared/color-picker.tsx:5
↓ 1 callers
Function
toKebabCase
* Convert concatenated lowercase to kebab-case for icon name matching. * e.g. "arrowright" → "arrow-right", "chevrondown" → "chevron-down"
apps/web/server/api/ai/icon.ts:211
↓ 1 callers
Function
toRelativePath
(baseDir: string, targetPath: string)
apps/web/src/utils/document-assets.ts:119
↓ 1 callers
Function
toRuntimeLocalAssetUrl
(filePath: string)
apps/web/src/utils/document-assets.ts:108
↓ 1 callers
Function
todayStamp
()
packages/pen-mcp/src/tools/debug-logs-tail.ts:29
↓ 1 callers
Function
todayStamp
()
apps/desktop/logger.ts:28
↓ 1 callers
Function
todayStamp
()
apps/web/server/utils/server-logger.ts:31
↓ 1 callers
Function
tokenize
(code: string, rules: TokenRule[])
apps/web/src/utils/syntax-highlight.ts:90
↓ 1 callers
Function
touch
(planId: string)
apps/web/server/utils/codegen-plan-store.ts:40
↓ 1 callers
Function
trackNewIds
(n: PenNode)
apps/web/src/services/ai/design-canvas-ops.ts:205
↓ 1 callers
Function
transfer8to32
(fileByte: Uint8Array, start: number)
packages/pen-figma/src/fig-parser.ts:32
↓ 1 callers
Function
tryAutoInstall
(agent: string, binary: string)
apps/web/server/api/ai/install-agent.ts:115
↓ 1 callers
Function
tryCopilotInstall
(binary: string)
apps/web/server/api/ai/install-agent.ts:181
↓ 1 callers
Function
tryImmediateIconResolution
(nodeId: string, iconName: string)
apps/web/src/services/ai/icon-font-fetcher.ts:19
↓ 1 callers
Function
tryOpenCodeInstall
(binary: string)
apps/web/server/api/ai/install-agent.ts:159
↓ 1 callers
Function
tryParseSingleRootNode
* Try to parse a single root PenNode with nested children from raw text. * Handles the case where weaker models output a single JSON object * instea
apps/web/src/services/ai/design-parser.ts:243
↓ 1 callers
Function
tryPasteFigmaFromClipboard
()
apps/web/src/hooks/use-figma-paste.ts:107
↓ 1 callers
Function
tryReadGifSize
(bytes: Uint8Array)
apps/web/src/services/ai/consumer-view-enrichment.ts:91
↓ 1 callers
Function
tryReadJpegSize
(bytes: Uint8Array)
apps/web/src/services/ai/consumer-view-enrichment.ts:98
↓ 1 callers
Function
tryReadPngSize
(bytes: Uint8Array)
apps/web/src/services/ai/consumer-view-enrichment.ts:84
↓ 1 callers
Function
uninstallMcpServer
(config: Record<string, any>)
apps/web/server/api/ai/mcp-install.ts:213
↓ 1 callers
Function
updateFeedback
( entry: HistoryEntry, feedback: NonNullable<HistoryEntry['feedback']>, )
packages/pen-ai-skills/src/memory/generation-history.ts:41
↓ 1 callers
Function
upsertPreparedNodes
Same as upsertNodesToCanvas but skips sanitization (caller already did it).
apps/web/src/services/ai/design-canvas-ops.ts:496
↓ 1 callers
Method
use
(fn: Interceptor)
apps/web/server/opencode/gen/client/utils.gen.ts:269
↓ 1 callers
Function
useBeforeUnload
()
apps/web/src/hooks/use-before-unload.ts:9
↓ 1 callers
Function
useChatHandlers
()
apps/web/src/components/panels/ai-chat-handlers.ts:483
↓ 1 callers
Function
useClipboardShortcuts
()
apps/web/src/hooks/use-clipboard-shortcuts.ts:18
↓ 1 callers
Function
useDesignMdAIGenerator
()
apps/web/src/components/panels/design-md-ai-generator.ts:147
↓ 1 callers
Function
useDesignMdActions
()
apps/web/src/components/panels/design-md-actions.tsx:15
↓ 1 callers
Function
useEditShortcuts
()
apps/web/src/hooks/use-edit-shortcuts.ts:10
↓ 1 callers
Function
useElectronMenu
()
apps/web/src/hooks/use-electron-menu.ts:38
↓ 1 callers
Function
useFigmaPaste
()
apps/web/src/hooks/use-figma-paste.ts:132
↓ 1 callers
Function
useFileDrop
()
apps/web/src/hooks/use-file-drop.ts:34
↓ 1 callers
Function
useHistory
()
packages/pen-react/src/hooks/use-history.ts:19
↓ 1 callers
Function
useHistoryShortcuts
()
apps/web/src/hooks/use-history-shortcuts.ts:6
↓ 1 callers
Function
useKeyboardShortcuts
()
apps/web/src/hooks/use-keyboard-shortcuts.ts:6
↓ 1 callers
Function
useMcpSync
()
apps/web/src/hooks/use-mcp-sync.ts:137
↓ 1 callers
Function
useSystemFonts
()
packages/pen-react/src/components/font-picker.tsx:72
↓ 1 callers
Function
useSystemFonts
()
apps/web/src/hooks/use-system-fonts.ts:116
↓ 1 callers
Function
useToolShortcuts
()
apps/web/src/hooks/use-tool-shortcuts.ts:17
← previous
next →
2,301–2,400 of 3,401, ranked by callers