roadmap/content/innovation_lab/updates/2023-08-02.md

5.5 KiB

title tags date lastmod draft
2023-08-02 Innovation Lab weekly
ilab-updates
2023-08-02 2023-08-03 false

Logos Lab 2nd of August Currently working on the Waku Objects prototype, which is a modular system for transactional chat objects.

The last few weeks were a bit slower than usual because there were vacations, one team member got married, there was EthCC and a team offsite.

Still, a lot of progress were made and the team released the first version of a color system in the form of an npm package, which lets the users to choose any color they like to customize their app. It is based on grayscale design and uses luminance, hence the name of the library. Try it in the Playground app or check the links below.

Milestone: group chat support

There is a draft PR for group chat support for private groups and it is expected to be finished this week. At the end we decided to roll our own toy group chat protocol implementation because we did not find anything ready to use. It would have been great if we could have just used an existing implementation.

Next milestone: Splitter Waku Object supporting group chats and smart contracts

This will be the first Waku Object that is meaningful in a group chat context. Also this will demonstrate how to use smart contracts and multiparty transactions.

Deployed version of the main branch: https://waku-objects-playground.vercel.app/

Main development repo: https://github.com/logos-innovation-lab/waku-objects-playground

Grayscale design: https://grayscale.design/

Luminance package on npm: https://www.npmjs.com/package/@waku-objects/luminance

Contact: You can find us at https://discord.com/channels/973324189794697286/1118949151225413872 or join our discord at https://discord.gg/ZMU4yyWG


Conversation

  1. fryorcraken Yesterday at 10:58 PM

    There is a draft PR for group chat support for private groups and it is expected to be finished this week. At the end we decided to roll our own toy group chat protocol implementation because we did not find anything ready to use. It would have been great if we could have just used an existing implementation.

    While status-js does implement chat features, I do not know how nice the API is. Waku is actively hiring a chat sdk lead and golang eng. We will probably also hire a JS engineer (not yet confirmed) to provide nice libraries to enable such use case (1:1 chat, group chat, community chat).

August 3, 2023

  1. fryorcraken

     > There is a draft PR for group chat support for private groups and it is expected to be finished this week. At the end we decided to roll our own toy group chat protocol implementation because we did not find anything ready to use. It would have been great if we could have just used an existing implementation. While status-js does implement chat features, I do not know how nice the API is. Waku is actively hiring a chat sdk lead and golang eng. We will probably also hire a JS engineer (not yet confirmed) to provide nice libraries to enable such use case (1:1 chat, group chat, community chat).

  2. attila🍀 Today at 4:21 AM

    This is great news and I think it will help with adoption. I did not find a JS API for status (maybe I was looking at the wrong places), the closest was the status-js-api project but that still uses whisper and the repo recommends to use js-waku instead 🙂 https://github.com/status-im/status-js-api Also I also found the 56/STATUS-COMMUNITIES spec: https://rfc.vac.dev/spec/56/ It seems to be quite a complete solution for community management with all the bells and whistles. However our use case is a private group chat for your existing contacts, so it seems to be a bit overkill for that.

  3. fryorcraken Today at 5:32 AM

    The repo is status-im/status-web

  4. [5:33 AM]

    Spec is https://rfc.vac.dev/spec/55/

  5. fryorcraken

    The repo is status-im/status-web

  6. attila🍀 Today at 6:05 AM

    As constructive feedback I can tell you that it is not trivial to find it and use it in other projects It is presented as a React component without documentation and by looking at the code it seems to provide you the whole chat UI of the desktop app, which is not necessarily what you need if you want to embed it in your app It seems to be using this package: https://www.npmjs.com/package/@status-im/js Which also does not have documentation I assume that package is built from this: https://github.com/status-im/status-web/tree/main/packages/status-js This looks promising, but again there is no documentation. Of course you can use the code to figure out things, but at least I would be interested in what are the requirements and high level architecture (does it require an ethereum RPC endpoint, where does it store data, etc.) so that I can evaluate if this is the right approach for me. So maybe a lesson here is to put effort in the documentation and the presentation as well and if you have the budget then have someone on the team whose main responsibility is that (like a devrel or dev evangelist role)