Zabwino Deals is a classified ad listing site designed for the people of Malawi. On this platform, users can engage with sellers through chat or become sellers themselves. The site's database is powered by MongoDB, which handles data storage for chats, categories, reviews, and more. All uploaded photos are stored on Cloudinary.
-
User Registration and Login: Users can register and log in to buy or sell items. Phone number is required during registration.
-
Reporting and Reviews: Buyers can submit reports and reviews, which impact their reputation on the site.
-
Notifications: Sellers and buyers receive notifications with sound when they receive reviews or messages.
-
Product Listings: Sellers can provide details such as location, category, condition, name, price, and upload small-sized photos for their listings.
-
Approval Process: All listings require approval. Administrators can approve, deny, or add new locations and categories via the admin panel without the need to access the database directly.
-
Favorites: Users can add products to their favorites list, which they can view on their profile.
-
Profile Editing: Users can edit their name (not username, as it's disabled), profile photo, email, phone number, and password.
-
Seller Dashboard: In the seller dashboard, users can track the status of their products, whether they are under review, denied, or approved.
-
Platform Testing: This project has been tested on render.com and Windows Server 2019.
-
Windows Server 2019 Setup: If you plan to use Windows Server 2019, you need to enable WebSockets and URL forwarding. For example, you can set up URL forwarding with the pattern "(.*)" to redirect to "http://localhost:8000/{R:1}".
-
Production Environment: In the production environment, the backend and frontend work together seamlessly. For better GitHub markdown formatting, you can present the environment variable setup instructions as follows:
In the root folder of the project, create a .env
file and define the following variables:
CONNECTION_URL=
PORT=8000
JWT_SECRET=JKDFKJU43809445aHUH3IUHUI
NODE_ENV=production
CLOUD_NAME=
CLOUDINARY_API_KEY=
CLOUDINARY_API_SECRET=
These environment variables are essential for configuring the backend of the application.
In the client folder, create an .env
file with the following example variable:
REACT_APP_API=http://localhost:8000/api
This environment variable is required to set up the client-side of the application and should point to the API endpoint.
Here are various images showcasing different aspects of the Zabwino Deals website:
These images provide a visual insight into the different aspects of the Zabwino Deals website.
This work is licensed under a Creative Commons Attribution-NonCommercial-ShareAlike 4.0 International License.
Zabwino Deals is your go-to platform for classified ads in Malawi, providing a user-friendly experience for both buyers and sellers.