Design Docs
Opened this issue · 0 comments
connorryanbaker commented
MVP List
- I would push the User profile feature to the very end of our timeline. Starting with Auth, then Servers, then Channels, then Chat will give you a good path to follow when working to implement live chat. User profiles can be a nice bonus feature once that is implemented. This will also give you at least one additional day to throw at live chat, which can be a bit tricky at the onset.
- Direct Messaging is a cool feature to show off, I would add this feature to your list following Live Chat. Let's talk about some of the complications this may add to our app in our meeting this Tuesday.
Schema
- The schema looks very straightforward and well thought out. The implementation of
ServerMemberships
as a joins table is a good way to approach representing being a member of a server. How we will implement DMs or private channels is something I want to talk about this Tuesday.
Backend Routes
- What is the difference between
GET /api/users
andSHOW /api/users/:id
? I would recommend first switching SHOW to GET and then considering if we need a request for all users at/api/users
. Let's bring this up in our meeting as well. - Messages especially need routes for create, showing, updating and deleting. Add backend routes to address this. Additionally, I don't see why we shouldn't be able to update the name of a channel or delete a channel, so let's add routes to address this as well.
Frontend Routes
- I like the way you have broken down your Components, my main concern is in how
/servers/:serverId
and/channels
will interact. On Discord, when I click on a server, what I see is the content of the channel I am currently in, not some information about the server. Let's talk about how we will better combine these two routes, I'm not convinced we need a/servers
or a/servers/:serverId
Sample State
- Your sample state looks excellent. There are a couple of modals that pop up in Discord, like for creating a new server, so I would recommend adding a
modal
slice ofui
state. We have a good resource for implementing that as well.
Keep up the great work! Looking forward to talking more in depth on Tuesday.