Open nishanths opened 9 years ago
I think we decided that we will not be using separate app and api servers. In that case, can we put JSON sending URLs behind a /api
route. For example, the endpoint that sends information about all groups would be at /api/groups/all
or similar.
The request body will contain the information during a POST request. Most of the parameters will be the same across routes.
Limit the number of objects in the collection that the server returns.
Restrict to groups around that location
Return only groups that have at least the specified number of messages
Return only groups that have less than the specified number of messages
Return only groups that have at least the specified number of users
Return only groups that have at least the specified number of users
api/groups/
Sends information about all the groups. Ask for customizable information using request body parameters.
We can add more descriptive, readable routes. That should help us stuffing the request body with too much information.
The browser Geolocation API allows to listen for changes in the user location in the browser. On changes, we ask the server for updated group information which we can then render on the user's browser. This will largely be a front end task that deals with keeping the view updated with the current data.
We should also remember to prevent the user from posting / navigate the user away from the current group if the user moves to a location where she is not allowed to view the group anymore.
@RobZuazua @BSeroussi @rahuljaisimha
To add on to what we are talking about, here is the bootswatch styling that may make our lives quite a bit easier: https://bootswatch.com/ Take a look at the styles and let me know which one you like. I'm partial to Cosmo and Yeti for a business like feel or Superhero for a more.... blue-like feel. Let me know what you guys like. To implement it, all we have to do is download the css file. It also comes with a lot of premade things such as buttons/nav-bars/forms/alerts and so on.
@BSeroussi: I like Yeti
General notes. Please edit or comment on parts you like, dislike, or want to change.
From the browser
The following are routes that users can navigate to directly from the URL bar. There will also be links on the page for most of these, for instance: a
Sign Out
link.Login and front page
/
/sigin
/signout
We can go with whatever sign-in route conventions/names are easiest to set up with passport If an unauthenticated users visits the root url
/
, present the sign-in/registration page at/sigin
. If an authenticated user visits the root url/
, present the full chat applicationGroup urls
group/:groupname
For example,
group/gregory-gym
. The user will be able to see the messages in the Gregory Gym group ifCreating and removing groups can be done via a modal dialog as well?
User preferences
I believe we were planning on implementing user preferences using a modal dialog. Otherwise, a
/preferences
route seems decent.