Hacktoberfest 2026:メンテナが10月に向けて印を付けた、オープンで初心者向けの issue。 Hacktoberfest の issue を見る

Switch DTC event Q&A to the shared community-base event_qna app

オープン
#458 コメント 1 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

評価

難易度
5/5
見積もり時間
1週間以上
初心者へのやさしさ
8/100
issue の種類
機能追加
明瞭さ
おおむね明確
活発さ
活発
技術スタック
django, python

調査の方向性

This is a multi-repository extraction plan, not a single change. Start by reading the existing event_qna/ app and templates/events/qna/ in DataTalksClub/website, then docs/plan/phase-4.md and docs/04-quality-gates.md in community-base. Nothing here names a concrete first edit, and the access policy hook and agenda items still need design. A finished contribution would be agreed with the maintainers in a scoped sub-issue.

索引モデルが issue の本文から書いたものです。

説明

Depends on the community-base extraction (tracking AI-Shipping-Labs/website#1930).

Reporter intent

Alexey wants event Q&A on both community sites from one shared implementation. Today DataTalksClub/website has a Django-native event_qna app (EventQnaSession, EventQnaQuestion, EventQnaVote, EventQnaCohostInvite; host, present, public and cohost views; Studio page; pluggable backend with native first; see event_qna/ and templates/events/qna/ in ~/git/dtc-website). AI Shipping Labs has no event Q&A. The separate serverless ~/git/dataqna service (qna.dtcdev.click) stays for anonymous rooms and podcasts and is out of scope.

Decisions from the intake conversation

  • Django-native, not an integration with the dataqna service.
  • One Q&A session per event. A course office hour is an event, so it has its own Q&A; there is no per-course standing list.
  • Access follows the event's own access level: open (free) events are open to anyone with the link who has a free account (sign-in required, anonymous is not allowed on AI Shipping Labs); events gated to Basic, Main or Premium are open only to members at that level, exactly like who can see or join the event. Registration is not required (people may arrive from other sources). The DataTalks.Club site keeps its current fully open behaviour, so the rule is configurable per site (a policy hook), not hard-coded.
  • Questions can be asked from the moment the event is published until it ends, including before the event and during it. Attendees can upvote. Participants can attach files (the dataqna feature set the reporter wants: uploads) if the existing event_qna supports it; groomer to confirm and list the gap.
  • Presenter/host view for the livestream (existing present and host views), co-host invites as in DTC.
  • Courses: office hours appear as part of the curriculum. Everyone in the course sees the Q&A on the curriculum page and can ask in advance. The course admin can add their own items to the list (pinned agenda items: things to talk about), shown distinctly from member questions.
  • Carrying unanswered questions over to the next office hour is a possible later step, not v1.

Delivery shape (three repositories)

  1. DataTalksClub/community-base: new package app (working name event_qna) extracted from the DTC implementation, with the access policy hook, agenda items, tests, docs and a release. Plan-driven (docs/plan/), quality gates in docs/04-quality-gates.md; both consuming sites must be tested against the change.
  2. DataTalksClub/website: replace the local event_qna app with the package (data preserved; see phase 4/5 notes in community-base docs/plan/phase-4.md).
  3. AI-Shipping-Labs/website: adopt the package: event page Q&A, access by tier, curriculum integration for course events, agenda items for course admins, Studio, API/docs.

DTC work

Replace the local event_qna app with the package app once released: data and URLs preserved (public ids, QR, co-host links), the open access policy keeps today's behaviour, no downtime for live Q&A sessions, row counts before and after equal.

主要言語
Python
スター
0
フォーク
0
PR マージ指標
30日以内にマージされた PR はありません

環境構築

  • Dockerfile または Docker Compose ファイルあり
  • プルリクエストのテンプレートなし
  • コントリビューションガイドなし

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

DataTalksClub/website のほかの issue

DataTalksClub/website の issue をすべて見る

似ている issue

Python の issue をもっと見る

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。