Open BarneyShi opened 3 years ago
CSID: c2o7
What did you work on this past iteration (2 weeks)?
What were any major issues/challenges you ran into?
What do you plan to work on for this coming iteration (2 weeks)?
csid: s7j1b
What I worked on this past iteration (2 weeks): I worked on registering and logging users with the use of the MongoDB database. I also worked on user authentication using JSON web tokens (JWTs) and learned how to protect certain routes/functions on the website.
Major issues/challenges I ran into: JWTs were new to me so it took a long time to feel like I understood them enough to start implementing them. I also ran into issues trying to access the token when trying to authenticate the user as well as the current user (hen trying to add conditional rendering to my front-end, but I was able to figure out workarounds for these problems.
What I plan to work on for this coming iteration (2 weeks): I plan to ensure that the jwt login/user authentication methods I have now are safe and do not expose user info. Other things I may add are: making a user account page that will show logged-in users their posts or ability to edit their information; adding an admin user; integrating other ways of logging in (e.g. Facebook, Google); a more robust password strength validator; a 'Forgot Password' feature; refresh tokens that will minimize the number of times a user has to login.
CSID: f0z1b
What did you work on this past iteration (2 weeks)? Made GET requests to filter posts according to location, price, category and users. (List of posts by a single user, List of posts filtered by price/location when searching)
What were any major issues/challenges you ran into? There was a bug in the location filtering. And learning how to get data also took me some time
What do you plan to work on for this coming iteration (2 weeks)? I plan to complete the search filtering by typing words / terms directly into the search box
csid: n0k2b
post
wasundefined
at first because it'd be only set after executing anasync
function. I had to use a flagloaded
to determine whether it had been set bysetPost
hook. Then I usedsetLoaded(true)
to conditionally render my components. Whenloaded
is false, a loading spinner will be rendered while waiting forfetch
to finish.useState
, it wouldn't be updated because you can only get the new value after a re-render. Good to know this.heroku
with github actions.