on master help sign in
Holium's initial round of bounties (#1385)
f257522lomder-librun
content/grants/app-engram.mdnew file+117
@@ -0,0 +1,117 @@
1++++
2+title = "Engram: a collaborative knowledge managment app"
3+date = "2022-03-25"
4+
5+[taxonomies]
6+grant_type = [ "Bounty" ]
7+grant_category = [ "App Dev" ]
8+
9+[extra]
10+image = ""
11+description = "Engram is a knowledge management application that allows individuals or teams to build rich note documents."
12+reward = "$70,000 in WSTR"
13+assignee = ""
14+id = "B0155"
15+champion = "Holium"
16+completed = false
17+work_request_link = "https://airtable.com/shr4qt9t9kz7RaOIa?prefill_Grant+ID=B0155&prefill_Grant+Name=Engram"
18++++
19+
20+Engram is a knowledge management application that allows individuals or teams to build rich note documents.
21+
22+## Rationale
23+
24+Right now, the only way to collaborate on documents in Urbit is in the notebook channel via comments. There are no features around knowledge management, tagging, history, or any feature required for collaborating on documents with others. The goal of this project is to provide a robust solution for groups or individuals to collaborate on documents.
25+
26+## Overview
27+
28+For V1, Engram will focus on enabling rich document editing for an individual experience, but multiple collaborators. Different people should be able to modify the documents based on permission.
29+
30+There are several features and agents that may need to be created to support this.
31+
32+- Document editor
33+- Git-like revision history
34+- Inline comments
35+- Sentence parser for storing each sentence as a node in a graph for easy referencing, commenting, and more future features.
36+- Document permissions
37+
38+## User stories
39+
40+As a single user, I would like to:
41+
42+- See a list of documents for my own ship context.
43+- Be able to edit a document myself.
44+- Have others invited edit the document
45+- See a history of changes on the document.
46+
47+As a group member, I would like to
48+
49+- See notes associated with my group.
50+- Be able to comment on sentences at the current revision.
51+- See a log of changes via a popout panel
52+- Be able to resolve conflicting revisions.
53+
54+As a document editor, I would like to:
55+
56+- Have the current document state saved in local storage if I haven't clicked save and accidentally close the tab.
57+- Be able to edit in readme mode
58+- Be able to edit in preview mode
59+- Have a hoverable style block appear when editing
60+- Add collaborators to the document with an edit permission or view permission.
61+
62+As a document viewer, I would like to see
63+
64+- A rich document with formatting.
65+- A list of authors and editors.
66+- View comments on the document .
67+- View phrase comments on sentence hover.
68+- Have custom embeds in the document:
69+ - code block
70+ - link
71+ - video
72+ - image
73+
74+## Technical requirements
75+
76+The most complex part of this is the revision log. It should be easy to revert to a certain point in time. There will also need to be a sentence parser that stores each sentence in a store with associated comments and other metadata. Each sentence or collection of sentences should be able to be referenced by other documents.
77+
78+Holium will work with the developer(s) to provide frontend help.
79+
80+## Milestone 1 - Single user documents - $30,000 in WSTR
81+
82+The first milestone is to release a version of the app that allows for single user documents, meaning there is a document owner and only they can edit it. The app should include the rich document editor features without collaboration.
83+
84+The app should be released.
85+
86+## Milestone 2 - Revision history, comments, and referencing - $15,000 in WSTR
87+
88+This second milestone is building out the revision history log to allow for undo, redo, and time traveling through revision snapshots. This will serve as the foundation of the third milestone.
89+
90+There should be a revision history log in the UI that allows users to go back to previous snapshots as well as the ability to leave comments on the document or on sentences.
91+
92+## Milestone 3 - Collaboration - $25,000 in WSTR
93+
94+Allows multiple editors to modify the document and resolves the differences between the documents. There is not a need for live co-editing in this milestone as that is reliant on WebRTC or another streaming solution.
95+
96+You should have the ability to add new users to the document, manage those users permissions, and remove the users from the collaborator list.
97+
98+## Future work
99+There is the potential for several future releases enabling more collaboration features:
100+
101+- Public pages
102+- Live co-editing (WebRTC or Urbit native)
103+- Group-to-group document sharing (if groups enable)
104+- Inter-document referencing (hypertext-like)
105+
106+## Requirements
107+- At least three years of professional programming experience
108+- Experience with full-stack development, including JS and some server-side language
109+- Demonstrable experience with writing Gall agents
110+- Coordinate with Holium on designs, frontend, and agents
111+
112+## Schedule
113+This project has many pieces and would likely require a team size of two or more. There would need to be a significant amount of frontend work, which Holium will help build or facilitate using our design system. V1 deadline is 6 months from start.
114+
115+## Reward
116+$70,000 in WSTR (team of two)
117+