Sprint is weekly.
Initializing 2020/12/21 Unreleased
- Gitlab initialized (kevinjanada)
- Google Cloud Platform initialized (Decentricity)
- Migrated Gitlab to Github (non-technical considerations applied) (Decentricity)
- Domain acquired, www.degenics.com (Decentricity)
- Website go live, www.degenics.com (Decentricity)
- IAM granted, accesses provided, roles defined (Decentricity)
- UI/UX research: Vitagene, 23andme, Ancestry (Team)
- Storage research: IPFS / Torrent / IPFS+Torrent Research for Whole Genome Sequences (VCF files 1GB++) (Team)
- Payment research: Transak Payment Gateway supported by Consensys (Team)
Prototyping 2020/12/28 Unreleased
Architectural decisions:
- IPFS for storage layer, no Torrent required (marcondol & (dedy)
- Deploying on Ethereum testnet (marcondol & (dedy)
- Keypair derived from Ethereum keypair (marcondol & (dedy & kevinjanada)
- Simple initial UI/UX (kevinjanada)
- Consortium / Private Deployment (Decentricity)
- Marketplace (Decentricity)
- Smart Contract expires if delivery not done within x days (Agent J, contributor)
- Structure: Nation>City>Lab>GenProduct (ybobby)
Development
- Workflow: (ybobby,marcondol & dedy)
- Encryption using ethereum address. (kevinjanada)
- IPFS connected with encryption, upload / download ability implemented. (marcondol)
- UX/UI initialized, keypair & mnemonic process initialized, dashboard initialized. (kevinjanada) Demo is at /media/20201228UIUX.mkv.
Revision / Expansion Requests
- Dashboard expansion with product categories, lab selection, city selection, nation selection (See Workflow)
- Research deanonymizing mechanism (if user requests and provides consent, can print nonymized file)
- Research logistics process & sampling mechanism / UX
- UX tweaks (Jean-Daniel Gauthier, contributor)
Prototyping 2021/1/4 Unreleased
Development
- User onboarding flow 60% implemented (kevinjanada), including:
- Keygen
- Private key login
- Import json keystore
- Mnemonic login
- User onboarding 40% backlog:
- Explore onboarding with metamask (see performance notes)
- Anti-frustration features & instructions (when keygen, ensure user has written down key, etc)
- Progress bars
- Userside core experience 50% implemented (Team), including:
- Nation, city, lab selection
- Product selection under labs
- Payment interface
- Download and decrypt results when done
- Userside core experience 50% backlog:
- Payment interface (may use Metamask)
- More product selections with descriptions (marketplace paradigm)
- Notifications
- Instruction page for sampling and sending
- Template to put on printable envelope with code and lab address
- Separate buttons to only download certain files (REPORT and/or GENOME type file selection)
- IPFS Upload / Download implemented 60% (marcondol & dedy)
- IPFS backlog 40%:
- Two flows for the files (one button for REPORT filetype, one button for GENOME filetype, with multiple files allowed for each)
- Labside 50% implemented (Team):
- Lab can already input user code (anonymous)
- Lab can already upload file encrypted with user public key
- Labside 50% backlog:
- Notifications
- Time / deadline warning to revert with results
- Instructions for labside user
- Progress bar
Prototyping 2021/1/18 Unreleased
Development
-
Front End (marcondol & kevinjanada)
- (2021/1/5) Use custom Wallet class for faster encrypt decrypt and wallet generation
- (2021/1/7) Update login page: update login page design, add confirm password validation, gitignore local contract.json
- (2021/1/8) Update receipt page design: add DNA sample sending instruction, add helper to format specimen number; Handle and show send payment error message
- (2021/1/9) Update request test page: fix the numbering in DNA sample sending instructions, resize selected product icon, set product selection limit, parse additionalData from lab and services data, show lab address if any
- (2021/1/12) Update user dashboard & user request test: set max view limit for order history and test result fix order history sorting, disabled unselected product card; Update style: update style for order history and lab order list; Fix order history sorting at user dashboard
- (2021/1/13) Deployment changes: Create multi stage docker compose and config nginx
- (2021/1/14) Move to testnet: fix ethereum tx issue, fix send transaction when register speciment; Change IPFS connection;
- (2021/1/15) Fix authentication flow: add route guards to check if logged in, sdd route guards to check user role when app start, move load web3 and contracts to router so to be able to access; Refactor; Connect to web3 and setup contracts before app renders; Fix flow in lab: change upload to result and genome, fix finalize to new method, fix bug crash on lab order list
- (2021/1/17) Update lab's dashboard: Modified lab's dashboard home datatable to show next actions, add Process Screen to process specimen, Receive -> Wetwork -> Encrypt Upload Files -> Send (Set specimen status to success) workflow
- (2021/1/18) Create order detail and all result: create page for w all result, create page for order detail, link page to dashboard; Create result: create result parser, create download result, create download genome; Update success & reject flow: show reject alert after rejecting speciment, show success alert after set speciment status to success
-
Smart Contract (dedy, marcondol & kevinjanada)
- (2021/1/6) Add timestamp
- (2021/1/9) Add dummy services data
- (2021/1/11) Add escrow reg
- (2021/1/13) Update skin product to skin care
Performance Notes
- Team will explore using metamask for a better user experience and performance optimization.
UX Notes
- General simplification required for next sprint
- User feedback and anti-frustration features (Jean-Daniel Gauthier, contributor)
UX Notes, screenshots of Figma mockup with revisions for next sprint (Jean-Daniel Gauthier, contributor):