This repository has been archived on 2024-01-24. You can view files and clone it, but cannot push or open issues or pull requests.
discard/wishlist.md
2023-01-10 08:28:22 -08:00

3.9 KiB

wishlist

each checkbox requires varying levels of difficulty. an means (essentially) not started, - means there is a working basic implementation, and x means it is done

  • account management
    • login/logout
    • register
    • guests
    • (future) replace with oidc
  • messages
    • view messages
    • send message
    • edit message
    • delete message
    • reply to message
    • emoji picker
    • markdown
  • attachments
    • send files
    • paste in files
    • open attachments in popup
    • image/video dimensions
    • file too big warning
    • drag and drop to upload file
  • reactions
  • members
    • member popout
    • members list
    • lazy load full member list
  • settings
    • make them save
    • edit basic user info
    • appearance/theme settings
    • edit basic room info
    • edit permissions
    • join rules settings
  • notifications
    • show # of unread messages(?)
    • mentions list/inbox
    • highlight mentions
    • play sounds
    • desktop notifications
    • change favicon based on notifs
  • rich input
    • markdown preview
    • slash commands
    • user/command autocomplete
    • room autocomplete?
  • spaces
    • [-] space home
    • [-] add/remove rooms from spaces
    • show correct order of rooms
    • order top level spaces
    • display sub-spaces
  • rooms
    • create room
    • leave room
    • join room
    • knock room
    • invite people
    • search room directory
  • moderation
    • ban/kick/unban people
    • change power levels
  • timeline
    • [-] jump to reply
    • jump to unread
    • jump to latest
    • link embeds
    • group events together? (eg. multiple m.room.member -> one entry)
    • room embeds
    • [-] show m.room.member change type + reason
    • [-] show other state events (m.*)
    • (future) use extensible events
  • qol/misc
    • user colors
    • view members by memberships
    • view homeserver stats
  • context menus
  • search messages
    • filtering
    • sorting(?)
  • dms
    • show dms differently
    • dm-only list
    • start dms
  • router (change title/url)
  • persist
    • save state/accountdata
    • save e2ee keys
    • resume after restart
    • [-] resume after disconnect
  • e2ee (VERY DIFFICULT)
    • basic implementation
    • attachments
    • import/export keys
    • cross signing + ssss
    • verification
    • key backup
  • nitor

extra stuff

after the base stuff is done, i might start looking at other features

  • custom emoji/stickers
    • view
    • upload/edit/delete packs
    • upload/edit/delete emoji
    • use packs globally
    • edit per-user pack
  • subscribe to policy lists
  • display for other room types
    • m.policy
    • long form
    • forum
    • [-] media
    • [~] documents (cancelled, no good way to implement this + dubious necessity)
  • threads
    • start thread
    • view in sidebar
    • view in sub room
    • join and leave threads
  • voip
    • 1:1 calls
    • voice channels/rooms
    • video (camera)
    • video (screen share)
  • presence
    • set online/offline
    • custom presence
  • (internal) move most stuff to discount
  • index and search encrypted room events

not planned

i mean, maybe they'll be implemented, but they're so low priority assume they won't be

  • [~] stories (simply doesn't make sense for this)
  • [~] push notifications (this isn't a mobile app, sorry)
  • [~] room favorite/low priority (spaces exist)
  • [~] server administration (this is a chat app, not a server admin interface)
  • [~] sso login (will be replaced with oidc)
  • [~] reporting content (current reporting system sucks, if a better method is merged into spec (eg. report to room moderators) i aboslutely will implement it)