2019-05-01 Engineering Meeting (Open to Public)


This is an open-to-the-public meeting. Our engineering team meets and all everyone in the community is welcome — app developers, app users, and the simply curious.

You can listen in, ask a question, or participate in our discussions of engineering concerns or questions.

Date/Time: 2019-05-01 @ 15:00 UTC / 10:00 EDT / 23:00 HKT
Click here to convert to your time zone
Length: 45 minutes
Meeting link: https://zoom.us/j/559551975

Go here to subscribe to our meetings and event calendar.

Agenda & Meeting Recording

Friedgar has two questions:

  • With the smart contracting system being used for BNS, how will existing API calls be implemented or change?
  • What’s the best reference point for following specs and work on collections?
  • After covering these two topics, @aaron suggests that we try something new this week (per a suggestion from @jeffd) — let’s go around the Blockstack engineers and each describe the work we’re doing this week and give a brief description of how it impacts the community.
  • Community also said what they are working on
  • File manager and implementation of collections
  • Where will the core api for DID documents (/dids/) be hosted when smart contracts are live? I couldn’t find anything in the develop branch of core. Or in other words, when the Blockstack Name System is moved to a smart contract how can a function interact with gaia?

DID document contents are loaded from the user’s profile (the public_key field is taken from the profile JWT).

Blockstack DIDs are in 1-to-1 correspondence with names. Your name’s DID is did:stacks:v0-$NAME_PREORDER_ADDRESS-$NTH_NAME_PREORDERED. For example, the DID for judecn.id is did:stack:v0:1KVzcgurJmTr4Cr44h6raEVtoGhm7ZZxzm-0 because it was preordered with 1KVzcgurJmTr4Cr44h6raEVtoGhm7ZZxzm and it was the 0th name to be preordered with it. What this means is that translating between DIDs and names will continue to work as before – it gets done at the “RPC layer”, which is above the smart contract layer.


@jude Where is the rcp layer developed? How would that work for other smart contracts?


RPC layer. It’s part of the Core node, and implements the REST API. It also translates names to DIDs and back by querying the node’s state DB.


What is the state of collections? Is there a document I can reference publicly? The github issues are not very detailed.