My portfolio/blog website built with MERN stack and Typescript.
- Dark/Light themes
- Authentication with Github/Google
- Nested comments support for users
- Markdown text editor for blogs & project articles
- React with Typescript
- Styled Components for styling
- React Query for asynchronous data
- Highlight.js for code highlightning
- Session authentication with Passport.js
- Data/Session is stored in MongoDB
- Contact emails are sent by nodemailer
- Recaptcha verification for contact messages
- Cloudinary for image uploading/storage
- Express with Typescript
- Mongoose to manage MongoDB
- Vitest for testing
- Redis for caching