@pixelbyte-software/pixcode 1.54.10 → 1.54.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (282) hide show
  1. package/CODE_OF_CONDUCT.md +41 -41
  2. package/CONTRIBUTING.md +156 -156
  3. package/LICENSE +21 -718
  4. package/README.de.md +169 -169
  5. package/README.ja.md +167 -167
  6. package/README.ko.md +167 -167
  7. package/README.md +435 -418
  8. package/README.ru.md +169 -169
  9. package/README.tr.md +298 -298
  10. package/README.zh-CN.md +167 -167
  11. package/SECURITY.md +46 -46
  12. package/dist/api-automation.html +110 -110
  13. package/dist/api-docs.html +548 -548
  14. package/dist/assets/{index-DWOW_Jn0.js → index-Bcqs_1vc.js} +114 -114
  15. package/dist/clear-cache.html +85 -85
  16. package/dist/convert-icons.md +52 -52
  17. package/dist/docs.html +308 -308
  18. package/dist/features.html +133 -133
  19. package/dist/generate-icons.js +48 -48
  20. package/dist/humans.txt +15 -15
  21. package/dist/icons/codex-white.svg +3 -3
  22. package/dist/icons/codex.svg +3 -3
  23. package/dist/icons/cursor-white.svg +11 -11
  24. package/dist/icons/qwen-logo.svg +14 -14
  25. package/dist/index.html +58 -58
  26. package/dist/landing.html +268 -268
  27. package/dist/llms-full.txt +119 -119
  28. package/dist/llms.txt +53 -53
  29. package/dist/manifest.json +60 -60
  30. package/dist/openapi.yaml +1696 -1696
  31. package/dist/orchestration.html +125 -125
  32. package/dist/robots.txt +4 -4
  33. package/dist/site.css +692 -692
  34. package/dist/sitemap.xml +51 -51
  35. package/dist/sw.js +132 -132
  36. package/dist-server/server/cli.js +100 -100
  37. package/dist-server/server/daemon/manager.js +33 -33
  38. package/dist-server/server/daemon-manager.js +64 -64
  39. package/dist-server/server/routes/commands.js +25 -25
  40. package/dist-server/server/routes/git.js +17 -17
  41. package/dist-server/server/routes/live-view.js +46 -46
  42. package/dist-server/server/services/public-api-manifest.js +51 -51
  43. package/package.json +224 -224
  44. package/scripts/fix-node-pty.js +67 -67
  45. package/scripts/github/create-v1.38-issues.mjs +351 -351
  46. package/scripts/github/create-vscode-workbench-issues.mjs +121 -121
  47. package/scripts/smoke/backend-resource-bounds.mjs +152 -152
  48. package/scripts/smoke/changes-panel-layout.mjs +48 -48
  49. package/scripts/smoke/chat-composer-fixed-layout.mjs +55 -55
  50. package/scripts/smoke/chat-message-timeline-order.mjs +41 -41
  51. package/scripts/smoke/chat-realtime-hydration.mjs +44 -44
  52. package/scripts/smoke/chat-session-provider-pools.mjs +35 -35
  53. package/scripts/smoke/chat-session-state.mjs +19 -19
  54. package/scripts/smoke/code-editor-theme.mjs +55 -55
  55. package/scripts/smoke/code-editor-vscode-engine.mjs +91 -91
  56. package/scripts/smoke/command-center-agent-writes.mjs +79 -79
  57. package/scripts/smoke/command-center-non-git.mjs +46 -46
  58. package/scripts/smoke/context-packet.mjs +43 -43
  59. package/scripts/smoke/control-room-ux-redesign.mjs +91 -91
  60. package/scripts/smoke/daemon-entrypoint.mjs +20 -20
  61. package/scripts/smoke/default-landing-routing.mjs +33 -33
  62. package/scripts/smoke/desktop-native-notifications.mjs +30 -30
  63. package/scripts/smoke/desktop-tray-icon.mjs +33 -33
  64. package/scripts/smoke/discord-release-workflow.mjs +24 -24
  65. package/scripts/smoke/git-install-update.mjs +255 -255
  66. package/scripts/smoke/handoff-artifact-protocol.mjs +50 -50
  67. package/scripts/smoke/live-view-diagnostics.mjs +53 -53
  68. package/scripts/smoke/live-view-environment.mjs +92 -92
  69. package/scripts/smoke/live-view-integration.mjs +450 -450
  70. package/scripts/smoke/mac-desktop-runtime.mjs +37 -37
  71. package/scripts/smoke/mobile-tunnel-guidance.mjs +29 -29
  72. package/scripts/smoke/mobile-ux.mjs +76 -76
  73. package/scripts/smoke/model-registry.mjs +36 -36
  74. package/scripts/smoke/multi-project-ui.mjs +45 -45
  75. package/scripts/smoke/multi-worker-slots.mjs +42 -42
  76. package/scripts/smoke/notification-center.mjs +87 -87
  77. package/scripts/smoke/notification-inapp-preference.mjs +23 -23
  78. package/scripts/smoke/notification-taxonomy.mjs +58 -58
  79. package/scripts/smoke/orchestration-api.mjs +172 -172
  80. package/scripts/smoke/orchestration-execution-dashboard.mjs +33 -33
  81. package/scripts/smoke/orchestration-live-run.mjs +176 -176
  82. package/scripts/smoke/orchestration-mobile-scroll.mjs +29 -29
  83. package/scripts/smoke/orchestration-model-sync.mjs +30 -30
  84. package/scripts/smoke/orchestration-permission-fallback.mjs +34 -34
  85. package/scripts/smoke/orchestration-runtime-guards.mjs +48 -48
  86. package/scripts/smoke/orchestration-user-facing-output.mjs +25 -25
  87. package/scripts/smoke/permission-policy.mjs +50 -50
  88. package/scripts/smoke/pixcode-workbench-1-48.mjs +167 -167
  89. package/scripts/smoke/provider-models-opencode-live.mjs +66 -66
  90. package/scripts/smoke/provider-rest-api.mjs +124 -124
  91. package/scripts/smoke/provider-selection-status.mjs +52 -52
  92. package/scripts/smoke/run-state-refresh.mjs +52 -52
  93. package/scripts/smoke/runtime-manager.mjs +99 -99
  94. package/scripts/smoke/shell-manual-disconnect.mjs +30 -30
  95. package/scripts/smoke/side-panel-editor-layout.mjs +34 -34
  96. package/scripts/smoke/static-root-routing.mjs +21 -21
  97. package/scripts/smoke/strict-handoff-compact.mjs +60 -60
  98. package/scripts/smoke/taskmaster-config.mjs +24 -24
  99. package/scripts/smoke/taskmaster-execution-telegram.mjs +3 -3
  100. package/scripts/smoke/taskmaster-onboarding.mjs +3 -3
  101. package/scripts/smoke/taskmaster-run-graph.mjs +3 -3
  102. package/scripts/smoke/telegram-control.mjs +331 -331
  103. package/scripts/smoke/tunnel-persistence.mjs +56 -56
  104. package/scripts/smoke/update-issue-progress.mjs +69 -69
  105. package/scripts/smoke/update-ux.mjs +55 -55
  106. package/scripts/smoke/v138-completion.mjs +132 -132
  107. package/scripts/smoke/v138-desktop-release-hardening.mjs +69 -69
  108. package/scripts/smoke/v138-diagnostics.mjs +63 -63
  109. package/scripts/smoke/v138-issue-planner.mjs +33 -33
  110. package/scripts/smoke/v143-remote-control.mjs +76 -76
  111. package/scripts/smoke/v144-production-loop.mjs +47 -47
  112. package/scripts/smoke/v145-platformization.mjs +46 -46
  113. package/scripts/smoke/v146-control-room-ui.mjs +150 -150
  114. package/scripts/smoke/version-modal-autoshow.mjs +29 -29
  115. package/scripts/smoke/vscode-workbench-layout.mjs +63 -63
  116. package/scripts/smoke/vscode-workbench-polish.mjs +461 -461
  117. package/scripts/smoke/workflow-fallback-replay.mjs +56 -56
  118. package/scripts/smoke/workflow-templates.mjs +43 -43
  119. package/scripts/smoke/workflow-trace-timeline.mjs +46 -46
  120. package/scripts/update-git-install.mjs +298 -298
  121. package/server/claude-sdk.js +927 -927
  122. package/server/cli.js +1106 -1106
  123. package/server/constants/config.js +4 -4
  124. package/server/cursor-cli.js +344 -344
  125. package/server/daemon/manager.js +563 -563
  126. package/server/daemon-manager.js +964 -964
  127. package/server/database/db.js +988 -988
  128. package/server/database/json-store.js +197 -197
  129. package/server/gemini-cli.js +550 -550
  130. package/server/gemini-response-handler.js +79 -79
  131. package/server/index.js +5671 -5671
  132. package/server/load-env.js +35 -35
  133. package/server/middleware/account-lockout.js +112 -112
  134. package/server/middleware/auth.js +277 -277
  135. package/server/middleware/rate-limiter.js +87 -87
  136. package/server/modules/orchestration/a2a/adapter-registry.ts +108 -108
  137. package/server/modules/orchestration/a2a/adapters/abstract-a2a.adapter.ts +63 -63
  138. package/server/modules/orchestration/a2a/adapters/claude-code.adapter.ts +286 -286
  139. package/server/modules/orchestration/a2a/adapters/codex.adapter.ts +244 -244
  140. package/server/modules/orchestration/a2a/adapters/cursor.adapter.ts +249 -249
  141. package/server/modules/orchestration/a2a/adapters/gemini.adapter.ts +248 -248
  142. package/server/modules/orchestration/a2a/adapters/json-event.adapter.test.ts +60 -60
  143. package/server/modules/orchestration/a2a/adapters/json-event.adapter.ts +101 -101
  144. package/server/modules/orchestration/a2a/adapters/opencode.adapter.ts +248 -248
  145. package/server/modules/orchestration/a2a/adapters/qwen.adapter.ts +248 -248
  146. package/server/modules/orchestration/a2a/agent-card.ts +55 -55
  147. package/server/modules/orchestration/a2a/auth.middleware.ts +29 -29
  148. package/server/modules/orchestration/a2a/bus.ts +46 -46
  149. package/server/modules/orchestration/a2a/routes.ts +586 -586
  150. package/server/modules/orchestration/a2a/task-dispatcher.ts +345 -345
  151. package/server/modules/orchestration/a2a/task-store.ts +178 -178
  152. package/server/modules/orchestration/a2a/types.ts +126 -126
  153. package/server/modules/orchestration/a2a/validator.ts +113 -113
  154. package/server/modules/orchestration/index.ts +99 -99
  155. package/server/modules/orchestration/preview/port-watcher.ts +112 -112
  156. package/server/modules/orchestration/preview/preview-proxy.ts +60 -60
  157. package/server/modules/orchestration/preview/types.ts +19 -19
  158. package/server/modules/orchestration/security/permission-policy.ts +401 -401
  159. package/server/modules/orchestration/tasks/orchestration-task-store.ts +41 -41
  160. package/server/modules/orchestration/tasks/orchestration-task.routes.ts +81 -81
  161. package/server/modules/orchestration/tasks/orchestration-task.service.ts +201 -201
  162. package/server/modules/orchestration/tasks/orchestration-task.types.ts +40 -40
  163. package/server/modules/orchestration/tasks/task-run-graph.ts +155 -155
  164. package/server/modules/orchestration/workflows/approval-queue.ts +106 -106
  165. package/server/modules/orchestration/workflows/built-in-workflows.ts +127 -127
  166. package/server/modules/orchestration/workflows/context-packet.ts +186 -186
  167. package/server/modules/orchestration/workflows/handoff-artifact.ts +175 -175
  168. package/server/modules/orchestration/workflows/workflow-fallback-policy.ts +161 -161
  169. package/server/modules/orchestration/workflows/workflow-replay.ts +254 -254
  170. package/server/modules/orchestration/workflows/workflow-runner.ts +2062 -2062
  171. package/server/modules/orchestration/workflows/workflow-store.ts +97 -97
  172. package/server/modules/orchestration/workflows/workflow-templates.ts +272 -272
  173. package/server/modules/orchestration/workflows/workflow-trace.ts +424 -424
  174. package/server/modules/orchestration/workflows/workflow.routes.ts +586 -586
  175. package/server/modules/orchestration/workflows/workflow.types.ts +111 -111
  176. package/server/modules/orchestration/workflows/workspace-target.ts +122 -122
  177. package/server/modules/orchestration/workspace/docker-workspace.ts +136 -136
  178. package/server/modules/orchestration/workspace/path-safety.ts +55 -55
  179. package/server/modules/orchestration/workspace/types.ts +52 -52
  180. package/server/modules/orchestration/workspace/workspace-manager.ts +102 -102
  181. package/server/modules/orchestration/workspace/worktree-workspace.ts +126 -126
  182. package/server/modules/providers/index.ts +2 -2
  183. package/server/modules/providers/list/claude/claude-auth.provider.ts +146 -146
  184. package/server/modules/providers/list/claude/claude-mcp.provider.ts +135 -135
  185. package/server/modules/providers/list/claude/claude-sessions.provider.ts +306 -306
  186. package/server/modules/providers/list/claude/claude.provider.ts +15 -15
  187. package/server/modules/providers/list/codex/codex-auth.provider.ts +117 -117
  188. package/server/modules/providers/list/codex/codex-mcp.provider.ts +135 -135
  189. package/server/modules/providers/list/codex/codex-sessions.provider.ts +319 -319
  190. package/server/modules/providers/list/codex/codex.provider.ts +15 -15
  191. package/server/modules/providers/list/cursor/cursor-auth.provider.ts +147 -147
  192. package/server/modules/providers/list/cursor/cursor-mcp.provider.ts +108 -108
  193. package/server/modules/providers/list/cursor/cursor-sessions.provider.ts +421 -421
  194. package/server/modules/providers/list/cursor/cursor.provider.ts +15 -15
  195. package/server/modules/providers/list/gemini/gemini-auth.provider.ts +173 -173
  196. package/server/modules/providers/list/gemini/gemini-mcp.provider.ts +110 -110
  197. package/server/modules/providers/list/gemini/gemini-sessions.provider.ts +227 -227
  198. package/server/modules/providers/list/gemini/gemini.provider.ts +15 -15
  199. package/server/modules/providers/list/opencode/opencode-auth.provider.ts +131 -131
  200. package/server/modules/providers/list/opencode/opencode-sessions.provider.ts +286 -286
  201. package/server/modules/providers/list/qwen/qwen-auth.provider.ts +146 -146
  202. package/server/modules/providers/list/qwen/qwen-sessions.provider.ts +265 -265
  203. package/server/modules/providers/provider.registry.ts +40 -40
  204. package/server/modules/providers/provider.routes.ts +982 -982
  205. package/server/modules/providers/services/mcp.service.ts +86 -86
  206. package/server/modules/providers/services/provider-auth.service.ts +26 -26
  207. package/server/modules/providers/services/sessions.service.ts +45 -45
  208. package/server/modules/providers/shared/base/abstract.provider.ts +20 -20
  209. package/server/modules/providers/shared/mcp/mcp.provider.ts +151 -151
  210. package/server/modules/providers/tests/mcp.test.ts +293 -293
  211. package/server/openai-codex.js +468 -468
  212. package/server/opencode-cli.js +491 -491
  213. package/server/opencode-response-handler.js +111 -111
  214. package/server/projects.js +3135 -3135
  215. package/server/qwen-code-cli.js +410 -410
  216. package/server/routes/agent.js +1462 -1462
  217. package/server/routes/auth.js +298 -298
  218. package/server/routes/codex.js +20 -20
  219. package/server/routes/commands.js +581 -581
  220. package/server/routes/cursor.js +61 -61
  221. package/server/routes/diagnostics.js +44 -44
  222. package/server/routes/gemini.js +25 -25
  223. package/server/routes/git.js +1822 -1822
  224. package/server/routes/live-view.js +434 -434
  225. package/server/routes/mcp-utils.js +13 -13
  226. package/server/routes/messages.js +97 -97
  227. package/server/routes/network.js +143 -143
  228. package/server/routes/platformization.js +231 -231
  229. package/server/routes/plugins.js +690 -690
  230. package/server/routes/production-agent-loop.js +90 -90
  231. package/server/routes/projects.js +918 -918
  232. package/server/routes/public-api.js +34 -34
  233. package/server/routes/qwen.js +27 -27
  234. package/server/routes/remote.js +56 -56
  235. package/server/routes/settings.js +321 -321
  236. package/server/routes/telegram.js +163 -163
  237. package/server/routes/user.js +125 -125
  238. package/server/routes/webhooks.js +63 -63
  239. package/server/services/control-room.js +102 -102
  240. package/server/services/diagnostics.js +165 -165
  241. package/server/services/external-access.js +403 -403
  242. package/server/services/install-jobs.js +715 -715
  243. package/server/services/live-view.js +956 -956
  244. package/server/services/managed-runtimes.js +493 -493
  245. package/server/services/model-registry.js +144 -144
  246. package/server/services/notification-orchestrator.js +365 -365
  247. package/server/services/notification-taxonomy.js +204 -204
  248. package/server/services/platformization.js +1052 -1052
  249. package/server/services/production-agent-loop.js +248 -248
  250. package/server/services/provider-cli-versions.js +149 -149
  251. package/server/services/provider-credentials.js +189 -189
  252. package/server/services/provider-models.js +396 -396
  253. package/server/services/public-api-manifest.js +181 -181
  254. package/server/services/qr-login.js +126 -126
  255. package/server/services/remote-connection.js +127 -127
  256. package/server/services/runtime-manager.js +323 -323
  257. package/server/services/startup-update.js +259 -259
  258. package/server/services/telegram/bot.js +393 -393
  259. package/server/services/telegram/control-center.js +2453 -2453
  260. package/server/services/telegram/telegram-gateway.js +314 -314
  261. package/server/services/telegram/telegram-http-client.js +201 -201
  262. package/server/services/telegram/translations.js +470 -470
  263. package/server/services/webhooks.js +216 -216
  264. package/server/sessionManager.js +225 -225
  265. package/server/setup-wizard.js +283 -283
  266. package/server/shared/interfaces.ts +54 -54
  267. package/server/shared/types.ts +172 -172
  268. package/server/shared/utils.ts +193 -193
  269. package/server/tsconfig.json +36 -36
  270. package/server/utils/colors.js +21 -21
  271. package/server/utils/commandParser.js +305 -305
  272. package/server/utils/frontmatter.js +18 -18
  273. package/server/utils/gitConfig.js +34 -34
  274. package/server/utils/plugin-loader.js +461 -461
  275. package/server/utils/plugin-process-manager.js +185 -185
  276. package/server/utils/port-access.js +227 -227
  277. package/server/utils/runtime-paths.js +37 -37
  278. package/server/utils/security-log.js +84 -84
  279. package/server/utils/url-detection.js +71 -71
  280. package/server/vite-daemon.js +79 -79
  281. package/shared/modelConstants.js +161 -161
  282. package/shared/networkHosts.js +22 -22
