Roadmap
Updated 1,013 Days AgoPublic

M-1: User authentication and message view

  • Extend JMAP client library
    • issues tracked at https://github.com/linagora/jmap-client/issues)
    • Extend jmap-client to expose account capabilities T875
    • Handling of authentication/authorization failures
      • Expose transport and JMAP errors in jmap-client T1000
      • return to login or require overlay re-authentication T999
  • UI Components
    • Treelist component T1001
  • Tests and CI automation
    • Unit tests for core features T1002
    • Set up Travis CI <-> Github integration T1003
  • Notifications App T827
    • Extend Notifications model and allow to revocation T1004
  • Mail App T832
    • Check account capabilities before activation T1015
    • Folder listing T1006
      • Using Treelist component, sorted alphabetically
      • Special-use folders (Inbox, Drafts, Sent, Trash) in top
    • Message list
      • paging; endless scrolling T1008
      • stateful list items (unread, flagged, selected) T1009
  • Configuration App T1010
    • Specify the app/service interface T1011
    • Basic "Settings" section with core settings: T1012
      • Language
      • Timezone
      • Date/Time format
    • Store in local storage T1012
    • JMAP extension for syncing settings with server/user account
      • Protocol extension T1013
      • Server-side support (roundcube-server) T1014

M-2: Full message view and organizer

  • UI Components
  • Attachments App
    • Rendering of attachment models
    • Preview and download through JMAPs 'download' endpoint
    • UI components for uploading through JMAPs 'upload' endpoint
  • Mail App
    • Message list
      • control sorting
      • expandable threads (or conversation view?)
    • Search Messages
      • Search via JMAP getMessageList with filter property
      • Display snippets (from JMAP getSearchSnippets)
    • Message view
      • HTML/Plaintext toggle for multipart/alternative
      • List attachments (using core app)
      • Conversation view (render multiple messages in a thread)
      • Make URLs clickable in plain text messages
    • Message actions
      • Set message flags (unread, flagged/starred)
      • Move message to folder (drag & drop, button + menu)
      • Delete message
      • Mark message as read N seconds after opening in viewer
    • Print message
    • Settings panel
      • Mark messages as read (immediately, after X seconds, never)
      • Display as HTML/Plaintext
      • Display remote images (always, from known senders, never)

M-3: Message composer

  • UI Components
    • Forms
      • Form rows: Label + Element
      • Form elements
        • Text input
        • Drop-down list
        • Richtext editor (CKEditor?)
        • Recipient list: composite element with
          • a list of "recipients" (display name, icon?, remove button)
          • text input to add new items
          • autocompletion
  • Mail app
    • Message actions
      • Forward (inline, attachment)
      • Reply, Reply all (list, all)
    • Message composition
      • Select sender identity (from accounts)
      • Message headers (To, Cc, Bcc, Reply-To, Followup-To)
      • Plaintext message text
      • Richtext editor (CKEditor, Squire - hopefully plaintext editing can be handled by the same tool)
      • Add attachments (using Attachments app)
      • Spell check
      • Sending options
        • Priority
        • Save in folder X
      • Save as draft
    • Message view
      • Make email addresses in plaintext messages clickable to compose a new message
      • Redirect mailto: links in HTML messages to open compose view
    • Settings panel:
      • Compose options
        • Compose HTML messages
        • Safe as draft every X minutes
        • Quotation mode
        • Message forwarding (inline, attachment)
        • ...

M-4: Contacts integration

  • Contacts App
    • Address book / group listing
      • Collect from all accounts with hasContacts
      • List groups below the according address book
    • Contact listing
      • Paging and endless scrolling
    • Contact view
      • Visualize contact properties from JMAP spec
      • Render photos
  • Mail app
    • Contact integration
      • Autocompletion in recipient fields
      • Provide a contacts widget for browsing contacts
      • Show contact photo in mail view
      • Add contact from mail view (sender, recipient)

M-5: Full contact management

  • Contacts App
    • Contact editing
      • Dynamic form expansion (add property X)
      • Photo upload/adjustment
    • Actions
      • Delete
      • Move/Copy
      • Add/remove group
      • Compose mail to
    • Search
    • Settings panel
      • Default address book
      • Listing mode
      • List sorting

M6: Folder management

  • Mail app
    • Add, delete, rename folders
Last Author
bruederli
Projects
None
Subscribers
None