weaver

*a simple social network app*

simplified clone of facebook for families and friends. no cross-server talk or syndication.

* post: a post by a user, belongs to a board
* comment: a comment to a post or another comment
* boards: users can post to boards
* streams: a stream can consist of one or more boards and displays all posts on all boards
* identity: users can have a different identity (display name / avatar) for every board

# streams
* every board has its own stream (`/board/{name}`)
* every user has a stream consisting of the boards they joined (`/`)
* every user can create custom streams of one or more boards (`/stream/{name}`)

# board access controls

* public: user which aren't members of that board
* private: users which are members of that board
* owners: board admins only

* read: who can read posts on a certain board
  * world
  * public
  * members
  * owners
* write: who can post to a certain board
  * public
  * members
  * owners
* join: who can join a board
  * open: everyone can join
  * application-by-member: everyone can apply, members have to confirm
  * application-by-owners: everyone can apply, owners have to confirm
  * invite-by-members: members can invite others
  * invite-by-owners: owners can invite others
  * closed: no one can join
* advertise: does the board show up in lists
  * public: shows up in lists
  * private: doesn't show up in lists

# user

* username
* email (secret)

# group

* name
* description

# post

* content: text, image, gallery, video
* user mentioning: `@username` makes the post show up on their default stream

# screens / actions

## screens

* registration
* login
* stream view
* create/edit board
* create/edit stream
* create/edit post
* profile
* settings
* user profile
* user's posts

## actions

* join board
* create anonymous invite link
* invite user
* delete post 


edited by: stefs at Thursday, December 5, 2024, 6:56:57 PM Coordinated Universal Time


view