@@ -1,133 +1,133 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="utf-8" />
5
- <meta name="viewport" content="width=device-width, initial-scale=1" />
6
- <title>Pixcode Features - Claude Code, Codex, Cursor, Gemini, Qwen and OpenCode UI</title>
7
- <meta
8
- name="description"
9
- content="Pixcode feature overview: multi-CLI chat, files, shell, Git source control, changed file tracking, orchestration, provider models, API keys, Telegram notifications, MCP, plugins, themes, desktop installers, and Linux daemon mode."
10
- />
11
- <meta
12
- name="keywords"
13
- content="Pixcode features, Claude Code UI features, OpenAI Codex web UI, Cursor CLI dashboard, Gemini CLI web UI, OpenCode dashboard, Qwen Code UI, AI coding agent features, self-hosted AI developer tool"
14
- />
15
- <meta name="robots" content="index,follow,max-image-preview:large,max-snippet:-1" />
16
- <link rel="canonical" href="https://alicomert.github.io/pixcode/features.html" />
17
- <link rel="icon" href="favicon.png" />
18
- <link rel="stylesheet" href="site.css" />
19
- </head>
20
- <body>
21
- <nav class="site-nav" aria-label="Main navigation">
22
- <a class="brand" href="landing.html">
23
- <img src="logo.png" alt="" />
24
- <span>Pixcode</span>
25
- </a>
26
- <div class="nav-links">
27
- <a href="docs.html">Documentation</a>
28
- <a href="features.html">Features</a>
29
- <a href="orchestration.html">Orchestration</a>
30
- <a href="api-automation.html">API</a>
31
- <a href="https://github.com/alicomert/pixcode">GitHub</a>
32
- </div>
33
- </nav>
34
-
35
- <header class="hero docs-hero">
36
- <div>
37
- <div class="eyebrow">Feature map</div>
38
- <h1>Everything Pixcode brings into one workspace.</h1>
39
- <p class="lead">
40
- Pixcode combines AI coding CLIs, chat, file control, shell access, source control, orchestration, API automation, notifications, Telegram, MCP, plugins, themes, and desktop/server deployment.
41
- </p>
42
- </div>
43
- <div class="hero-summary">
44
- <strong>Product promise</strong>
45
- <p>
46
- Run agents, watch files, inspect commands, plan tasks, and automate the whole workspace without leaving your own machine.
47
- </p>
48
- <div class="chips tight">
49
- <span class="chip">Self-hosted</span>
50
- <span class="chip">API-first</span>
51
- <span class="chip">Task-aware</span>
52
- <span class="chip">Provider-neutral</span>
53
- </div>
54
- </div>
55
- </header>
56
-
57
- <main>
58
- <section class="section">
59
- <h2>Provider and model control</h2>
60
- <p class="sublead">
61
- Pixcode is provider-neutral at the UI level. Use the provider that fits the task, then keep auth, model selection, and session management in one place.
62
- </p>
63
- <div class="grid three">
64
- <div class="card"><strong>Claude Code</strong><p>Use Claude Code sessions, tool output, notifications, and MCP-aware workflows from the Pixcode interface.</p></div>
65
- <div class="card"><strong>OpenAI Codex</strong><p>Run Codex-backed coding tasks, reviews, and one-shot automation through chat or REST API.</p></div>
66
- <div class="card"><strong>Cursor CLI</strong><p>Bring Cursor CLI into the same project workspace as the rest of your providers.</p></div>
67
- <div class="card"><strong>Gemini CLI</strong><p>Use Gemini CLI for Google model workflows without leaving Pixcode.</p></div>
68
- <div class="card"><strong>Qwen Code</strong><p>Manage Qwen-based coding sessions alongside other agents.</p></div>
69
- <div class="card"><strong>OpenCode</strong><p>Select OpenCode models and use OpenCode as a first-class worker in orchestration.</p></div>
70
- </div>
71
- </section>
72
-
73
- <section class="section alt">
74
- <h2>Workspace features</h2>
75
- <div class="grid three">
76
- <div class="card"><strong>Chat and sessions</strong><p>Project-aware sessions, provider selection, mode handling, slash command support, and structured tool rendering.</p></div>
77
- <div class="card"><strong>Fixed prompt composer</strong><p>The main input stays at the bottom of chat/project views so the screen behaves like a real messaging workspace.</p></div>
78
- <div class="card"><strong>Processing visibility</strong><p>The UI is designed to show when an agent is thinking, running, waiting, or returning output.</p></div>
79
- <div class="card"><strong>Files panel</strong><p>Browse, open, edit, upload, rename, delete, and inspect files without leaving the agent workflow.</p></div>
80
- <div class="card"><strong>Shell panel</strong><p>Open the project shell as split view or full view on desktop; use mobile-safe panel behavior on small screens.</p></div>
81
- <div class="card"><strong>Source Control</strong><p>Review Git status, changed files, diffs, branches, commits, and repository actions.</p></div>
82
- </div>
83
- </section>
84
-
85
- <section class="section warm">
86
- <h2>Control and automation features</h2>
87
- <div class="grid two">
88
- <div class="panel">
89
- <h3>Changed files Command Center</h3>
90
- <p>Tracks local working-tree changes, highlights newly edited files, and opens relevant paths so users can see what an agent changed immediately.</p>
91
- </div>
92
- <div class="panel">
93
- <h3>Multi-agent orchestration</h3>
94
- <p>Coordinates multiple agents with roles, labels, instructions, model choices, fallback providers, workflow previews, streaming events, and cancellation.</p>
95
- </div>
96
- <div class="panel">
97
- <h3>API access</h3>
98
- <p>External automation can use `px_` API keys for project access, agent runs, orchestration preview/run flows, and integration scripts.</p>
99
- </div>
100
- <div class="panel">
101
- <h3>Notifications</h3>
102
- <p>Browser push and Telegram notifications help long-running sessions report completion, failure, or action-required states.</p>
103
- </div>
104
- <div class="panel">
105
- <h3>Orchestration</h3>
106
- <p>Pixcode coordinates background workflow, review, and verification tasks through project-aware CLI adapters.</p>
107
- </div>
108
- <div class="panel">
109
- <h3>Open-source readiness</h3>
110
- <p>The repository ships with README, LICENSE, contributing guide, code of conduct, security policy, issue templates, releases, screenshots, and static docs.</p>
111
- </div>
112
- </div>
113
- </section>
114
-
115
- <section class="section">
116
- <h2>Designed for real working loops.</h2>
117
- <p class="sublead">
118
- Pixcode is useful because the pieces talk to each other. A prompt can create file changes, the Command Center can show them, Source Control can review them, orchestration can hand work to another agent, and the API can automate the same flow.
119
- </p>
120
- <div class="flow-list">
121
- <div><strong>Prompt</strong><span>Send work to the provider that fits the task.</span></div>
122
- <div><strong>Observe</strong><span>See processing state, tool output, shell output, changed files, and orchestration steps.</span></div>
123
- <div><strong>Review</strong><span>Open changed files, inspect diffs, compare agent reports, and decide what ships.</span></div>
124
- <div><strong>Automate</strong><span>Use px_ API keys, Telegram, and orchestration workflows to keep work moving outside the browser.</span></div>
125
- </div>
126
- </section>
127
- </main>
128
-
129
- <footer class="footer">
130
- <strong>Pixcode features</strong> · <a href="docs.html">Documentation</a> · <a href="orchestration.html">Orchestration</a> · <a href="api-automation.html">API</a>
131
- </footer>
132
- </body>
133
- </html>
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="utf-8" />
5
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
6
+ <title>Pixcode Features - Claude Code, Codex, Cursor, Gemini, Qwen and OpenCode UI</title>
7
+ <meta
8
+ name="description"
9
+ content="Pixcode feature overview: multi-CLI chat, files, shell, Git source control, changed file tracking, orchestration, provider models, API keys, Telegram notifications, MCP, plugins, themes, desktop installers, and Linux daemon mode."
10
+ />
11
+ <meta
12
+ name="keywords"
13
+ content="Pixcode features, Claude Code UI features, OpenAI Codex web UI, Cursor CLI dashboard, Gemini CLI web UI, OpenCode dashboard, Qwen Code UI, AI coding agent features, self-hosted AI developer tool"
14
+ />
15
+ <meta name="robots" content="index,follow,max-image-preview:large,max-snippet:-1" />
16
+ <link rel="canonical" href="https://alicomert.github.io/pixcode/features.html" />
17
+ <link rel="icon" href="favicon.png" />
18
+ <link rel="stylesheet" href="site.css" />
19
+ </head>
20
+ <body>
21
+ <nav class="site-nav" aria-label="Main navigation">
22
+ <a class="brand" href="landing.html">
23
+ <img src="logo.png" alt="" />
24
+ <span>Pixcode</span>
25
+ </a>
26
+ <div class="nav-links">
27
+ <a href="docs.html">Documentation</a>
28
+ <a href="features.html">Features</a>
29
+ <a href="orchestration.html">Orchestration</a>
30
+ <a href="api-automation.html">API</a>
31
+ <a href="https://github.com/alicomert/pixcode">GitHub</a>
32
+ </div>
33
+ </nav>
34
+
35
+ <header class="hero docs-hero">
36
+ <div>
37
+ <div class="eyebrow">Feature map</div>
38
+ <h1>Everything Pixcode brings into one workspace.</h1>
39
+ <p class="lead">
40
+ Pixcode combines AI coding CLIs, chat, file control, shell access, source control, orchestration, API automation, notifications, Telegram, MCP, plugins, themes, and desktop/server deployment.
41
+ </p>
42
+ </div>
43
+ <div class="hero-summary">
44
+ <strong>Product promise</strong>
45
+ <p>
46
+ Run agents, watch files, inspect commands, plan tasks, and automate the whole workspace without leaving your own machine.
47
+ </p>
48
+ <div class="chips tight">
49
+ <span class="chip">Self-hosted</span>
50
+ <span class="chip">API-first</span>
51
+ <span class="chip">Task-aware</span>
52
+ <span class="chip">Provider-neutral</span>
53
+ </div>
54
+ </div>
55
+ </header>
56
+
57
+ <main>
58
+ <section class="section">
59
+ <h2>Provider and model control</h2>
60
+ <p class="sublead">
61
+ Pixcode is provider-neutral at the UI level. Use the provider that fits the task, then keep auth, model selection, and session management in one place.
62
+ </p>
63
+ <div class="grid three">
64
+ <div class="card"><strong>Claude Code</strong><p>Use Claude Code sessions, tool output, notifications, and MCP-aware workflows from the Pixcode interface.</p></div>
65
+ <div class="card"><strong>OpenAI Codex</strong><p>Run Codex-backed coding tasks, reviews, and one-shot automation through chat or REST API.</p></div>
66
+ <div class="card"><strong>Cursor CLI</strong><p>Bring Cursor CLI into the same project workspace as the rest of your providers.</p></div>
67
+ <div class="card"><strong>Gemini CLI</strong><p>Use Gemini CLI for Google model workflows without leaving Pixcode.</p></div>
68
+ <div class="card"><strong>Qwen Code</strong><p>Manage Qwen-based coding sessions alongside other agents.</p></div>
69
+ <div class="card"><strong>OpenCode</strong><p>Select OpenCode models and use OpenCode as a first-class worker in orchestration.</p></div>
70
+ </div>
71
+ </section>
72
+
73
+ <section class="section alt">
74
+ <h2>Workspace features</h2>
75
+ <div class="grid three">
76
+ <div class="card"><strong>Chat and sessions</strong><p>Project-aware sessions, provider selection, mode handling, slash command support, and structured tool rendering.</p></div>
77
+ <div class="card"><strong>Fixed prompt composer</strong><p>The main input stays at the bottom of chat/project views so the screen behaves like a real messaging workspace.</p></div>
78
+ <div class="card"><strong>Processing visibility</strong><p>The UI is designed to show when an agent is thinking, running, waiting, or returning output.</p></div>
79
+ <div class="card"><strong>Files panel</strong><p>Browse, open, edit, upload, rename, delete, and inspect files without leaving the agent workflow.</p></div>
80
+ <div class="card"><strong>Shell panel</strong><p>Open the project shell as split view or full view on desktop; use mobile-safe panel behavior on small screens.</p></div>
81
+ <div class="card"><strong>Source Control</strong><p>Review Git status, changed files, diffs, branches, commits, and repository actions.</p></div>
82
+ </div>
83
+ </section>
84
+
85
+ <section class="section warm">
86
+ <h2>Control and automation features</h2>
87
+ <div class="grid two">
88
+ <div class="panel">
89
+ <h3>Changed files Command Center</h3>
90
+ <p>Tracks local working-tree changes, highlights newly edited files, and opens relevant paths so users can see what an agent changed immediately.</p>
91
+ </div>
92
+ <div class="panel">
93
+ <h3>Multi-agent orchestration</h3>
94
+ <p>Coordinates multiple agents with roles, labels, instructions, model choices, fallback providers, workflow previews, streaming events, and cancellation.</p>
95
+ </div>
96
+ <div class="panel">
97
+ <h3>API access</h3>
98
+ <p>External automation can use `px_` API keys for project access, agent runs, orchestration preview/run flows, and integration scripts.</p>
99
+ </div>
100
+ <div class="panel">
101
+ <h3>Notifications</h3>
102
+ <p>Browser push and Telegram notifications help long-running sessions report completion, failure, or action-required states.</p>
103
+ </div>
104
+ <div class="panel">
105
+ <h3>Orchestration</h3>
106
+ <p>Pixcode coordinates background workflow, review, and verification tasks through project-aware CLI adapters.</p>
107
+ </div>
108
+ <div class="panel">
109
+ <h3>Open-source readiness</h3>
110
+ <p>The repository ships with README, LICENSE, contributing guide, code of conduct, security policy, issue templates, releases, screenshots, and static docs.</p>
111
+ </div>
112
+ </div>
113
+ </section>
114
+
115
+ <section class="section">
116
+ <h2>Designed for real working loops.</h2>
117
+ <p class="sublead">
118
+ Pixcode is useful because the pieces talk to each other. A prompt can create file changes, the Command Center can show them, Source Control can review them, orchestration can hand work to another agent, and the API can automate the same flow.
119
+ </p>
120
+ <div class="flow-list">
121
+ <div><strong>Prompt</strong><span>Send work to the provider that fits the task.</span></div>
122
+ <div><strong>Observe</strong><span>See processing state, tool output, shell output, changed files, and orchestration steps.</span></div>
123
+ <div><strong>Review</strong><span>Open changed files, inspect diffs, compare agent reports, and decide what ships.</span></div>
124
+ <div><strong>Automate</strong><span>Use px_ API keys, Telegram, and orchestration workflows to keep work moving outside the browser.</span></div>
125
+ </div>
126
+ </section>
127
+ </main>
128
+
129
+ <footer class="footer">
130
+ <strong>Pixcode features</strong> · <a href="docs.html">Documentation</a> · <a href="orchestration.html">Orchestration</a> · <a href="api-automation.html">API</a>
131
+ </footer>
132
+ </body>
133
+ </html>
@@ -1,49 +1,49 @@
1
- const fs = require('fs');
2
- const path = require('path');
3
-
4
- // Icon sizes needed
5
- const sizes = [72, 96, 128, 144, 152, 192, 384, 512];
6
-
7
- // SVG template function
8
- function createIconSVG(size) {
9
- const cornerRadius = Math.round(size * 0.25); // 25% corner radius
10
- const strokeWidth = Math.max(2, Math.round(size * 0.06)); // Scale stroke width
11
-
12
- // MessageSquare path scaled to size
13
- const padding = Math.round(size * 0.25);
14
- const iconSize = size - (padding * 2);
15
- const startX = padding;
16
- const startY = Math.round(padding * 0.7);
17
- const endX = startX + iconSize;
18
- const endY = startY + Math.round(iconSize * 0.6);
19
- const tailX = startX;
20
- const tailY = endY + Math.round(iconSize * 0.3);
21
-
22
- return `<svg width="${size}" height="${size}" viewBox="0 0 ${size} ${size}" fill="none" xmlns="http://www.w3.org/2000/svg">
23
- <!-- Background with rounded corners -->
24
- <rect width="${size}" height="${size}" rx="${cornerRadius}" fill="hsl(262.1 83.3% 57.8%)"/>
25
-
26
- <!-- MessageSquare icon -->
27
- <path d="M${startX} ${startY}C${startX} ${startY - 10} ${startX + 10} ${startY - 20} ${startX + 20} ${startY - 20}H${endX - 20}C${endX - 10} ${startY - 20} ${endX} ${startY - 10} ${endX} ${startY}V${endY - 20}C${endX} ${endY - 10} ${endX - 10} ${endY} ${endX - 20} ${endY}H${startX + Math.round(iconSize * 0.4)}L${tailX} ${tailY}V${startY}Z"
28
- stroke="white"
29
- stroke-width="${strokeWidth}"
30
- stroke-linecap="round"
31
- stroke-linejoin="round"
32
- fill="none"/>
33
- </svg>`;
34
- }
35
-
36
- // Generate SVG files for each size
37
- sizes.forEach(size => {
38
- const svgContent = createIconSVG(size);
39
- const filename = `icon-${size}x${size}.svg`;
40
- const filepath = path.join(__dirname, 'icons', filename);
41
-
42
- fs.writeFileSync(filepath, svgContent);
43
- console.log(`Created ${filename}`);
44
- });
45
-
46
- console.log('\nSVG icons created! To convert to PNG, you can use:');
47
- console.log('1. Online converter like cloudconvert.com');
48
- console.log('2. If you have ImageMagick: convert icon.svg icon.png');
1
+ const fs = require('fs');
2
+ const path = require('path');
3
+
4
+ // Icon sizes needed
5
+ const sizes = [72, 96, 128, 144, 152, 192, 384, 512];
6
+
7
+ // SVG template function
8
+ function createIconSVG(size) {
9
+ const cornerRadius = Math.round(size * 0.25); // 25% corner radius
10
+ const strokeWidth = Math.max(2, Math.round(size * 0.06)); // Scale stroke width
11
+
12
+ // MessageSquare path scaled to size
13
+ const padding = Math.round(size * 0.25);
14
+ const iconSize = size - (padding * 2);
15
+ const startX = padding;
16
+ const startY = Math.round(padding * 0.7);
17
+ const endX = startX + iconSize;
18
+ const endY = startY + Math.round(iconSize * 0.6);
19
+ const tailX = startX;
20
+ const tailY = endY + Math.round(iconSize * 0.3);
21
+
22
+ return `<svg width="${size}" height="${size}" viewBox="0 0 ${size} ${size}" fill="none" xmlns="http://www.w3.org/2000/svg">
23
+ <!-- Background with rounded corners -->
24
+ <rect width="${size}" height="${size}" rx="${cornerRadius}" fill="hsl(262.1 83.3% 57.8%)"/>
25
+
26
+ <!-- MessageSquare icon -->
27
+ <path d="M${startX} ${startY}C${startX} ${startY - 10} ${startX + 10} ${startY - 20} ${startX + 20} ${startY - 20}H${endX - 20}C${endX - 10} ${startY - 20} ${endX} ${startY - 10} ${endX} ${startY}V${endY - 20}C${endX} ${endY - 10} ${endX - 10} ${endY} ${endX - 20} ${endY}H${startX + Math.round(iconSize * 0.4)}L${tailX} ${tailY}V${startY}Z"
28
+ stroke="white"
29
+ stroke-width="${strokeWidth}"
30
+ stroke-linecap="round"
31
+ stroke-linejoin="round"
32
+ fill="none"/>
33
+ </svg>`;
34
+ }
35
+
36
+ // Generate SVG files for each size
37
+ sizes.forEach(size => {
38
+ const svgContent = createIconSVG(size);
39
+ const filename = `icon-${size}x${size}.svg`;
40
+ const filepath = path.join(__dirname, 'icons', filename);
41
+
42
+ fs.writeFileSync(filepath, svgContent);
43
+ console.log(`Created ${filename}`);
44
+ });
45
+
46
+ console.log('\nSVG icons created! To convert to PNG, you can use:');
47
+ console.log('1. Online converter like cloudconvert.com');
48
+ console.log('2. If you have ImageMagick: convert icon.svg icon.png');
49
49
  console.log('3. If you have Inkscape: inkscape --export-type=png icon.svg');
