From f70dc26a44b121631384d6a3d534413f334d3d4d Mon Sep 17 00:00:00 2001 From: mj-saunders Date: Thu, 17 Feb 2022 13:55:58 +0000 Subject: [PATCH] Update 'Tech to do list' --- Tech-to-do-list.md | 109 ++++++++++++++++++--------------------------- 1 file changed, 43 insertions(+), 66 deletions(-) diff --git a/Tech-to-do-list.md b/Tech-to-do-list.md index dd41508..ffa4b97 100644 --- a/Tech-to-do-list.md +++ b/Tech-to-do-list.md @@ -11,7 +11,6 @@ Use the existing XWiki template system to build a set of pages which cannot be a Including a group that checks if some is a stakeholder or affiliate. - ### Signup Module Login if exsiting user on the instance - Create new account as 'Member' (everyone): @@ -26,9 +25,11 @@ Login if exsiting user on the instance - a tagged activity pub message will get posted to the approval group - group members must each submit 'approve' or 'disapprove' +### Invite Members Module +[Research how this currently works in Xwiki] +Send email, SMS, Download QR codes, Print Posters, Signup URL ### [Sortition](https://en.wikipedia.org/wiki/Sortition) Module - - Determines who gets placed in a given 'Body' - Runs every 10 mins - Looks for any space in body @@ -39,64 +40,40 @@ Login if exsiting user on the instance - **_[Q. How many ActPub "users"/streams will there be? One for Organisation, one per Body, one per Member?]_** - Second sortition runs to pick 'Voices' of the 'Body' - 3 to 5 are picked as sortated as voices (see above) -* [add activity time outs and time limits] -* [add group and wifi logic] - -### Invite Members module -[Research how this currently works in Xwiki] -Send email, SMS, Download QR codes, Print Posters, Signup URL - +- [add activity time outs and time limits] +- [add group and wifi logic] ### Voting +- 3 options +- can vote on any "proposal" +- if it goes through, then one of the admins/mod takes the action + - it auto announces via ActPub -3 options, can vot on any "popusal" if it goes through then one of the admins/mod takes the action, its anouces on AP - -### these need wrighting up: - - - structure/workflow/templates to define varables - for creating wiki pages with user rights, user groups who can edit the wiki and lock pages - creating/joining and leaveing groups, admin of groups. - logic for flagging - voting x3 - sortation for roles and posts - user page scrypiting - Basic security and checks - Activerty streams (by tag/cat) - Roles are complex and needed for money but we can leave these out of draft version to keep it KISS - - - -### UI to choose tempate for OGB -Java backend - -Velocity frount end - -Used by any member to set up a new OGB - -Choose from avliable templates - -[Research if this functionality is in xwiki or needs developing]] - -[Hasmish to define template and how difrences] - - - - - - - - - - +### These need writing up: +- structure/workflow/templates to define varables +- for creating wiki pages with user rights, user groups who can edit the wiki and lock pages +- creating/joining and leaveing groups, admin of groups. +- logic for flagging +- voting x3 +- sortation for roles and posts +- user page scrypiting +- Basic security and checks +- Activerty streams (by tag/cat) +- Roles are complex and needed for money but we can leave these out of draft version to keep it KISS +### UI to choose template for OGB +- Java backend +- Velocity front end +- Used by any member to set up a new OGB +- Choose from avliable templates +- [Research if this functionality is in xwiki or needs developing]] +- [Hamish to define template and how differences] +--- ## NFR (Non Functional Requirments) - - -## Requirements +### Requirements **[Can we list what the key behaviours of the system should be. In part I want to be certain that a wiki is the most suitable candidate - the initial list here was taken from the end of the previous version of this document]** Function: @@ -125,10 +102,13 @@ UI/X: - `Flagging`: ... - ... +--- + ## Development Process 1. Choose a **well maintained, open source wiki** to be the base of the functionality -2. Find a team who are skilled in the language(s), data storage and frameworks used to build the chosen wiki (recruit from the maintenainers initially if possible) +2. Find a team who are skilled in the language(s), data storage and frameworks used to build the chosen wiki + - recruit from the maintainers initially if possible 3. Do story mapping exercise to define the features and scope and user life cycles 4. Prioritise the stories to highlight MVP features 5. Design initial wireframes @@ -155,30 +135,28 @@ UI/X: 25. Build 26. Deploy and iterate from 23. +--- -## List of Candidate Wikis -TBD - - -## Chosen Wiki and Why - -### XWiki +## Why XWiki Ideal candidate as it has active maintainers, and because it already has ActivityPub integration - [ActivityPub Extension](https://extensions.xwiki.org/xwiki/bin/view/Extension/ActivityPub%20Application/) - YOU CAN TALK TO THE DEV [HERE](https://socialhub.activitypub.rocks/t/integrating-activitypub-in-xwiki-a-journey/947/2) +--- ## Team Members Tom Campbell -hamish -msaunders +Hamish +Michael +--- ## Story Mapping Output (prioritised vertically - downwards) TBD +--- ## Wireframe Diagrams One page overview diagram of all pages @@ -196,23 +174,22 @@ Functionality wireframes: - Voting actions - Voting results +--- ## Build Templates -For the wiki page types. +For the wiki page types - Voice blogs - Groups - Body - Other users ---- -### END OF TOMS ADDITION --- ## XWiki Modules [Draft List] ### Modules -are simply blocks on the wiki pages with options. +are simply blocks on the wiki pages with options - A front end that gives you a choice of templates (and in version 02 a way to modify them) - propsal is tyed into the voteing