A full-stack micro-task platform where users can earn money by completing small tasks or post tasks to get work done by verified workers.
- Email:
admin.microtask@gmail.com - Password:
*******
- β Browse and filter available tasks by category
- β Submit task completions with detailed proof
- β Track submission status (pending/approved/rejected)
- β View earnings in coins (20 coins = $1)
- β Request withdrawal with minimum 200 coins ($10)
- β View withdrawal history and status
- β Complete profile management
- β Real-time notifications for approvals/rejections
- β Create tasks with detailed instructions
- β Set required workers and payable amount
- β Upload task images (ImgBB integration)
- β Review worker submissions
- β Approve/Reject submissions with coin rewards
- β Purchase coins via Stripe payment
- β View payment history and task statistics
- β Edit/Delete posted tasks
- β Complete platform overview dashboard
- β Manage all users (update roles, delete users)
- β Manage all tasks across platform
- β Process withdrawal requests (approve/reject)
- β View platform analytics and reports
- β Monitor platform growth and revenue
- π¨ Modern responsive design with Dark/Light theme
- π Secure JWT authentication
- π± Mobile-friendly responsive layout
- π Real-time notification system
- π Interactive dashboard with statistics
- π³ Stripe payment integration
- πΌοΈ Image upload with ImgBB
- π Pagination on all lists
- π Role-based access control (Worker/Buyer/Admin)
client/
βββ index.html # Main HTML entry
βββ package.json # Dependencies & scripts
βββ vite.config.js # Vite config
βββ tailwind.config.js # Tailwind config
βββ .env # Environment variables
βββ public/ # Static assets
β βββ favicon.svg
β βββ icons.svg
βββ src/
β βββ App.jsx # Main app component
β βββ main.jsx # Entry point
β βββ index.css # Global styles
β βββ App.css # App styles
β βββ context/ # React Context
β β βββ AuthContext.jsx
β βββ hooks/ # Custom hooks
β β βββ useRefreshUser.js
β βββ utils/ # Utilities
β β βββ api.js
β β βββ endpoints.js
βββ components/ # Reusable components
β β βββ shared/ # Navbar, Footer, Logo, NotificationBell, ProtectedRoute
β β βββ dashboard/ # DashboardLayout
β β βββ Home/ # HeroSlider, Banner, Features, TopWorker, PostedTasks
β βββ assets/ # Images (hero.png, react.svg, vite.svg)
β βββ hero.png
β βββ pages/ # Page components
β βββ Home.jsx
β βββ NotFound.jsx
β βββ auth/
β β βββ Login.jsx
β β βββ Register.jsx
β βββ dashboard/
β βββ admin/
β β βββ AdminHome.jsx
β β βββ AdminProfile.jsx
β β βββ ManageTasks.jsx
β β βββ ManageUsers.jsx
β β βββ ManageWithdrawals.jsx
β β βββ Reports.jsx
β βββ buyer/
β β βββ BuyerHome.jsx
β β βββ BuyerAddTask.jsx
β β βββ BuyerMyTasks.jsx
β β βββ BuyerReviewSubmissions.jsx
β β βββ BuyerPurchaseCoin.jsx
β β βββ BuyerPaymentHistory.jsx
β β βββ BuyerProfile.jsx
β β βββ BuyerTaskDetails.jsx
β βββ worker/
β βββ WorkerHome.jsx
β βββ WorkerTaskList.jsx
β βββ WorkerTaskDetails.jsx
β βββ WorkerSubmissions.jsx
β βββ WorkerSubmissionDetails.jsx
β βββ WorkerWithdrawals.jsx
β βββ WorkerProfile.jsx
βββ styles/ # CSS files
βββ home.css
- React 18 with Vite
- Tailwind CSS + DaisyUI
- React Router DOM v6
- React Hook Form
- Axios
- Lucide React Icons
- Swiper.js (Carousel)
- React Toastify
- Stripe.js
- Node.js with Express
- MongoDB with Mongoose
- JWT Authentication
- Bcrypt for password hashing
- Stripe API
- ImgBB API
- Frontend: Vercel
- Backend: Render / Cyclic
- Database: MongoDB Atlas
- Node.js (v18+)
- npm/yarn
git clone https://github.com/meherunnesaenta/Micro-task-platform.git
cd client
npm install
cp .env.example .envVITE_API_URL=http://localhost:5000/api
VITE_STRIPE_PUBLIC_KEY=pk_test_...
VITE_IMGBB_API_KEY=abc123...
Note: Replace with your actual keys
npm run devnpm run build
npm run previewBackend API: https://github.com/meherunnesaenta/Micro-task-platform-server
| Method | Endpoint | Description |
|---|---|---|
| POST | /api/auth/register |
Register |
| POST | /api/auth/login |
Login |
| GET | /api/tasks |
Get tasks |
| POST | /api/tasks |
Create task |
| PUT | /api/submissions/:id/approve |
Approve submission |
Worker:
ali.reza.work@gmail.com/Worker@123
Buyer:
techstart.buyer@gmail.com/Buyer@123
Admin:
admin.microtask@gmail.com/*****
- Frontend: https://github.com/meherunnesaenta/Micro-task-platform
- Backend: https://github.com/meherunnesaenta/Micro-task-platform-server
MIT License