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.

Session #1

Attendees:

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:

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