Bifold Summit 2023

Bifold Summit 2023

Summary

  • The Bifold Summit is a focused effort to provide time for the community to discuss issues and the future of the project. There are currently scheduled two sessions:

    • Session #1 - 1/10 10:00 AM MT - 12:00 PM MT (12:00 PM ET - 2:00 PM ET)

      • New Bifold Architecture

    • Session #2 - 1/11 9:00 AM MT - 11:00 AM MT (11:00 AM ET - 1:00 PM ET)

      • Bifold AIPv3 wants/needs discussion

      • Lanugage Discussions, Indy wrappers, Shared Libraries

      • Updating Bifold to AFJ 0.3.2

      • Ad Hoc topics

  • Zoom Link (the same used for the bi-weekly calls): https://zoom.us/my/hyperledger.community?pwd=STZQd0xMZU9xRVVOVnpQM3JNQ2dqZz09

Meeting Policies

Hyperledger is committed to creating a safe and welcoming

community for all. For more information

please visit the Hyperledger Code of Conduct.

Hyperledger is committed to creating a safe and welcoming

community for all. For more information

please visit the Hyperledger Code of Conduct.

Session #1

Attendees:

  • Name (Organization) <email>

  • @James Ebert (Indicio) <james.ebert@indicio.tech>

  • @Akiff Manji (Petri Dish Development) <amanji@petridish.dev>

  • @Ryan Koch (Indicio) <ryan@indicio.tech>

  • @Jason Leach (Fullboar Creative / Government of British Columbia) <jason.leach@fullboar.ca>

  • @Emiliano Suñé  (Quartech / Government of British Columbia) <emiliano.sune@quartech.com)

  • @Simon Henriksen (Hyphen) <simon@hyphenapp.xyz>

  • @Philip Essy-Ehsing (Hyphen) <philip@hyphenapp.xyz>

Agenda:

  • New Bifold Architecture

    • Presentation - James Ebert

    • Open Discussion

  • Internationalization

    • Tablet Support?

  • Dark Theme vs Light Theme

    • With the ability to decide

  • Application Storage / Settings

    • Can be very opinionated vs providing defaults

    • Some kind of interface for user settings

    • Need a good way to group settings into category

    • Tiered components

      • Settings List > Category Component > Individual Setting Component

  • Process for becoming a committer

    • Outlining the process for the PR reviewing

      • Checkboxes should be paid attention to

  • NPM release strategy

    • Create a Bifold namespace

      • Start with a core package

      • @aries-bifold/core

    • Gradual transformation

  • Support for .svg's & .png's

    • We do currently support

    • This needs to be a development task to document/address

  • Boilerplate / script

    • React Native Template

    • Binaries

      • Shared components

        • Using auto-linking

    • Metro bundler configs

  • Expo – not opposed, but caution is beneficial

    • Prebuild command

    • Animo has done indy building

    • Native code – possibility?

    • Should be investigated/discussed

  • Testability

    • How do we represent all the different states of a component?

    • Storybook? - should have some discussion

      • Can be a standalone

      • Environment variable

    • Mocking helps define the externalizations

    • Keep the barrier to entry low

    • Need to be testing the visual look of the component

    • Makes sense for complex components

  • UI/UX Direction

    • Need multiple ways to do a wallet – such as credential focused vs chat-based

  • Need to start

    • New repo needed - aries-bifold or aries-bifold-framework, aries-bifold-native-libs, aries-bifold-core

      • James to talk to Sam about attribution recommendation

    • React Native Bob – can we symlink a submodule? Meaning we have the existing repo aries-mobile-agent-react-native have a aries-bifold submodule

    • What does testing setup look like?

    • Roadmap

    • Storybook demo



  • Future questions/discussion:

    • How do you customize a component

    • Do we want to utilize context providers?

    • I'm trying to create a wallet from Bifold components, what does that look like?

Notes:

Session #2

Attendees:

  • Name (Organization) <email>

  • @James Ebert (Indicio) <james.ebert@indicio.tech>

  • @Mostafa Youssef (Ontario) <mostafa.youssef@ontario.ca>

Agenda:

  • Bifold AIPv3 wants/needs discussion

  • Deep Linking

    • Mattr – Chapi to redirect

    • Work item to experiment / RFC creation

    • We don't want to hardcode / lock to wallets – splintering of wallets

  • Lanugage Discussions, Indy wrappers, Shared Libraries

  • Updating Bifold to AFJ 0.3.2

    • Almost done - Jason

  • Upgrading React Native

    • 0.68+

    • ZMQ

      • Short-term – Indy-VDR as a Proxy Server

      • Long-term – Talk directly to the nodes over HTTP/HTTPS

    • James to provide a branch to Clecio

  • Shared Components / Indy-VDR / Aries-Askar

  • Followup Architecture Discussion

    • Do we want to utilize context providers?

      • Proposal – Bifold Context Provider

        • Services configured/passed to the context provider

      • State management?

        • Event creation – just need a little bit of structure

          • Exposed as a service

        • Pluggable State management – not required

          • More modular ideally

        • Remove the state management out of Bifold Core

          • Reference Implementation needs state management

    • How do you customize a component

      • We should crawl > walk > run – start with simpler cases as we learn more and then slowly add more complexity

    • I'm trying to create a wallet from Bifold components, what does that look like?

    • Workflows

      • Pull out the workflow/logic to the app logic

    • How do we ensure we maintain/update the reference implementation

      • We need to make a commitment to keeping

      • Project/goal statement

    • Navigation stack – Leaving to the end developer

      • Could abstract/bundle some navigation stacks, such as the onboarding or pin creation

      • Navigation stacks

        • Opinionated navigation across multiple components/building blocks

        • Must NOT be required – needs to be not required

      • Action Menu

      • Generally avoid navigation

  • Ad Hoc topics

Notes:

Recordings

  File Modified

Text File session-1-chat.txt

Jan 10, 2023 by James Ebert

Text File session-2-chat.txt

Jan 11, 2023 by James Ebert