Hosted ondailyplanet.iovia theHypermedia Protocol
Seed Team
Gabo H Beaumont, Seed Team & horacio
Panel (see Discussions Panel Order)
Daemon pushing algorithm
This document tries to enumerate blobs that need to be synced in order to render a proper document
Standalone Email Service
Problem Solution
Profile page everywhere
Notes Description The Profile button on the Mobile Navigation Menu is terrible!
Edit Web Documents
Two Document Panels
Maps Block
Comment Icon on document header
Two Clicks Profiles Linking
This user story requires the user to perform a trillion clicks! They should be just two clicks! one in each window!
Merge Create Account and Subscribe Email
Private document collaboration
Create and share documents only among a selected group of accounts so that they can review and collaborate.
Mobile formatting toolbar
Problem Solution Proposed approaches Concerns and questions Notion floating toolbar Blocknote floating toolbar Notion and blocknote both use floating toolbars!
Killing the Web Redirect for Commenting
Status: Completed. This project is considered completed when we enabled signing comments on any Hypermedia web site. Now instead of going via the redirect flow to hyper.media users are able to create a key right on the web site they are looking at, and sign their comments with that key. Linking this key to your desktop app and/or other keys you might have will be covered by a separate project. Problem Solution Rabbit Holes No Gos
General Feed / For You Page (Design for Feed)
This document looks to answer to the following user story> If we want a way for users to be able to see all the activity for the documents they have subscribed to as well as the communities they belong to, the best thing we can do is adopt the feature of a home feed/ for "For You Page" that many social media platforms like: X, Medium, Substack amongst many other use to keep their users up to date with general information of what's happening. The feed needs to incorporate both information for the node as well as information form all subscribed sites. To start it would be ideal to have document related information (document creation and document updates) as well as information on discussions (new discussions and replies). Proposed design look The look for the design was inspired form Substack which uses a combination of document posts in the feed with discussion posts of a sort. Take in mind that this was adjusted to takin into account the needs and stories relevant to Seed users. Substack Replies Threading and Commenting on The Feed Clicking a thread will also open up the threaded discussion similar to how X does it. It will open the thread depending on where you want to reply.
Look at all site Activity
This document looks to answer the following user story: Users currently viewing a document's feed can only see activity specific to that document. The only way for them to see activity from the entire site is to go to the home document, which may not contain content they are interested in. They simply want to see the entire site's activity. The best solution for this is for the feed to be able to display both the document's feed and the entire site's feed. Library as a Document Directory and Activity Hub
Subscribing to email notifications without an account
User Story: . Refactor By subscribing to a site, a user will get notified of the latest activity on that site. Readers: Commenter: Owner/Author
Give publishers access to site statistics
How to give access to statistics to site owners depending if they self host or not.
Semantic Search
This Is related to the story Find what is relevant. The immediate application would be to search for relevant content given some keywords. Documents relating to those keywords should pop up even if those words were never written literally. Also, searching in different languages. Searching for terms or concepts in a language, would yield results in another language. Other applications, and taking advantage of LLM models (out of the scope of this project) to generate the keywords themselves (reading the current document and coming up with relevant keywords) Then the semantic search would find similar documents/fragments. The LLM would be exposed via an Openai API compatible way so that the frontend could use it however it wants. The backend would implement the MCP tools and the model itself. Data Embedding First we have to vectorize the texts using an embedding model. These models translate text to a numeric representation so that we can apply a distance algorithm later given a query (also needs to be vectorized). This vectorizing process is multilingual so we can support major languages and the resulting numeric data would be the same independently of the language used. This is one of the benefits over traditional search, where no matter what languages you use in the query, you will find results with similar ideas no matter the language. The golang go-llama-cpp binding does not support new architectures (like bert) since it is based on old versions ob llama.cpp and its not currently maintained. The ollama engine is a separate process that needs to run in parallel. So the only real option to ship an embedding model with the daemon is to use the onnx runtime for golang We should load a dynamic library (.so in linux and Mac, dll in windows) and then load the models. A good enough model is multilingual-e5-small, especially in its qint8 version. Its just 118 MB and the tokenizer about 17MB. As long as we ship those three files along with the daemon (library, model, tokenizer) we are good to go. The process of vectorization is slow (even though we can do it in batches) so it will slow down the reindex process. However, as the search text is already stored in the db, we can populate the embeddings table on the background once the reindex process has finished. On a live index (for example when we create a new change) the embedding overhead is minimal. Vector search
Revocation of Permissions
This is a WIP document. It's related to the user story of . Problem Solution Rabbit Holes
Activity Feed
We want to bring back Feeds. Problem Solution API Support
Show Document discussions in the document content
users want a way to show a list of discussions in the document content
Add steps to the Wordpress importer for long repositories
TBD 
Email Notifications for site owners
WordPress importer
Objective Import content from WordPress into Seed Hypermedia, turning posts/pages into documents in a site? Import workflow Possible libraries Edge cases Questions Should I just try calling API with /wp-json/? Apparently API key is only needed for private content or authenticated actions. Each post includes:    is my understanding of the project correct?
Improve search results ordering
Solution to make recent relevant matches appear first
Role Invites
Invite link generation When clicking on invite link you will get a generated link with the selected role. If you want to change duration for the link, number of people that can use it or role you will be able to do this on the invite settings. Discord invites where taken as a reference Invite Membership
Commentor Role
The commentor role is someone who is allowed to view and write comments even if this permissions have been disabled in the document. Joining Experience For Users Document Access Panel
Contact Improvement
Problem Solution Design Idea
Inbox
Problem Solution Rabbit Holes / Concerns
Branch Following
Unify the Search experience across the app
Problem Solution I believe we can use a library like DownShift to create the primitives for all the search instances we need. Scope Rabbit Holes No-Gos
Comment URLs
We need to be able to copy comment URLs, open comment URLs on web and desktop, and we should be able to embed documents Owner: 
Comment search
Now that we have comment IDs we can include back comments in search results
Contact Search
A contact is a relation between two accounts so for each account i am logged in, I pick a name (not the publishable name) of the other account. But right now, we don't search for contacts. We need to change the search API to take the account we are logged as and the backend should find the contacts matching the search input. Questions. What's a contact in the permanent data?
I have created a new guide for custom domain please review!
   
Paid Content
Problem Solution Behavior Downsides Scope
Cross-Site Signing
Problem Solution In the original window where the comment draft exists, there is an iframe which has loaded the identity provider hyper.media/hm/embed/auth. Internally it is polling the indexeddb for the containing origin's abilities. When they change, they are and communicated via postmessage so the publisher knows what sort of content can be signed in the iframe. When the comment is submitted, air.com passes in the unsigned comment blob to the identity provider iframe (again, via postmessage). The identity provider iframe will make sure the ability is present and valid. Then will sign it. It will pass the signed comment back to the air.com who requested it. At this point the signed comment needs to be saved to at least one server, and it can be sent to air.com or hyper.media, or both, whoever is willing to distribute it. For now, air.com will be the one responsible for saving and distributing the comment blob, which will result in a good UX because the comments will be refetched after saving to show the user the comment they just created. Why this is Secure Concerns
Investigate Web Authentication
Problem Solution Alternative: Seed Phrase with Local Storage Cross-Domain Strategy Implementation Strategy
Navigation
I am creating this document here because I can't discuss new materials on Eric's document.
Unified Activity Section
Problem Solution Scope Rabbit Holes
Hypermedia Comment URLs
Problem Solution Scope
Write Document Structure
Problem Solution Scope Rabbit Holes No Goes
Project: Broadcasting