Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

Add an example drawing area to coding interviews

已关闭
#255 1 条评论 0 个 reaction 已指派 1 人 在 GitHub 查看

维护者通常 1 天内回复

@Chuyutseng 已经在做这个了。

开始于 2026年10月8日。

  • #262 来自 @Chuyutseng —— 未关闭

评估

难度
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:

  1. Read and repeat the problem.
  2. Draw a sample input or data structure in the example area.
  3. Explain the approach while referring to the drawing.
  4. Write the implementation in the existing editor.
  5. Run tests as usual.
  6. 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 Example panel 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 模板
  • 阅读贡献指南

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

sysprog21/codetrial 的其他 Issue

查看 sysprog21/codetrial 的全部 Issue

相似的 Issue

更多 Rust Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。