package/dist/humans.txt CHANGED
@@ -1,15 +1,15 @@
1
- Pixcode
2
-
3
- Site: https://github.com/alicomert/pixcode
4
- npm: https://www.npmjs.com/package/@pixelbyte-software/pixcode
5
- Purpose: self-hosted AI coding agent control room for Claude Code, Cursor CLI, OpenAI Codex, Gemini CLI, Qwen Code, and OpenCode.
6
-
7
- Generated documentation files:
8
- - landing.html
9
- - docs.html
10
- - features.html
11
- - orchestration.html
12
- - api-automation.html
13
- - llms.txt
14
- - llms-full.txt
15
- - openapi.yaml
1
+ Pixcode
2
+
3
+ Site: https://github.com/alicomert/pixcode
4
+ npm: https://www.npmjs.com/package/@pixelbyte-software/pixcode
5
+ Purpose: self-hosted AI coding agent control room for Claude Code, Cursor CLI, OpenAI Codex, Gemini CLI, Qwen Code, and OpenCode.
6
+
7
+ Generated documentation files:
8
+ - landing.html
9
+ - docs.html
10
+ - features.html
11
+ - orchestration.html
12
+ - api-automation.html
13
+ - llms.txt
14
+ - llms-full.txt
15
+ - openapi.yaml
@@ -1,3 +1,3 @@
1
- <svg viewBox="100 100 520 520" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M304.246 295.411V249.828C304.246 245.989 305.687 243.109 309.044 241.191L400.692 188.412C413.167 181.215 428.042 177.858 443.394 177.858C500.971 177.858 537.44 222.482 537.44 269.982C537.44 273.34 537.44 277.179 536.959 281.018L441.954 225.358C436.197 222 430.437 222 424.68 225.358L304.246 295.411ZM518.245 472.945V364.024C518.245 357.304 515.364 352.507 509.608 349.149L389.174 279.096L428.519 256.543C431.877 254.626 434.757 254.626 438.115 256.543L529.762 309.323C556.154 324.679 573.905 357.304 573.905 388.971C573.905 425.436 552.315 459.024 518.245 472.941V472.945ZM275.937 376.982L236.592 353.952C233.235 352.034 231.794 349.154 231.794 345.315V239.756C231.794 188.416 271.139 149.548 324.4 149.548C344.555 149.548 363.264 156.268 379.102 168.262L284.578 222.964C278.822 226.321 275.942 231.119 275.942 237.838V376.986L275.937 376.982ZM360.626 425.922L304.246 394.255V327.083L360.626 295.416L417.002 327.083V394.255L360.626 425.922ZM396.852 571.789C376.698 571.789 357.989 565.07 342.151 553.075L436.674 498.374C442.431 495.017 445.311 490.219 445.311 483.499V344.352L485.138 367.382C488.495 369.299 489.936 372.179 489.936 376.018V481.577C489.936 532.917 450.109 571.785 396.852 571.785V571.789ZM283.134 464.79L191.486 412.01C165.094 396.654 147.343 364.029 147.343 332.362C147.343 295.416 169.415 262.309 203.48 248.393V357.791C203.48 364.51 206.361 369.308 212.117 372.665L332.074 442.237L292.729 464.79C289.372 466.707 286.491 466.707 283.134 464.79ZM277.859 543.48C223.639 543.48 183.813 502.695 183.813 452.314C183.813 448.475 184.294 444.636 184.771 440.797L279.295 495.498C285.051 498.856 290.812 498.856 296.568 495.498L417.002 425.927V471.509C417.002 475.349 415.562 478.229 412.204 480.146L320.557 532.926C308.081 540.122 293.206 543.48 277.854 543.48H277.859ZM396.852 600.576C454.911 600.576 503.37 559.313 514.41 504.612C568.149 490.696 602.696 440.315 602.696 388.976C602.696 355.387 588.303 322.762 562.392 299.25C564.791 289.173 566.231 279.096 566.231 269.024C566.231 200.411 510.571 149.067 446.274 149.067C433.322 149.067 420.846 150.984 408.37 155.305C386.775 134.192 357.026 120.758 324.4 120.758C266.342 120.758 217.883 162.02 206.843 216.721C153.104 230.637 118.557 281.018 118.557 332.357C118.557 365.946 132.95 398.571 158.861 422.083C156.462 432.16 155.022 442.237 155.022 452.309C155.022 520.922 210.682 572.266 274.978 572.266C287.931 572.266 300.407 570.349 312.883 566.028C334.473 587.141 364.222 600.576 396.852 600.576Z" fill="white"/>
3
- </svg>
1
+ <svg viewBox="100 100 520 520" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M304.246 295.411V249.828C304.246 245.989 305.687 243.109 309.044 241.191L400.692 188.412C413.167 181.215 428.042 177.858 443.394 177.858C500.971 177.858 537.44 222.482 537.44 269.982C537.44 273.34 537.44 277.179 536.959 281.018L441.954 225.358C436.197 222 430.437 222 424.68 225.358L304.246 295.411ZM518.245 472.945V364.024C518.245 357.304 515.364 352.507 509.608 349.149L389.174 279.096L428.519 256.543C431.877 254.626 434.757 254.626 438.115 256.543L529.762 309.323C556.154 324.679 573.905 357.304 573.905 388.971C573.905 425.436 552.315 459.024 518.245 472.941V472.945ZM275.937 376.982L236.592 353.952C233.235 352.034 231.794 349.154 231.794 345.315V239.756C231.794 188.416 271.139 149.548 324.4 149.548C344.555 149.548 363.264 156.268 379.102 168.262L284.578 222.964C278.822 226.321 275.942 231.119 275.942 237.838V376.986L275.937 376.982ZM360.626 425.922L304.246 394.255V327.083L360.626 295.416L417.002 327.083V394.255L360.626 425.922ZM396.852 571.789C376.698 571.789 357.989 565.07 342.151 553.075L436.674 498.374C442.431 495.017 445.311 490.219 445.311 483.499V344.352L485.138 367.382C488.495 369.299 489.936 372.179 489.936 376.018V481.577C489.936 532.917 450.109 571.785 396.852 571.785V571.789ZM283.134 464.79L191.486 412.01C165.094 396.654 147.343 364.029 147.343 332.362C147.343 295.416 169.415 262.309 203.48 248.393V357.791C203.48 364.51 206.361 369.308 212.117 372.665L332.074 442.237L292.729 464.79C289.372 466.707 286.491 466.707 283.134 464.79ZM277.859 543.48C223.639 543.48 183.813 502.695 183.813 452.314C183.813 448.475 184.294 444.636 184.771 440.797L279.295 495.498C285.051 498.856 290.812 498.856 296.568 495.498L417.002 425.927V471.509C417.002 475.349 415.562 478.229 412.204 480.146L320.557 532.926C308.081 540.122 293.206 543.48 277.854 543.48H277.859ZM396.852 600.576C454.911 600.576 503.37 559.313 514.41 504.612C568.149 490.696 602.696 440.315 602.696 388.976C602.696 355.387 588.303 322.762 562.392 299.25C564.791 289.173 566.231 279.096 566.231 269.024C566.231 200.411 510.571 149.067 446.274 149.067C433.322 149.067 420.846 150.984 408.37 155.305C386.775 134.192 357.026 120.758 324.4 120.758C266.342 120.758 217.883 162.02 206.843 216.721C153.104 230.637 118.557 281.018 118.557 332.357C118.557 365.946 132.95 398.571 158.861 422.083C156.462 432.16 155.022 442.237 155.022 452.309C155.022 520.922 210.682 572.266 274.978 572.266C287.931 572.266 300.407 570.349 312.883 566.028C334.473 587.141 364.222 600.576 396.852 600.576Z" fill="white"/>
3
+ </svg>
@@ -1,3 +1,3 @@
1
- <svg viewBox="100 100 520 520" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M304.246 294.611V249.028C304.246 245.189 305.687 242.309 309.044 240.392L400.692 187.612C413.167 180.415 428.042 177.058 443.394 177.058C500.971 177.058 537.44 221.682 537.44 269.182C537.44 272.54 537.44 276.379 536.959 280.218L441.954 224.558C436.197 221.201 430.437 221.201 424.68 224.558L304.246 294.611ZM518.245 472.145V363.224C518.245 356.505 515.364 351.707 509.608 348.349L389.174 278.296L428.519 255.743C431.877 253.826 434.757 253.826 438.115 255.743L529.762 308.523C556.154 323.879 573.905 356.505 573.905 388.171C573.905 424.636 552.315 458.225 518.245 472.141V472.145ZM275.937 376.182L236.592 353.152C233.235 351.235 231.794 348.354 231.794 344.515V238.956C231.794 187.617 271.139 148.749 324.4 148.749C344.555 148.749 363.264 155.468 379.102 167.463L284.578 222.164C278.822 225.521 275.942 230.319 275.942 237.039V376.186L275.937 376.182ZM360.626 425.122L304.246 393.455V326.283L360.626 294.616L417.002 326.283V393.455L360.626 425.122ZM396.852 570.989C376.698 570.989 357.989 564.27 342.151 552.276L436.674 497.574C442.431 494.217 445.311 489.419 445.311 482.699V343.552L485.138 366.582C488.495 368.499 489.936 371.379 489.936 375.219V480.778C489.936 532.117 450.109 570.985 396.852 570.985V570.989ZM283.134 463.99L191.486 411.211C165.094 395.854 147.343 363.229 147.343 331.562C147.343 294.616 169.415 261.509 203.48 247.593V356.991C203.48 363.71 206.361 368.508 212.117 371.866L332.074 441.437L292.729 463.99C289.372 465.907 286.491 465.907 283.134 463.99ZM277.859 542.68C223.639 542.68 183.813 501.895 183.813 451.514C183.813 447.675 184.294 443.836 184.771 439.997L279.295 494.698C285.051 498.056 290.812 498.056 296.568 494.698L417.002 425.127V470.71C417.002 474.549 415.562 477.429 412.204 479.346L320.557 532.126C308.081 539.323 293.206 542.68 277.854 542.68H277.859ZM396.852 599.776C454.911 599.776 503.37 558.513 514.41 503.812C568.149 489.896 602.696 439.515 602.696 388.176C602.696 354.587 588.303 321.962 562.392 298.45C564.791 288.373 566.231 278.296 566.231 268.224C566.231 199.611 510.571 148.267 446.274 148.267C433.322 148.267 420.846 150.184 408.37 154.505C386.775 133.392 357.026 119.958 324.4 119.958C266.342 119.958 217.883 161.22 206.843 215.921C153.104 229.837 118.557 280.218 118.557 331.557C118.557 365.146 132.95 397.771 158.861 421.283C156.462 431.36 155.022 441.437 155.022 451.51C155.022 520.123 210.682 571.466 274.978 571.466C287.931 571.466 300.407 569.549 312.883 565.228C334.473 586.341 364.222 599.776 396.852 599.776Z" fill="currentColor"/>
3
- </svg>
1
+ <svg viewBox="100 100 520 520" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M304.246 294.611V249.028C304.246 245.189 305.687 242.309 309.044 240.392L400.692 187.612C413.167 180.415 428.042 177.058 443.394 177.058C500.971 177.058 537.44 221.682 537.44 269.182C537.44 272.54 537.44 276.379 536.959 280.218L441.954 224.558C436.197 221.201 430.437 221.201 424.68 224.558L304.246 294.611ZM518.245 472.145V363.224C518.245 356.505 515.364 351.707 509.608 348.349L389.174 278.296L428.519 255.743C431.877 253.826 434.757 253.826 438.115 255.743L529.762 308.523C556.154 323.879 573.905 356.505 573.905 388.171C573.905 424.636 552.315 458.225 518.245 472.141V472.145ZM275.937 376.182L236.592 353.152C233.235 351.235 231.794 348.354 231.794 344.515V238.956C231.794 187.617 271.139 148.749 324.4 148.749C344.555 148.749 363.264 155.468 379.102 167.463L284.578 222.164C278.822 225.521 275.942 230.319 275.942 237.039V376.186L275.937 376.182ZM360.626 425.122L304.246 393.455V326.283L360.626 294.616L417.002 326.283V393.455L360.626 425.122ZM396.852 570.989C376.698 570.989 357.989 564.27 342.151 552.276L436.674 497.574C442.431 494.217 445.311 489.419 445.311 482.699V343.552L485.138 366.582C488.495 368.499 489.936 371.379 489.936 375.219V480.778C489.936 532.117 450.109 570.985 396.852 570.985V570.989ZM283.134 463.99L191.486 411.211C165.094 395.854 147.343 363.229 147.343 331.562C147.343 294.616 169.415 261.509 203.48 247.593V356.991C203.48 363.71 206.361 368.508 212.117 371.866L332.074 441.437L292.729 463.99C289.372 465.907 286.491 465.907 283.134 463.99ZM277.859 542.68C223.639 542.68 183.813 501.895 183.813 451.514C183.813 447.675 184.294 443.836 184.771 439.997L279.295 494.698C285.051 498.056 290.812 498.056 296.568 494.698L417.002 425.127V470.71C417.002 474.549 415.562 477.429 412.204 479.346L320.557 532.126C308.081 539.323 293.206 542.68 277.854 542.68H277.859ZM396.852 599.776C454.911 599.776 503.37 558.513 514.41 503.812C568.149 489.896 602.696 439.515 602.696 388.176C602.696 354.587 588.303 321.962 562.392 298.45C564.791 288.373 566.231 278.296 566.231 268.224C566.231 199.611 510.571 148.267 446.274 148.267C433.322 148.267 420.846 150.184 408.37 154.505C386.775 133.392 357.026 119.958 324.4 119.958C266.342 119.958 217.883 161.22 206.843 215.921C153.104 229.837 118.557 280.218 118.557 331.557C118.557 365.146 132.95 397.771 158.861 421.283C156.462 431.36 155.022 441.437 155.022 451.51C155.022 520.123 210.682 571.466 274.978 571.466C287.931 571.466 300.407 569.549 312.883 565.228C334.473 586.341 364.222 599.776 396.852 599.776Z" fill="currentColor"/>
3
+ </svg>
@@ -1,12 +1,12 @@
1
- <?xml version="1.0" encoding="UTF-8"?>
2
- <svg id="Ebene_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 466.73 532.09">
3
- <!-- Generator: Adobe Illustrator 29.6.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 9) -->
4
- <defs>
5
- <style>
6
- .st0 {
7
- fill: #edecec;
8
- }
9
- </style>
10
- </defs>
11
- <path class="st0" d="M457.43,125.94L244.42,2.96c-6.84-3.95-15.28-3.95-22.12,0L9.3,125.94c-5.75,3.32-9.3,9.46-9.3,16.11v247.99c0,6.65,3.55,12.79,9.3,16.11l213.01,122.98c6.84,3.95,15.28,3.95,22.12,0l213.01-122.98c5.75-3.32,9.3-9.46,9.3-16.11v-247.99c0-6.65-3.55-12.79-9.3-16.11h-.01ZM444.05,151.99l-205.63,356.16c-1.39,2.4-5.06,1.42-5.06-1.36v-233.21c0-4.66-2.49-8.97-6.53-11.31L24.87,145.67c-2.4-1.39-1.42-5.06,1.36-5.06h411.26c5.84,0,9.49,6.33,6.57,11.39h-.01Z"/>
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <svg id="Ebene_1" xmlns="http://www.w3.org/2000/svg" version="1.1" viewBox="0 0 466.73 532.09">
3
+ <!-- Generator: Adobe Illustrator 29.6.1, SVG Export Plug-In . SVG Version: 2.1.1 Build 9) -->
4
+ <defs>
5
+ <style>
6
+ .st0 {
7
+ fill: #edecec;
8
+ }
9
+ </style>
10
+ </defs>
11
+ <path class="st0" d="M457.43,125.94L244.42,2.96c-6.84-3.95-15.28-3.95-22.12,0L9.3,125.94c-5.75,3.32-9.3,9.46-9.3,16.11v247.99c0,6.65,3.55,12.79,9.3,16.11l213.01,122.98c6.84,3.95,15.28,3.95,22.12,0l213.01-122.98c5.75-3.32,9.3-9.46,9.3-16.11v-247.99c0-6.65-3.55-12.79-9.3-16.11h-.01ZM444.05,151.99l-205.63,356.16c-1.39,2.4-5.06,1.42-5.06-1.36v-233.21c0-4.66-2.49-8.97-6.53-11.31L24.87,145.67c-2.4-1.39-1.42-5.06,1.36-5.06h411.26c5.84,0,9.49,6.33,6.57,11.39h-.01Z"/>
12
12
  </svg>
