Blogoo is a blog website where users can create, read, and manage blog posts. It is built with React, TypeScript, Recoil for the frontend, and Express, TypeScript, Zod for input validation, JWT tokens for authentication, and MongoDB with Mongoose for the backend.
The project follows a structure with separate folders for the frontend and backend:
- client: Contains the React TypeScript application using Recoil for state management.
- server: Houses the Express TypeScript server with Zod for input validation, JWT tokens for authentication, and MongoDB with Mongoose for the database.
- React: A JavaScript library for building user interfaces.
- TypeScript: A superset of JavaScript that adds static typing.
- Recoil: A state management library for React applications.
- Express: A fast, unopinionated, minimalist web framework for Node.js.
- TypeScript: TypeScript for a more robust and scalable backend.
- Zod: A TypeScript-first schema declaration and validation library.
- JWT (JSON Web Tokens): A compact, URL-safe means of representing claims to be transferred between two parties.
- MongoDB: A NoSQL database.
- Mongoose: An ODM (Object Data Modeling) library for MongoDB and Node.js.
Blogoo uses MongoDB as its database, and Mongoose is employed as an ODM for interacting with MongoDB.