Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

Project picker is hard to discover: breadcrumb project name looks like a switcher but starts a new thread

Abierto Apto para principiantes
#27,445 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
2/5
Tiempo estimado
1-3 horas
Aptitud para principiantes
72/100
Tipo de issue
Nueva funcionalidad
Claridad
Bien especificado
Estado de actividad
Activo
Stack tecnológico
react, typescript

Línea de trabajo

Lee apps/web/src/components/chat/ChatHeader.tsx, apps/web/src/components/chat/DraftHeroHeadline.tsx y el tono del selector en apps/web/src/components/ui/button.tsx. Compara las interacciones de la ruta de navegación y el encabezado del borrador; después, elige uno de los cambios de affordance enumerados. El trabajo estará terminado cuando una persona que usa la aplicación por primera vez pueda reconocer cómo cambiar de proyecto y el control correspondiente se comporte como se describe; el issue no menciona ninguna prueba.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

What happened

A new user (fresh install of the desktop app) wanted to switch a new thread to a different project. They clicked the project name in the top-bar breadcrumb (my-portfolio / New thread) and nothing visible happened, so they concluded project switching was broken. The only project list they could find was the sidebar filter.

The actual project picker is the project name inside the centre heading, "What should we build in my-portfolio?". The user did not recognise it as clickable until it was explicitly pointed out.

Diagnosis

This is not a functional bug. Both controls work as coded, but their affordances are swapped:

  • The top-bar breadcrumb project name looks like a switcher but is a "New thread in " button. apps/web/src/components/chat/ChatHeader.tsx (around lines 290-307) wires it to onNewThreadInProject. When you are already on an empty new thread in that project, clicking it changes nothing on screen. The only hint is a hover tooltip ("New thread in my-portfolio"). This is unchanged on main as of 2026-10-30.
  • The real project picker in the draft hero has no visual affordance. In apps/web/src/components/chat/DraftHeroHeadline.tsx, the project name is a ComboboxTrigger rendered as InlineButton tone="picker". In apps/web/src/components/ui/button.tsx:108-109, that tone only adds an underline while the popup is open (data-popup-open:underline). At rest it reads as slightly bolder heading text: no underline, chevron, or outline.

As a result, a first-time user clicks the thing that looks interactive (breadcrumb), sees nothing happen, and never discovers the thing that is interactive (heading).

Suggestions (any one would have prevented this):

  1. Make the breadcrumb project name open the same project picker, or at least do so when the current thread is an empty draft.
  2. Give the hero project name a resting affordance, such as a chevron, a dotted underline, or a hover background.
  3. If the breadcrumb must stay "new thread", give it a visual cue such as a + icon so it doesn't read as a picker.
Steps to reproduce
  1. Install the desktop app and add at least two projects.
  2. Open a new thread in project A. The top bar shows A / New thread.
  3. Click A in the top bar. Expected: a project list. Actual: no visible change (a new thread in A is "opened" again).
  4. Note that "What should we build in A?" gives no indication that A is clickable. Clicking it does open the "Search projects..." picker.
Version

0.1.5 (desktop app and local server)

Environment

macOS 27.0 (Darwin 27.0.0, arm64), Node v26.12.1, desktop app "T3 Code (Beta)" 0.1.5 against the local server

Evidence
# ChatHeader.tsx (v0.1.5 and main): breadcrumb project button
aria-label={`New thread in ${activeProjectName}`}
onClick={onNewThreadInProject}

# ui/button.tsx:108-109: picker tone only underlines while open
picker: "gap-1 text-foreground decoration-from-font underline-offset-4 data-popup-open:underline",

Screenshots of the top bar and the hero heading will be attached below.

Related issues

None found when searching for breadcrumb or header project switching.

Fix applied or workaround

None needed on the machine. Workaround: click the project name in the "What should we build in …?" heading, or start the thread from the sidebar.

Filed by

Claude Code (claude-opus-5-5) via t3 triage

Lenguaje dominante
TypeScript
Estrellas
24.8k
Forks
6.4k
Merge medio
3 h 20 min
PR fusionados (30 d)
208

Preparar el entorno

Abrir en Codespaces

Inicia el contenedor de desarrollo del proyecto en tu navegador, con tu propia cuenta de GitHub.

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de pingdotgg/t3code

Todos los issues de pingdotgg/t3code

Issues similares

Más issues de TypeScript

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.