@@ -1,15 +1,15 @@
1
- <svg width="200" height="200" viewBox="0 0 200 200" fill="none" xmlns="http://www.w3.org/2000/svg">
2
- <path d="M174.82 108.75L155.38 75L165.64 57.75C166.46 56.31 166.46 54.53 165.64 53.09L155.38 35.84C154.86 34.91 153.87 34.33 152.78 34.33H114.88L106.14 19.03C105.62 18.1 104.63 17.52 103.54 17.52H83.3C82.21 17.52 81.22 18.1 80.7 19.03L61.26 52.77H41.02C39.93 52.77 38.94 53.35 38.42 54.28L28.16 71.53C27.34 72.97 27.34 74.75 28.16 76.19L45.52 107.5L36.78 122.8C35.96 124.24 35.96 126.02 36.78 127.46L47.04 144.71C47.56 145.64 48.55 146.22 49.64 146.22H87.54L96.28 161.52C96.8 162.45 97.79 163.03 98.88 163.03H119.12C120.21 163.03 121.2 162.45 121.72 161.52L141.16 127.78H158.52C159.61 127.78 160.6 127.2 161.12 126.27L171.38 109.02C172.2 107.58 172.2 105.8 171.38 104.36L174.82 108.75Z" fill="url(#paint0_radial)"/>
3
- <path d="M119.12 163.03H98.88L87.54 144.71H49.64L61.26 126.39H80.7L38.42 55.29H61.26L83.3 19.03L93.56 37.35L83.3 55.29H161.58L151.32 72.54L170.76 106.28H151.32L141.16 88.34L101.18 163.03H119.12Z" fill="white"/>
4
- <path d="M127.86 79.83H76.14L101.18 122.11L127.86 79.83Z" fill="url(#paint1_radial)"/>
5
- <defs>
6
- <radialGradient id="paint0_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(100 100) rotate(90) scale(100)">
7
- <stop stop-color="#665CEE"/>
8
- <stop offset="1" stop-color="#332E91"/>
9
- </radialGradient>
10
- <radialGradient id="paint1_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(100 100) rotate(90) scale(100)">
11
- <stop stop-color="#665CEE"/>
12
- <stop offset="1" stop-color="#332E91"/>
13
- </radialGradient>
14
- </defs>
1
+ <svg width="200" height="200" viewBox="0 0 200 200" fill="none" xmlns="http://www.w3.org/2000/svg">
2
+ <path d="M174.82 108.75L155.38 75L165.64 57.75C166.46 56.31 166.46 54.53 165.64 53.09L155.38 35.84C154.86 34.91 153.87 34.33 152.78 34.33H114.88L106.14 19.03C105.62 18.1 104.63 17.52 103.54 17.52H83.3C82.21 17.52 81.22 18.1 80.7 19.03L61.26 52.77H41.02C39.93 52.77 38.94 53.35 38.42 54.28L28.16 71.53C27.34 72.97 27.34 74.75 28.16 76.19L45.52 107.5L36.78 122.8C35.96 124.24 35.96 126.02 36.78 127.46L47.04 144.71C47.56 145.64 48.55 146.22 49.64 146.22H87.54L96.28 161.52C96.8 162.45 97.79 163.03 98.88 163.03H119.12C120.21 163.03 121.2 162.45 121.72 161.52L141.16 127.78H158.52C159.61 127.78 160.6 127.2 161.12 126.27L171.38 109.02C172.2 107.58 172.2 105.8 171.38 104.36L174.82 108.75Z" fill="url(#paint0_radial)"/>
3
+ <path d="M119.12 163.03H98.88L87.54 144.71H49.64L61.26 126.39H80.7L38.42 55.29H61.26L83.3 19.03L93.56 37.35L83.3 55.29H161.58L151.32 72.54L170.76 106.28H151.32L141.16 88.34L101.18 163.03H119.12Z" fill="white"/>
4
+ <path d="M127.86 79.83H76.14L101.18 122.11L127.86 79.83Z" fill="url(#paint1_radial)"/>
5
+ <defs>
6
+ <radialGradient id="paint0_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(100 100) rotate(90) scale(100)">
7
+ <stop stop-color="#665CEE"/>
8
+ <stop offset="1" stop-color="#332E91"/>
9
+ </radialGradient>
10
+ <radialGradient id="paint1_radial" cx="0" cy="0" r="1" gradientUnits="userSpaceOnUse" gradientTransform="translate(100 100) rotate(90) scale(100)">
11
+ <stop stop-color="#665CEE"/>
12
+ <stop offset="1" stop-color="#332E91"/>
13
+ </radialGradient>
14
+ </defs>
15
15
  </svg>
