Jun 22 - defining a block - notes
by: Jon Borichevskiy
referenced in vid notes
context: notes and reflections on our conversation where we laid out a basic schema and next steps for getting basic flows in place.
State of Affairs
- working towards a native web3 collaborative schema for freeform, stream of consciousness style content with a collaborative publication and support layer built in.
- The smallest atomic/molecular unit is the "block”. Consists of content (anything) and distinct metadata fields:
- date (epoch + timezone)
- type (free text for determining how to render. No fixed set, propose new + adopt/evolve model)
- creator (username for now, eth address in the future). Separate from author. Creator is who created this particular block
- context (design fiction freeform text). How this block relates to other blocks. Pure language for now, likely nested/structured in the future.
Architecture
-
Components
- markdown to block conversion
- block to markdown file/repo
- media upload to IPFS
-
File will be in format epoch_time.md (will later be translated to block ID)
-
Upload utility for media will push it to IPFS and return referenceable hash for use in markdown posts
-
A “post” is assembled with a markdown file of “type:post” which specifies the IDs of all child blocks directly. Future updates specify a rewrite of a past block ID.