Hacktoberfest 2026: le issue che i maintainer hanno segnato per ottobre, aperte e adatte ai principianti. Sfoglia le issue Hacktoberfest

Files, references and photos inside the message

Aperta
#348 1 commento 0 reazioni 1 assegnatario Vedi su GitHub

I maintainer di solito rispondono entro 1 giorno

@Zamojski5 ci sta già lavorando.

Dal 8/10/2026.

Valutazione

Difficoltà
4/5
Tempo stimato
3-5 giorni
Idoneità per principianti
52/100
Tipo di issue
Funzionalità
Chiarezza
Specificata chiaramente
Stato di attività
Attiva
Stack tecnologico
react, typescript

Direzione di ricerca

Read the design guide's §6 and inspect app/apps/web/src/composer/Files.tsx (MessageFiles) and composer/composer.css; review test_file_messages.py and test_shared_composer.py before changing them. The work also spans new attachment, photo, reference, picker and viewer interactions, with dependencies on #338 and #343. Run ./scripts/check_ui.sh and compare the rendered states at the specified viewport sizes; done means the acceptance criteria and interaction, accessibility, and visual checks pass.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Descrizione

agent:ready enhancement

Part of #336 (F-026, founder direction 2026-10-07). Design guide: docs/design/final (§6 files references and photos; until #337 merges, read the pinned copy). Interactive boards (light/dark toggle, notes): design canvas, page "Prostota".

Outcome

Files, links, references and photos are part of their message and are clear at a glance.

Final design

attachments desktop-attachments phone-photopick phone-photosent phone-photoview

Acceptance criteria

  • AC-1. A file row shows the page icon (the pictogram below the fold, and a mono label: PDF with an inverted band, CSV, XLSX, DOCX, MD, code, ZIP, audio, video, image, other), the name, "type · detail · size" and Download. A voice note shows a waveform and Play.
  • AC-2. References to Flux objects are cards (task, Wiki page, decision, map thought, cited message) with their state. Inline chips (@person, #4, a Wiki page) align to the text baseline. A link shows its preview.
  • AC-3. A photo has no file frame: radius 16 with its caption below. 2–4 photos form a grid with "+N". Sending, waiting offline ("sends when you're back") and failure (Retry) show on the photo.
  • AC-4. Before sending, thumbnails with × sit in the composer. On the phone the picker numbers choices in send order. Dropping files onto the conversation attaches them.
  • AC-5. The full-screen viewer is always dark, with Reply, Create task, Save and Share.

What changes in the code today

From a read of main at 3c553b79; the owner confirms before starting. Paths are under app/apps/web/src, public/ is app/apps/web/public, root scripts/ and tests/ are the repository's, and UI tests are in app/tests/ui.

Change

  • composer/Files.tsx MessageFiles (plain links with a "doc" icon, name and size; composer/composer.css) → file rows with type icons and Download; pending files list → composer thumbnails.

New

  • Folded-corner file icons per type, voice waveform, reference cards and inline chips, link previews.
  • Image rendering: 2–4 photo grid with "+N", on-photo progress/offline/Retry, numbered phone picker, dark full-screen viewer.

Tests to rewrite

  • test_file_messages.py, test_shared_composer.py.

Depends on

#338, #343 (tokens and shared components first; independent parts can start earlier).

How to test

./scripts/check_ui.sh            # browser suite; add the new or changed tests
./scripts/check_application.sh   # when API or data paths change
python3 scripts/check_agent_setup.py && git diff --check

Compare with the renders above at 1440 × 900 and 390 × 844 CSS px, in light and dark, on ./flux demo data, then get an independent visual review with a neutral brief (guide §9). Screenshots do not prove interaction or accessibility, so also test keyboard, touch (Chromium and WebKit emulation), reduced motion and contrast in the running app.

Owner: whoever claims it (assign yourself and comment once). Evaluator: the other agent. The design is a founder direction: implement it as drawn; raise a conflict with a functional contract on #336 instead of changing the design.

Lingua principale
TypeScript
Stelle
3
Fork
0
Merge medio
18h 3m
PR unite (30g)
254

Preparare l'ambiente

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Altre issue di ColdPhase/flux

Tutte le issue di ColdPhase/flux

Issue simili

Altre issue su TypeScript

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.