Skip to content

feat: ✨ implement feedback system (reviews + comments) in project detail pages#862

Draft
phoebus-84 wants to merge 8 commits into
mainfrom
feedbacks
Draft

feat: ✨ implement feedback system (reviews + comments) in project detail pages#862
phoebus-84 wants to merge 8 commits into
mainfrom
feedbacks

Conversation

@phoebus-84

@phoebus-84 phoebus-84 commented Jun 2, 2026

Copy link
Copy Markdown
Collaborator

to work it needs the feedback server to be online: https://github.com/interfacerproject/interfacer-feedback-service

  • bd init: initialize beads issue tracking
  • feat: ✨ implement feedback system (reviews + comments) in project detail pages
  • fix: 🐛 resolve i18next/no-literal-string and @next/next/no-html-link-for-pages lint errors
  • feat: ✨ wire reply-to-review flow with inline CommentThread + CommentForm
  • fix: 🐛 always show existing review replies, sign DELETE requests
  • fix: 🐛 send {} body with DELETE so Zenroom signing has real data

close: #864

phoebus-84 and others added 8 commits June 2, 2026 13:20
…ail pages

- Add lib/feedback.ts API client with DID signing (mirrors useDppApi)
- Add ReviewSummary, ReviewCard, ReviewSection, ReviewForm components
- Add CommentThread, CommentForm components
- Integrate reviews section and sidebar rating into ProjectDetailNew
- Add i18n keys for en/de/fr/it
- Add --ifr-skeleton-bg CSS variable to theme.css
- Update .beads issues
…Form

Clicking Reply on a ReviewCard now toggles an inline threaded reply
section below that review, with existing replies and a form to add new
ones. Self-contained in ReviewSection — no parent wiring needed.
- CommentThread now always visible below each review card
- Reply button only toggles the CommentForm input
- DELETE requests now send DID auth headers (sign empty body)
- Fix null comments crash in CommentThread fetch
Empty-body signatures can fail Zenroom verification on the backend.
Sending {} (JSON empty object) gives the signing a real payload
('e30=' in base64) that both frontend and backend can verify.
The backend DeleteComment handler ignores the body, so this is safe.
- ReviewCard: edit/delete buttons for own reviews with delete confirmation
- ReviewForm: edit mode with initialReview prop, update/editing labels
- ReviewSection: inline create/edit forms, duplicate alert when user already reviewed
- API: getUserReview and deleteReview methods added to feedback hook
- ProjectDetailNew: simplified, removed showReviewForm toggle
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Rating system policies

1 participant