package/dist/index.html CHANGED
@@ -1,62 +1,62 @@
1
- <!doctype html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8" />
5
- <!-- Favicon hrefs carry a version query string so browsers drop their
6
- sticky favicon cache when we ship a new logo. Bump ?v when the
7
- brand mark changes. -->
8
- <link rel="icon" type="image/svg+xml" href="/favicon.svg?v=2" />
9
- <link rel="icon" type="image/png" href="/favicon.png?v=2" />
10
- <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, viewport-fit=cover" />
11
- <title>Pixcode</title>
12
-
13
- <!-- Inter variable font — crisper UI text than system Segoe UI on Windows
14
- and matches the ChatGPT/Claude feel. Preconnect cuts ~80ms off the
15
- first paint. -->
16
- <link rel="preconnect" href="https://fonts.googleapis.com" />
17
- <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
18
- <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400..700&display=swap" />
19
-
20
- <!-- PWA Manifest -->
21
- <link rel="manifest" href="/manifest.json" crossorigin="use-credentials" />
22
-
23
- <!-- iOS Safari PWA Meta Tags -->
24
- <meta name="mobile-web-app-capable" content="yes" />
25
- <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
26
- <meta name="apple-mobile-web-app-title" content="Pixcode" />
27
-
28
- <!-- iOS Safari Icons — same versioning as favicon above -->
29
- <link rel="apple-touch-icon" sizes="152x152" href="/icons/icon-152x152.png?v=2" />
30
- <link rel="apple-touch-icon" sizes="180x180" href="/icons/icon-192x192.png?v=2" />
31
-
32
- <!-- Theme Color -->
33
- <meta name="theme-color" content="#ffffff" />
34
- <meta name="msapplication-TileColor" content="#ffffff" />
35
-
36
- <!-- Prevent zoom on iOS -->
37
- <meta name="format-detection" content="telephone=no" />
38
- <script type="module" crossorigin src="/assets/index-DWOW_Jn0.js"></script>
1
+ <!doctype html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <!-- Favicon hrefs carry a version query string so browsers drop their
6
+ sticky favicon cache when we ship a new logo. Bump ?v when the
7
+ brand mark changes. -->
8
+ <link rel="icon" type="image/svg+xml" href="/favicon.svg?v=2" />
9
+ <link rel="icon" type="image/png" href="/favicon.png?v=2" />
10
+ <meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=no, viewport-fit=cover" />
11
+ <title>Pixcode</title>
12
+
13
+ <!-- Inter variable font — crisper UI text than system Segoe UI on Windows
14
+ and matches the ChatGPT/Claude feel. Preconnect cuts ~80ms off the
15
+ first paint. -->
16
+ <link rel="preconnect" href="https://fonts.googleapis.com" />
17
+ <link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
18
+ <link rel="stylesheet" href="https://fonts.googleapis.com/css2?family=Inter:wght@400..700&display=swap" />
19
+
20
+ <!-- PWA Manifest -->
21
+ <link rel="manifest" href="/manifest.json" crossorigin="use-credentials" />
22
+
23
+ <!-- iOS Safari PWA Meta Tags -->
24
+ <meta name="mobile-web-app-capable" content="yes" />
25
+ <meta name="apple-mobile-web-app-status-bar-style" content="black-translucent" />
26
+ <meta name="apple-mobile-web-app-title" content="Pixcode" />
27
+
28
+ <!-- iOS Safari Icons — same versioning as favicon above -->
29
+ <link rel="apple-touch-icon" sizes="152x152" href="/icons/icon-152x152.png?v=2" />
30
+ <link rel="apple-touch-icon" sizes="180x180" href="/icons/icon-192x192.png?v=2" />
31
+
32
+ <!-- Theme Color -->
33
+ <meta name="theme-color" content="#ffffff" />
34
+ <meta name="msapplication-TileColor" content="#ffffff" />
35
+
36
+ <!-- Prevent zoom on iOS -->
37
+ <meta name="format-detection" content="telephone=no" />
38
+ <script type="module" crossorigin src="/assets/index-Bcqs_1vc.js"></script>
39
39
  <link rel="modulepreload" crossorigin href="/assets/vendor-react-DB6V5Fl1.js">
