-
Notifications
You must be signed in to change notification settings - Fork 9
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
EPIC: groups
: how to collaborate with one or more people
#220
Comments
Here is how I view the relations between
So from the issue above, I would add the
|
@SimonLab agreed. These should all be many-to-many relationships. ✅ We only need a I think in terms of building an MVP, the |
I've created the following PR dwyl/mvp#162 which created the The next step is to create the |
@SimonLab on further reflection, Instead we need to:
Sample data response: [
{
"gid": 1,
"name": "DwylTeam",
"members": [
{
"pid": 1,
"name": "Alex",
"admin" true
},
{
"pid": 2,
"name": "Jane",
"admin" false
},
],
},
{
"gid": 2,
"name": "FootballSquad",
"members": [
{
"pid": 1,
"name": "Alex",
"admin" false
},
{
"pid": 2,
"name": "Jo",
"admin" true
},
],
}
] This way the |
groups
: how to collaborate on items
with one or more people
groups
: how to collaborate on items
with one or more people
groups
: how to collaborate on items
with one or more people
groups
: how to collaborate with one or more people
Making an attempt to write this up in the |
Minor side-track: #229 |
Next side-quest: #230 ⏳ |
Rather than import all of font awesome ... 🤷♂️ <svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" fill="currentColor" class="w-6 h-6">
<path fill-rule="evenodd" d="M8.25 6.75a3.75 3.75 0 117.5 0 3.75 3.75 0 01-7.5 0zM15.75 9.75a3 3 0 116
0 3 3 0 01-6 0zM2.25 9.75a3 3 0 116 0 3 3 0 01-6 0zM6.31 15.117A6.745 6.745 0 0112 12a6.745 6.745 0
016.709 7.498.75.75 0 01-.372.568A12.696 12.696 0 0112 21.75c-2.305 0-4.47-.612-6.337-1.684a.75.75
0 01-.372-.568 6.787 6.787 0 011.019-4.38z" clip-rule="evenodd" />
<path d="M5.082 14.254a8.287 8.287 0 00-1.308 5.135 9.687 9.687 0 01-1.764-.44l-.115-.04a.563.563
0 01-.373-.487l-.01-.121a3.75 3.75 0 013.57-4.047zM20.226 19.389a8.287 8.287 0 00-1.308-5.135
3.75 3.75 0 013.57 4.047l-.01.121a.563.563 0 01-.373.486l-.115.04c-.567.2-1.156.349-1.764.441z" />
</svg> |
Reeeeeeeally want to get back to this ... ⏳ 😢 |
Story
As a
person
wanting to collaborate with others,I want a way to create a
group
that I can add
people
toand then share a
list
ofitems
withSo that I can keep track of who sees, can edit and work on what
items
.Todo
person
first tries to share anitem
orlist
(ofitems
) in theApp
,group
for them with their name as thegroup.name
item
will automatically add them to thegroup
person
:🤖 "By the way I created this group for you and you can add more
people
to it by visiting:/groups/:id
"groups
.people
to manually create a newgroup
Proposed Schema (please comment/discuss!)
group
name
:Fields.Encrypted
- the name of the group.description
:Fields.Encrypted
- the descriptionkind
:String
- e.g.family
,friends
,personal
,sports
,work
, etc. - we will havedefault
kinds that can help theperson
to categorise theirgroup
; we could consider making this a free-text field in the future or adding more kinds via Pull Request (so they are hard-coded) because, let's be fair, there are't that many kinds ofgroup
we will need.group_members
The lookup table that lists the
people
who aremembers
of agroup
group_id
Int
fk
: theid
of thegroup
person_id
Int
: theperson.id
of the person in thegroup
inserted_at
DateTime
: defaultPhoenix
field for the insertion of a record.admin
Bool
: if the person can administer (add/remove others from) thegroup
added_by
Int
: theperson.id
of theperson
who added themember
to thegroup
removed
DateTime
:default:null
the date when a person is removed from agroup
(it happens ...)removed_by
Int
:default:null
theperson.id
that removed thisperson
from thegroup
Features
groups
usingLivView
:@SimonLab thoughts? Am I missing anything? Am I over-complicating it? or is this "just enough" to get started? Thanks! 🙏
The text was updated successfully, but these errors were encountered: