Add an example drawing area to coding interviews
维护者通常 1 天内回复
评估
- 难度
- 4/5
- 预计耗时
- 3-5 天
- 新手友好度
- 55/100
- Issue 类型
- 功能
- 描述清晰度
- 基本清楚
- 活跃度
- 活跃
- 技术栈
- rust
- 领域
- full-stack
调研方向
Start by locating the Whiteboard Interview Mode implementation and the interview page layout it diverges from — the proposal explicitly says to reuse the whiteboard's image-export/delivery mechanism for the interviewer view. Map where the editor, test runner and tabs/panels are composed in the interview workspace to decide where the Code | Example tab or expandable panel attaches. Done looks like: a canvas with pen, eraser, rectangle, circle, line, arrow, undo/redo and clear, living alongside the existing editor and test flow, with the current drawing delivered to the interviewer on content change. No file, test or entry point is named in the issue, so scope and layout decisions remain with the maintainer.
由索引模型根据 Issue 内容生成。
描述
Motivation
During a normal coding interview, candidates often need to explain an example input, output, or data structure before or while writing code.
For problems involving trees, linked lists, graphs, arrays, pointer movement, or intermediate algorithm states, a visual explanation can be clearer than describing everything verbally or drawing ASCII diagrams inside code comments.
CodeTrial already provides a separate Whiteboard Interview Mode, but that mode replaces the editor and test workflow. This proposal is different: it keeps the existing coding interview experience and adds a drawing area that can be used together with the editor and test runner.
The goal is to provide a dedicated space for visually explaining examples and data structures without interrupting the normal coding workflow.
Proposal
Add an example drawing area to the existing coding interview workspace.
The drawing area would be available during a normal coding interview and would not replace the editor, test results, or current interview flow.
Candidates could use it to illustrate:
- Example inputs and outputs
- Binary trees and other tree structures
- Linked lists
- Graphs
- Arrays
- Pointer movement
- Intermediate states while explaining an algorithm
Drawing tools
The first version could provide the following tools:
- Pen
- Eraser
- Rectangle
- Circle / ellipse
- Line
- Arrow
- Undo / redo
- Clear
The pen would still be useful for handwritten values or short labels. For example, a candidate could draw circles for tree nodes, connect them with lines or arrows, and write node values inside the circles.
Interaction with the existing interview
The drawing area should work as an additional part of the normal coding interview rather than as a separate interview mode.
A candidate could, for example:
- Read and repeat the problem.
- Draw a sample input or data structure in the example area.
- Explain the approach while referring to the drawing.
- Write the implementation in the existing editor.
- Run tests as usual.
- Update the drawing when explaining edge cases, pointer movement, or optimization.
How the interviewer sees the drawing
The drawing should also be visible to the interviewer so that it can become part of the interview conversation.
When a candidate refers to a tree node, graph edge, pointer, array position, or intermediate state, the interviewer should be able to inspect the current drawing and understand what the candidate is referring to.
This could potentially reuse the existing image-delivery mechanism from Whiteboard Interview Mode by exporting the current drawing and sending it to the interviewer when the content changes.
The goal is not only to give the candidate a place to sketch, but also to let the interviewer use the drawing as part of the interview context.
Possible layout
The drawing area could be presented as a tab or an expandable panel in the existing interview page so that it does not permanently reduce the space available to the editor.
For example:
Code | Example- or an expandable
Examplepanel below the page
The exact layout can follow the current interview page design.
Scope
The initial version is intended to support visual explanation during coding interviews rather than provide a full diagram editor.
It does not need to support:
- Selecting existing objects
- Moving shapes
- Resizing shapes
- Editing text objects
- Grouping objects
- Layers
- Advanced diagram editing features
The main goal is to make common coding interview examples easier to draw, explain, and discuss with the interviewer.
- 主要语言
- Rust
- 星标
- 160
- 派生
- 64
- 平均合并
- 1 天 12 小时
- 30 天内合并 PR
- 124
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 没有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
sysprog21/codetrial 的其他 Issue
-
难度 2/5 1-3 小时 新手友好度 80/100
sysprog21/codetrial#318 · 3 条评论 · 2 个 reaction ·
维护者通常 1 天内回复
-
Candidate test cases persist across interviews for the same problem in the same tab可能已有人在做 @MZGamer 今天认领。 未关闭
sysprog21/codetrial#336 · 3 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
-
A correct C solution to Clone Graph does not compile可能已有人在做 @Wu-1127 于 1 天前认领。 未关闭
sysprog21/codetrial#332 · 已指派 1 人 ·
维护者通常 1 天内回复
-
Run the live interviewer on a local speech pipeline可能已有人在做 @alanhc 今天认领。 未关闭
sysprog21/codetrial#330 · 已指派 1 人 ·
维护者通常 1 天内回复
-
Let the candidate undo Continue without camera in the preflight可能已有人在做 @HALA1028 于 1 天前认领。 未关闭
sysprog21/codetrial#327 · 1 条评论 · 已指派 1 人 ·
维护者通常 1 天内回复
查看 sysprog21/codetrial 的全部 Issue
相似的 Issue
-
area:ecosystem documentation
难度 2/5 1-3 小时 新手友好度 78/100
Chelis-Lang/chelis#3866 ·
维护者通常 1 天内回复
-
bug documentation sev-0
难度 2/5 1-3 小时 新手友好度 72/100
-
难度 2/5 1-3 小时 新手友好度 86/100
维护者通常 1 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 85/100
dekobon/big-code-analysis#1620 ·
维护者通常 3 天内回复
-
bug
难度 2/5 1-3 小时 新手友好度 65/100