Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Plan #1

Closed
36 of 41 tasks
bmarty opened this issue Oct 6, 2022 · 0 comments
Closed
36 of 41 tasks

Plan #1

bmarty opened this issue Oct 6, 2022 · 0 comments

Comments

@bmarty
Copy link
Member

bmarty commented Oct 6, 2022

This is the current plan, which will also help to track progress

  • We want to validate and de-risk that using the Rust SDK is possible (and easy!) and performance are good.
  • We want to use Jetpack Compose
  • We want to spend no more than 4 weeks to do that

Goals

Design

https://www.figma.com/file/urDzUwqbnLNuXmqg7hYB83/Element-X-%5BEX1%5D?node-id=1561%3A58213&t=oE1ahxhCa9Vm2iU4-0

Screens

There will be 3 screens in this application, each in a separate gradle module

  • Simple login with Compose (no new auth screen)
    • carroussel
    • wireframe
    • polished
    • server selection
    • internal module navigation -> Postponed. Not resolved yet. Will be required as an example for others
  • Room list
    • placeholder with a fake list
    • polished (Enough done.)
    • pagination -> Postponed. EIX is experimenting it
    • burger menu to sign out
      • with confirmation dialog
    • search v1 where we filter on displayed items (enough for demoing)
    • display name
    • last message if decrypted
  • Timeline
    • polished (Enough done. Figma is not up-to-date)
      • Extended bubbles width
      • corner radii
    • backward pagination (when the loader is displayed)
    • Images
    • Reactions display
    • Text message including HTML
    • Replies (bubble in bubble)
    • Contextual menu
      • bottom sheet
      • (Copy)
      • (Quote (optional))
      • (Permalink)
      • Reply
      • Edit
      • Redact (with no reason)
  • Text composer (Markdown is supported by the SDK)
    • Text/MD
    • Edit
    • Reply
    • (Image with picker. We can reuse the plus button) . Not available in Rust SDK
  • (Minimal design kit where we define constants (maybe a figma export) to quick tuning) -> Postponed. Need design input first
    • (colors)
    • (Font & Font size)
  • App icon (black variation of EA)
  • Release build to check performance

Other

  • Setup nightly builds on Firebase and github action

TBD

  • Device verification
  • History decryption
  • How long will run this demo app?

No goals

  • no DI, except if it's very fast to setup (to be discussed - maybe give a try to anvil)
  • no time spent on DevX and CI
  • Loose time outside room list and timeline screens
  • DesignKit. We do not have it for android. It will be a separate tasks
  • WYSIWYG views in compose
  • Icons. We reuse material ones
  • No OIDC
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

No branches or pull requests

2 participants