Due to the new updates on AWS my demo no longer runs as it did previously 😞, maybe in the near future I may have time to update my Elastic Beanstalk & S3 buckets.
- This project is a blog page, which displays a feed with all the posts from different users, which can be sorted by pagination. The application has user authentication and authorisation, Bcrypt was used to encrypt user passwords. The application allows users to create/update/delete their posts (CRUD). Each post has a file upload which has a validation class, which only accepts image type files. I created a multer class (server side) which checks the MIME type of a file and only accepts jpg/png/jpeg files. I used Jason Web Token (JWT) for user login sessions, so that they expire after the set time. The project was hosted on AWS, the server side was deployed on Elastic Beanstalk and the front end was deployed on S3.
- Node - learnt its core functions, I understand how file requests work and I learnt how to connect Node with MongoDB. I used mongoose to create new schemas and collections.
- Express - learnt how to handle request and routes, I used middleware to check user authorisation and file upload.
- File validation - When uploading a file I learnt how to check a MIME type of a file, then validate the files by setting file types which are valid, e.g. JPEG.
- JWT - I was able to learn how to create JWT sessions and set the timer so when the JWT expires the user will automatically be logged out.
- Bcrypt - encrypt user passwords.
- AWS (Amazon Web Service) - I learnt how to host/deploy the server side (Elastic Beanstalk) and the front end (S3).
- Angular 7
- Node
- MongoDB
- Express
- Bcrypt
- JWT
- Mongoose
- AWS