diff --git a/FURPS/application/qaku.md b/FURPS/application/qaku.md new file mode 100644 index 0000000..74dffbe --- /dev/null +++ b/FURPS/application/qaku.md @@ -0,0 +1,54 @@ +# Qaku FURPS + +## Functionality + +1. An owner can create public Q&As. +2. An owner can create a private Q&As where only selected participants can read the data, and participate. +3. Owner can close a Q&A, no more questions or answers are accepted. +4. Owner can schedule a Q&A to be opened in the future, allowing questions and answer only from then. +5. Owner can answer questions from a Q&A, an answer is attached to one and only one question; multiple answers per question are allowed. +6. Owner can moderate user questions by hiding them to users, such questions are still accessible as “moderated” to owner. +7. Owner can add a poll to an existing Q&A. +8. Users can answer polls, limited to one answer per poll per user. +9. Owners can close poll, stopping further answers to be accepted. +10. Owner can add and delete admins for a given Q&A. +11. Admins have same permissions as owners on Q&A, apart from adding and deleting admins. +12. All users are identified by an in-browser key pair generated upon first interaction. +13. Users can post questions on a Q&A they have access to. +14. Questions have a published timestamp, upvotes, related answers properties. +15. Users can upvote questions (1 upvote per user). +16. Users can export & import their in-browser identifying key pair (e.g. to multiple devices). +17. Owner have a list of Q&As they created. +18. Users have a list of Q&As they visited. +19. Owner can use ENS to prove they created a given Q&A. +20. Owner’s app backups data on Codex via local Codex node. +21. Data is automatically retrieved from Codex via local Codex node. +22. User can retrieve data from Codex network if missing from Waku (PoC). + +## Usability + +1. Users participating in a Q&A only need the Q&A ID and password (if encrypted). +2. Web3/wallet integration is optional for developers. +3. Developers do not need to understand or know about Waku to integrate Qaku. +4. Developers and Users do not need to understand Codex beyond local node setup to integrate Qaku. +5. Qaku Library API informs whether an outbound message (question, answer, poll, vote, etc) irremediably failed to send. +6. Qaku Library API informs whether an inbound message is missing from a Q&A. +7. The Qaku JS library contains all the functionality and exposes clean API. + +## Reliability + +1. The app connects within 30 seconds of starting. + +## Performance + +1. A user can load previously visited Q&A with a max of 100 questions+responses within 10 seconds. + +## Supportability + +1. The Qaku JS library works in both browser and NodeJS environments, desktop and mobile browser. +2. Codex local node related features are only supported on desktop. +3. Retrieval of data from Codex network from browser mobile and desktop (PoC). + +## + (Privacy, Anonymity, Deployments) + +1. Qaku's deployment uses The Waku Network \ No newline at end of file diff --git a/draft-roadmap/README.md b/draft-roadmap/README.md index 2ce3b03..43b8ce1 100644 --- a/draft-roadmap/README.md +++ b/draft-roadmap/README.md @@ -86,7 +86,7 @@ In order of priority. | 6 | [Define Incentivisation for RLNaaS](define_incentivisation_for_rlnaas.md) | 31 Jul | 1.5*1m | | | | | 7 | [Improve DevEx: API, TWN, Metrics, Docs](improve_devex_api_twn_metrics_docs.md) | TBD | TBD | TBD | TBD | TBD | | 8 | [Introduce mixnet for message sending](introduce_mixnet_for_message_sending.md) | 30 Sep | 1*3m | | | | -| 9 | [Formalize Logos Web Apps](formalize_logos_web_apps.md) | 19 Dec | | | | 1.5*6m | +| 9 | [Formalize and Expand Waku Web Apps](formalize_and_expand_waku_web_apps.md) | 19 Dec | | | | 1.5*6m | | 10 | [Create Chat SDK MVP](create_chat_sdk_mvp.md) | TBD | | | | TBD | | 11 | [Integrate RLN with Waku API](integrate_rln_with_waku_api.md) | TBD | TBD | 1*2m | TBD | | | 12 | [Streamline DevEx: Mobile, Rust and Web dev](streamline_dev_ex_local_dev_rust.md) | TBD | TBD? | TBD | TBD | | diff --git a/draft-roadmap/formalize_and_expand_waku_web_apps.md b/draft-roadmap/formalize_and_expand_waku_web_apps.md new file mode 100644 index 0000000..0982274 --- /dev/null +++ b/draft-roadmap/formalize_and_expand_waku_web_apps.md @@ -0,0 +1,82 @@ +# Formalize and Expand Waku Web Apps + +**Estimated date of completion**: 19 Dec 2025 + +**Resources Required for 2025H2**: +- 1.5 engineers for 6 months + +Harden select Waku Web apps by extracting libraries and writing protocol specifications: + +- Qaku (Q&A over Waku): harden Waku to MVP level, so it can be used for IFT Town Halls, and Logos physical events. + - Integrate SDS and write specs. +- Logos Operators Forum: Build a web forum PoC over Waku to serve as a basis for a decentralized Logos forum (opchan). + - Extend the Forum PoC to new FURPS, to align with Logos Movement needs. + +Explore Codex x Waku integration, in Qaku and one other application. + +Develop 10 Waku Web Apps PoC, and push them to the community to "teach them how to hunt" as well as inspire developers +to build over Waku. + +**FURPS**: See deliverables + +**Deliverables**: + +## [Codex for message archival PoC](https://github.com/waku-org/pm/issues/293) + +TODO + +## [Reliable Qaku & library](https://github.com/waku-org/pm/issues/287) + +**Owner**: App/Chat Dev + +**Feature**: [Qaku](/FURPS/application/qaku.md) + +**FURPS**: +- F1-21 +- U1-7 +- R1 +- P1 +- S1-3 + +**Checklist**: +- [ ] Specs: link to specs and/or API definition +- [ ] Code: link to GitHub issues/PRs/Epic +- [ ] Dogfood: link to dogfooding session/artefact +- [ ] Docs: links to README.md or docs.waku.org (TBD) + +## Build Ten Waku Web Apps + +**Owner**: App/Chat Dev + +**No FURPS** + +**Output**: 10 working Waku Web apps of various sort. + +- The apps needs to be functioning and deployed, PoC level. +- Broadcast to the community must happen (Logos/Waku Discord, Logos/Vac Forums, conference talks, Twitter, etc). + +**Checklist**: +- ~[ ] Specs: link to specs and/or API definition~ +- [ ] Code: link to GitHub issues/PRs/Epic +- [ ] Dogfood: link to dogfooding session/artefact +- ~[ ] Docs: links to README.md or docs.waku.org (TBD)~ +- [ ] Promote the app + +## Build One Waku Logos Core App + +**Owner**: App/Chat Dev + +**No FURPS** + +**Output**: 1 working Logos Core App. + +- The apps needs to be functioning, PoC level. +- Broadcast to the community must happen (Logos/Waku Discord, Logos/Vac Forums, conference talks, Twitter, etc). +- May use Waku SDK or Chat SDK. + +**Checklist**: +- ~[ ] Specs: link to specs and/or API definition~ +- [ ] Code: link to GitHub issues/PRs/Epic +- [ ] Dogfood: link to dogfooding session/artefact +- ~[ ] Docs: links to README.md or docs.waku.org (TBD)~ +- [ ] Promote the app \ No newline at end of file diff --git a/draft-roadmap/formalize_logos_web_apps.md b/draft-roadmap/formalize_logos_web_apps.md deleted file mode 100644 index c501049..0000000 --- a/draft-roadmap/formalize_logos_web_apps.md +++ /dev/null @@ -1,19 +0,0 @@ -# Formalize Logos Web Apps - -**Estimated date of completion**: 19 Dec 2025 - -**Resources Required for 2025H2**: -- 1.5 engineers for 6 months - -Develop Web applications for Logos, using the Logos technology stack: - -- Qaku (Q&A over Waku): harden Waku to MVP level, so it can be used for IFT Town Halls, and Logos physical events -- Logos Operators Forum: Build a web forum PoC over Waku to serve as a basis for a decentralized Logos forum (opchan). - -As well as leveraging Qaku to explore Codex x Waku integration. - -**FURPS**: - -- [{Feature Name}]({path/to/furps/file}): {list of furps: F1, etc} TODO - -**Milestone and deliverables**: https://github.com/waku-org/pm/milestone/42