Back to projects
Vite
React
Tailwind CSS
MongoDB
Mongoose
Express
JWT
Axios
React Router
Coolify
This is my first full-stack app. A great opportunity to apply everything that I have learned during the bootcamp. For the frontend, I decided to fetch data on the client with Axios with caching implementation. I also used hooks when needed to prevent unnecessary re-rendering (useMemo and useCallback). For the backend, I used a combination of Express.js, Mongoose, and MongoDB for managing the listings. I also added an authentication and authorization system with JWT. It is not the best, but I wanted to learn about that. I also used Coolify to manage the backend that I host on a VPS.
Features
- Fetching data: Fetch data on the client with Axios with caching implementation.
- Authentication/Authorization: Allow users to sign up and log in.
- Favorites: Allow users to add and remove favorites with persistence.
Technologies
- Vite: A build tool for modern web development.
- React: A JavaScript library for building user interfaces.
- Tailwind CSS: A utility-first CSS framework for building custom designs.
- MongoDB: A NoSQL database for storing and retrieving data.
- Mongoose: An Object Data Modeling (ODM) library for MongoDB and Node.js.
- Express: A web application framework for Node.js.
- JWT: A JSON Web Token library for Node.js.
- Axios: A promise-based HTTP client for the browser and Node.js.
- React Router: A library for routing in React.
- Coolify: self-hosted solution for managing servers and databases.