Tom Larkworthy
01/27/2022, 9:59 PMChris G
01/27/2022, 10:17 PMThere are various different implementations of embedding applications and blocks which would be compliant with the protocol, but not with one another.
The ultimate goal of the Block Protocol and supporting ecosystem is that any embedding application should be able to render any block, if both are correctly configured.
In order to achieve this, embedding applications will need to have strategies for handling blocks which are implemented in different ways.ie, code for react and web components and other – I don't get it No mention on what the data supplier or ownership should be Eventually there'll be a "BlockHub" https://blockprotocol.org/hub
Tom Larkworthy
01/27/2022, 10:31 PMRob Haisfield
01/28/2022, 2:27 AMAlexey Shmalko
01/28/2022, 3:06 AMCiaran Morinan
01/28/2022, 1:47 PM[Different implementations of blocks] can potentially fragment the ecosystem, so iiuc they plan to spec this as wellWe’re conscious of multiple implementation approaches potentially leading to fragmentation, with React-implemented blocks limited to applications who are happy to ship React, and other variations. It’s a tricky balance to strike between freedom for the block author (i.e. can they implement it how they want, or must they use X) and work for the embedding application (how many different flavours of block implementation do they need to deal with - albeit we can provide libraries for this to save every application rolling their own).
The spec also does not define how blocks are distributed, how end users can search or add themThe spec does not define this, and I’m not sure we want to require that people use particular distribution methods, but we do provide one - at a very early, too-manual stage - and have an API which allows callers to filter blocks by keywords, or by data structure (i.e. pass a data structure and you will be returned blocks which have a schema compatible with that data structure).
Ciaran Morinan
01/28/2022, 1:49 PMCiaran Morinan
01/28/2022, 1:50 PMAndrew F
01/28/2022, 5:50 PMAndrew F
01/28/2022, 9:05 PMblocks can have their own local state, but to persist data beyond the session should make use of the operations defined in the spec to pass data back to the application
That's actually kind of interesting. I think something like that needs to be in the first couple hundred words of the pitch, though, if not actually above the fold on the homepage.
Ciaran Morinan
02/02/2022, 10:05 AMEven if I’m wrong about that, please update the docs to be less obtuse about the project actually is.Can you expand on which bits of the site / docs you found particularly obtuse? To my reading, the introduction to the spec is pretty explicit about what the communicating parties are - do you mean those docs, or other ones? We’re obviously keen to explain it as clearly as possible.
Andrew F
02/02/2022, 6:17 PMCiaran Morinan
02/04/2022, 6:58 PM