Home » Grad Project Deets #2: Spec for minimal hApp

Grad Project Deets #2: Spec for minimal hApp

I wrote this document in the process of designing a minimal blogging app on Holochain as the first step of my graduation project. This might interest you if you want to know more about how hApps are designed…


Entry Types

  • Blog
    • name: string
  • Blog post
    • owning-blog: hash-of-blog-entry
    • content: string

Anchor types

  • Username

Link types

  • Username anchor to agent
  • Agent to blog
  • Blog to blog post

Validation

Blog entries

  • Blog creation: name less than storage limit
  • Blog editing: agent created blog; new name shorter than storage limit
  • Blog deletion: agent created blog

Blog post entries

  • Blog post creation: agent created owning blog; agent hasn’t deleted owning-blog; content shorter than storage limit
  • Blog post editing: agent created post; agent hasn’t deleted owning-blog; new content shorter than storage limit
  • Blog post deletion: agent created post

Links

  • Link from username anchor to agent: agent linking is agent being linked to
  • Delete link from username anchor to agent: fail
  • Link from agent to blog: agent at link source created blog
  • Delete link from agent to blog: fail
  • Link from blog to blog post: blog post’s owning-blog is blog
  • Delete link from blog to blog post: fail

Leave a Reply