###### tags: `Waku Objects` # Barbara Notes Waku Objects ## ToDo ### Current Status 🔥🔥🔥 ### Now 🔥🔥 **chat** - [ ] Work on image grid (not until adding images has been implemented) **invite** - [ ] "Start new chat with..." currently shows address not name - CREATE ISSUE **other** - [ ] Start working on a website for the project - Look at presentation file and see if I can come up with a website structure from that - Images can be screenshots from David’s design - Text? Not sure - let’s see where the homepage structure puts us. ### Don't forget 🔥 - [ ] ... ### If I get to it - [ ] ... ### Questions #### For David ### 🚨 Don't forget - General info and concepts - Design/build under the assuption that the people in the chat know and trust each other - Svelte theming [here](https://svelte.dev/repl/6be0d34417f84bdab9d9331de7d6055e?version=3.37.0) --- ## Notes 7/18 - Working on chat img grid ## Notes 7/17 - Working on chat img grid ## Notes 7/14 **Today's plan: ** - Look into "Start new chat with..." name issue - Look into image grid - Look into Svelte theming ## Notes 7/13 - Fixed chat scrollbar issue ## Notes 7/11 - Added corners and spacing to chat bubbles (when there are adjacent bubbles from the same user) ## Notes 7/10 - Designed 3rd logo option for Hello World object - Fixed scrollbar bug on Identity Backup screen - Added favicon to project - Add logo to Hello World object ## Notes 7/07 - Meeting to discuss what the group chat object will be - Added overflow icon to project and chat bubble - Started doing research for the website content/structure but I have a big blocker there ## Notes 7/06 - Designed 2 logo options for the Hello World object - Discussed the Transaction # with Vojtech and David, decided that it will be the Instance ID's first 4 characters. - Helped Vojtech debug homepage and objects issue (homepage was loading blank and object bubbles were gone from chat) - Fixed Close button action on Payggy header ## Notes 7/05 - Started working on Payggy send transaction chat bubble and had questions about what is implemented, so I had a call with Vojtech and continued but there are still questions - Renamed Send Transaction folder and flow to Payggy - Fixed new line bug in chat - Did a couple of cleanup things - Disabled adding images to chat because it's not implemented - Removed extra code (Request Transaction object) Todo **Vojtech** - How to find the name related to the wallet address (objects/send_transaction/chat.svelte) - done - Are we keeping transaction #? - yes but not sure what the # refers to yet (hash? sequential?) - Are we tracking payment status? - yes, Attila is working on this - Will we have the transaction details page? - yes, Vojtech is working on this - Are we adding time stamp back? - not yet ## Notes 7/04 - Fixed new line bug on chat messages - Started working on Payggy chat bubble but ended up having questions about what's minimal and what's enhancement, so I'll meet Vojtech tomorrow to chat about it. **David's presentation** - Show list of members before accepting to join group or at least show list of member after joining? - After joining, can I see previous history (messages sent before I joined)? - Hide from list maybe sends to a "Hidden chats" submenu? - When creating the group, show message showing that everyone will be admin - Remove Contact should be clearer about what it does **Chat with Vojtech** Replace on the message string Not for data mesages ## Notes 7/03 **Meeting notes** - Finished the Overview screen of the Send Transaction object - Added styles to QR page - Will continue working on the Send Transaction flow - Rebuild Adding Object screen to match new design - Vojtech has a task for me relating line breaks on messages - Vojtech suggested I create a logo for the Hello World object ## Notes 6/27 - [x] Ask David for object logos as svg including background but square shape - [ ] Add those to app - [ ] Create logo/icon for Hello World object - [ ] Redesign Adding WO screen: https://www.sketch.com/s/9f5175ed-7700-41b0-bb3e-07e0a8ae33ed/a/ZVn94oY#Inspect - [x] Remove bubbles from chat buttons ## Notes 6/26 - Fixed spacing between username and account link - Created new BlockButton component and updated Identity page to use it for Account link - Fixed account assets badge to show correct amount of assets (was hard coded before), **merged** - Checked in with Vojtech on undefined username bug, he had already worked on it ## Notes 6/21 - Fixed page background color height issue - Background color didn't span the whole page height, noticeable on scroll - Added to textarea PR, seems good now (except for multiline submission bug) ## Notes 6/20 **Meeting update** - Working on github issues - Added missing style to Hello World object - With Vojtech's help, fixed the chat avatar bug (it was previously showing the first person in the chat array for everyone. Now it shows the correct person.) - Working on textarea style and Firefox bug - Currently looking better except that textarea doesn't go back to 1 line when submitting by clicking the send button (it does work when hitting enter). - Read about web components and some other javascript elements ## Notes 6/19 - Continued working on textarea Firefox bug ## Notes 6/18 - Continued working on chat avatar (merged) - Started working on textarea Firefox bug ## Notes 6/17 - Worked on the chat avatar and name, it was previously showing the first person in the chat array for everyone. Now it shows the correct person. ## Notes 6/16 - Add chat bubbles to Hello World object messages - Reading about JS interfaces ## Notes 6/15 - Catching up with what happened while I was off, current state of the app and studying the latest code changes - Reading about Web Components and related items such as `<template>`, `<slot>`, JS classes (I've used classes before in C#), objects, etc - Next: - [x] style Hello World object in chat ## Notes 6/8 - Still feeling sick, fever, throat ache, nausea. - Checked in with Vojtech to make sure we wouldn't be working on the same thing and determined that I should work on the Adding WO screen. - Felt a bit better yesterday afternoon so I started working on that. Opened PR. ## Notes 6/6 - Dad arrived over the weekend and got sick - Now I'm feeling sick - Sister and boyfriend also arriving early next week, I'll take M/T/W off ## Notes 6/5 - Debugging textarea component - auto-height has scrollbar issues. ## Notes 6/2 - Go over design and take note of differences - New logo - how do I get this graphic from Sketch? - Fix items I can - Textarea height - Create issues for items I can't fix (top section of this file) ## Notes 6/1 - I realize that we're missing the Invite page so I'll work on that - My initial idea for the graphics won't work so I'm working on another concept but I think I'll put that aside for a moment while I work on the Invite page ## Notes 5/31 - Continued research on imagery concept - Had a call with Vojtech where he went over some deeper fundamentals of how git works and we did some practical exercises ## Notes 5/30 - Yesterday was a holiday here, not a lot of progress on the app but... - Started doing some research for creating visual material to be used in the presentation or project website, if we make one. Nothing to show yet, just ideas. - **Team meeting trip**: I will be auditioning to a choir tonight and am trying to find out their rehearsal schedule so that the trip doesn't interfere with it, I will fill out the doodle as soon as I have more info. Antwerp in July seems the most likely option right now. - **Personal training**: I decided that 9am my time would cause issues with team meetings so I changed it to noon. - Had a chat with David about team meeting trip - Worked on concept for project imagery - Avenue Louise: high-end fashion boutiques, gourmet restaurantss and chic hotels (fancy) - Rue Antoine Dansaert: Buzzes with creativity and easy-going charm in its intimate ateliers and avant-garde shops (edgy) - Chaussée d’Ixelles: lots of students. - Rue Neuve: popular shopping area. Underground tram stations. Pedestrian street, reminds me of "Rua das Flores" em Curitiba but narrower and without the flowers 😅. Pavement blocks could be interesting. ### Notes from David's "Rue Antoine Dansaert" (RAD) presentation (full design, not minimal version) - Unify request and send payments into only one object called Payggy - Assumes every person'ss identity has an account associated with it - David's premise: a waku object designer would design everything that shows inside the bubble except for the header which contains the object title and icon, so the chat app only controls the shape of the bubble that contains the object. So each waku object can look completely different from another. - Option for a object menu in the bubble, not sure what would be in it yet. - Transactions are numbered but hopefully allow for customized descriptions/names later - We should have a way to launch the app from outside of a chat, to see the history for example. - Premise: the chat app determines which waku objects are available and vouches for them. The objects come bundled with the app. ### Questions/suggestions for David - When editing a step, after you edit it, do you have to go through the flow again to finish? (this is something Vojtech raised and will be discussed/designed) - In Activity screen, change button label to "Submit" or "Filter" and "Sort"? (this screen may not exist so don't worry about it for now) - Suggestion - on the receiving request bubble, maybe a button to request edits to the payment request? ## Notes 5/25 - Team meeting - Call with Vojtech to go over merging conflicting branches - Continued working on identity flow ## Notes 5/24 - Finished current work on New Chat flow - Started working on identity flow styles and new screens ## Notes 5/23 - Team meeting - Will watch the Town Hall video today - Currently working on the new chat flow - Found a bug - first chat message not saving, reported to Vojtech ## Notes 5/18 - Team meeting - Ask David: should I be following Sketch or Zeplin? - Update styles according to newest minimal design (sketch) ## Notes 5/17 - Work on Account page ## Notes 5/16 - Work on chat (detail) screen ### Wallets in Waku Chat discussion **Login** - Do we connect to an existing wallet or generate a new one? - Can/should we have multiple accounts? How does that workk? How do we switch between accounts? **Wallet** - Should we have a default wallet? What happens if we don't? - Do we have only one wallet by default? Is the account connected to the wallet? - If there are multiple wallets, can the waku object connect to a selected wallet? **Definitions** - A wallet is a mnemonic phrase (seed phrase) that you can derive many keypairs from. 12, 18 or 24 words. 12 are discouraged now - There are many evms (Ethereum Virtual Machines) which are networks that contain different blockchain tokens - Chat key is different from your keypair - RPC endpoint = a connection to the blockchain - mnemonic > account 1 > signs a message which is your chatkey ## Notes 5/15 - Pull Vojtech's merge and continue working on styles - [x] Invite to chat - [x] Chat page (detail) - [ ] Account page ## Notes 5/12 - Continue updating chat app styles according to latest (**minimal**) design - Quick messaging with Vojtech, he'll make some changes regarding the timestamp and add a rule for when there are no chats. ## Notes 5/11 **To do** - ~~Fix header search show/hide~~ - [x] Update color from David's message - [x] Continue updating chat app styles according to design changes ### David's design presentation (minimal version of the app) - Search is not in minimal version - Is the addition of images part of the minimal version? - How do you install an object in the chat app? (not use, INSTALL) **make them npm objects** - When editing a field from the confirmation screen, make sure that once edited, go back to the confirmation screen and not what would do the next step (if there is one) - Does the object bubble not have the pointy end when followed by a message from the same person? **it does only if posted immediately after. This goes for all bubbles - messages, objects, etc** - Customize image is not in the minimal version ## Notes 5/9 - Team meeting - Small changes to chat app design - Call with Vojtech to go over how to set up a new project - create Svelte project, create github repo, install Vercel. - Vojtech merged my messy PR ## Notes 5/8 - Started implementing David's chat design, opened draft PR ## Notes 5/5 ### David Design presentation/brainstorm session Sketch file: waku_chat_01 **Questions for David** - Link to sketch file? - Link to Avenue Louise google doc? - Groups of messages from the same person have less spacing in between and only last one has time stamp - Dark mode? - Could we have an option to include a wallet address in the invite so it's only used by the correct person? ## Notes 5/4 - Team meeting - Michelle's presentation on Waku Objects ## Notes 5/2 - Missed morning meeting because of a dentist appt ## Notes 5/1 - Went over designs to see what needs to be corrected from my work so far. Notes and questions: - Wallet selection screen: - [ ] Each card needs a submenu, but I don't have the submenu items yet - [ ] Each token needs a balance next to its denomination (`<span>`) - Amount and token selection screen: - [ ] Amount input box needs background color on focus - [ ] Token denomination dropdown needs to close upon click - Confirmation screen: - [ ] What are the Edit button actions? - I'm guessing Amount edit goes back to amount screen, Wallet edit goes back to wallet screen? ## Notes 4/28 ### Waku Objects Team Meeting - 4 avenues - Hello world chat app - First build the app in the most minimal scope that we can, including UI - Create identity or use key - Contact someone on a different channel to get on a chat, no objects yet. - Have a waku object: the first one should be a buy/sell/escrow one (?) - Initially use a different app to send $ to this object, later on try to figure out how to do this through the waku object by having a walled in the app chat - Finalize: transaction is finished and everyone is happy - Object store: more like npm library - Visualize this, something like npmjs.org. Design one screen where you can see the elements that the object has, maybe there's a demo, a try this, see developers and github link. Here people can upload their own objects. - How can we do this in a decentralized fashion, where we can store all these objects and make sure people have a stake on it. We want people to see the trust level of an object. - Documentation: we can set up a docusaurus or something like that - Presentation layer: presentation to logos and could be also a website, maybe a workshop to show how to implement WO in their app - Can start with even an empty slideshow that we update as we move forward - Waht would a developer need to know to create their own object? This could be a workshop We want to start walking and see where we get on all of these avenues. - David would like to break av 1 into 2 - He would suggest starting with the poll object because it doesn't require a wallet. - Would like to have some assumptions, like that everyone in this chat already has a wallet so that it simplifies our process. Michelle agrees but asks how intricate do we want this to be, for example does it have zk or not? - Michelle would like to see a couple of project boards on github on these avenues - Michelle would like to have smaller meetings with relevant people on each different avenue - David would like to work under general assumptions because it makes a difference in the design process, but Michelle is thinking more about the system to make the objects work instead of the details of each object. For example do we assume that the people in the chat already trust each other or are they strangers? Michelle wants to treat more like Signal than Discord, where people have direct connections, instead of just shouting aimlessly into the world. Think of something like a telephone. David thinks this is a great definition and that this simplifies our process a lot. Michelle, Kiki and Attila will have a meeting to create a scaffolding for the project and will share it with the rest of us. 🔥 **ACTION POINTS FOR ME** 🔥 - Check out David's designs, study the poll object. This might be the next object to work on but wait until Michelle releases the project scaffolding. - Finish up the Request Transaction object while I wait for the project scaffolding to be released. ## Notes 4/27 - Continued working on Request Transaction object, MERGED ✅ ## Notes 4/26 - Continued working on Request Transaction object ## Notes 4/25 - Call with Vojtech to go over his changes to my branch - Work on Request Transaction Waku Object ### Team meet call - Waku Objects and Welcome Attila - We don't need to solve trust in theis project because we should assume the Waku Objects will be installed in some existing app that already deals with the trust and priacy issues. We're only trying to create objects that work. ## Notes 4/19 - Cloned WO repo and started checking it out - Checked out David's designs and made some comments - Watched svelte feature set video (again)