# Tasks to be done ## TUI - [ ] Initial configuration setup - [ ] Solve colors issue - [ ] No chat handling and no chat selected on the startup of the application - [ ] Complete chat loading and sending messages to contacts so it is written to the file - [ ] Create systray - [ ] Share what music am i listening using mpris - [ ] Colors and themes ### Chat - [ ] Add scrolling capability - [ ] Solve multiline messages and resizing the window - [ ] Implement calculating positions of images and profile pictures - [ ] Add rendering image previews - [ ] Render image in chat - [ ] Render image in chat with scroll - [ ] Add rendering profile pictures - [ ] Solve too long message history problem - render only first 100 messages? - [ ] Check chat without images, if kitty image protocol is not used - [ ] Check chat on windows - [ ] Create timestamps like today yesterday etc... ### Sidebar - [ ] Profile pictures next to the username - [ ] Ability to scroll through users and rerender profile images - [ ] Colors maybe? - [ ] Solve too long names and window width ### Input - [ ] Add emoji internal selector - [ ] Add button to add attachement - [ ] Add correct parsing of input to correct chat ### Profile Sidebar - [ ] Profile image - [ ] Mpris integration ## CMD - [ ] Create basic commands template to use chat from commandline ## Configuration - [ ] Keybindings for application - [ ] IDs instead of usernames - [ ] Load and Write new messages to the files - [ ] Change preloading of Contacts from list to complex structure - [ ] Change preloading of messages from list to complex structure - [ ] Add new contact - [ ] Choose server to use when running TUI - [ ] Create colorthemes - [ ] Add reactions to messages and replies ## Server ## Communication ## Application integration with the system - [ ] Systray and how to manage to not have multiple instances of the application running - [ ] Create simple cmd commands that would be intuitive and simple to use ## IDEAS - just set window size of the box to be even, so there should not be need in rendering half of the profile picture