40
40
  <link rel="modulepreload" crossorigin href="/assets/vendor-codemirror-CIYNS698.js">
41
41
  <link rel="modulepreload" crossorigin href="/assets/vendor-xterm-C7tpxJl7.js">
42
42
  <link rel="stylesheet" crossorigin href="/assets/index-Dz1luE0u.css">
43
- </head>
44
- <body>
45
- <div id="root"></div>
46
-
47
- <!-- Service Worker Registration -->
48
- <script>
49
- if ('serviceWorker' in navigator) {
50
- window.addEventListener('load', () => {
51
- navigator.serviceWorker.register('/sw.js')
52
- .then(registration => {
53
- console.log('SW registered: ', registration);
54
- })
55
- .catch(registrationError => {
56
- console.log('SW registration failed: ', registrationError);
57
- });
58
- });
59
- }
60
- </script>
61
- </body>
62
- </html>
43
+ </head>
44
+ <body>
45
+ <div id="root"></div>
46
+
47
+ <!-- Service Worker Registration -->
48
+ <script>
49
+ if ('serviceWorker' in navigator) {
50
+ window.addEventListener('load', () => {
51
+ navigator.serviceWorker.register('/sw.js')
52
+ .then(registration => {
53
+ console.log('SW registered: ', registration);
54
+ })
55
+ .catch(registrationError => {
56
+ console.log('SW registration failed: ', registrationError);
57
+ });
58
+ });
59
+ }
60
+ </script>
61
+ </body>
62
+ </html>