How robiul178/inboxdoller works
InboxDoller is a role-based task marketplace: users register or sign in, creators spend coins to post and manage tasks, workers find tasks and submit completed work, and administrators manage users and tasks. Users can buy coins by card and workers can request withdrawals; the README documents coin adjustments when tasks are added or completed. The route table exposes these role-specific dashboard areas. Some page implementations were not sampled, so links to their features are based on the route table or README rather than inferred internal calls.
Main entry points: main.jsx Route application · CheckoutForm.jsx Card checkout · AddNewTask.jsx Create task · AuthProvider.jsx Authentication provider
Components 29
Identity and access
- Authentication provider
src/Components/AuthProvider/AuthProvider.jsx - Firebase auth config
src/Components/Firebase/firebase.config.js - Sign in
src/Components/Pages/Authentication/SingIn/SingIn.jsx - Registration and role choice
src/Components/Pages/Authentication/SingUp/SingUp.jsx - Private route guard
src/Components/PrivateRoute/PrivateRoute.jsx
Task marketplace
- Create task
src/Components/Pages/Dashboard/TaskCreator/AddNewTask/AddNewTask.jsx - Manage creator tasks
src/Components/Pages/Dashboard/TaskCreator/MyTasks/MyTasks.jsx - Browse task list
src/Components/Pages/Dashboard/Workers/TaskList/TaskList.jsx - Task details and completion
src/Components/Pages/Dashboard/Workers/TaskList/TaskDetails/TaskDetails.jsx - Worker submissions
src/Components/Pages/Dashboard/Workers/MySubmission/MySubmission.jsx
Coins and payments
- Coin balance
src/Components/Hooks/useCoin.jsx - Purchase coins
src/Components/Pages/Dashboard/TaskCreator/PurchaseCoin/PurchaseCoin.jsx - Card checkout
src/Components/CheckoutForm/CheckoutForm.jsx - Stripe payments
- Payment history
src/Components/Pages/Dashboard/TaskCreator/PaymentHistory/PaymentHistory.jsx - Worker withdrawals
src/Components/Pages/Dashboard/Workers/Withdrawals/Withdrawals.jsx
Role dashboards
- Role-based dashboard
src/Components/Pages/Dashboard/Dashboard.jsx - Creator dashboard
src/Components/Pages/Dashboard/TaskCreator/TaskCreator.jsx - Admin dashboard
src/Components/Pages/Dashboard/Admin/Admin.jsx - Manage users and tasks
src/Components/Pages/Dashboard/Admin - Worker dashboard
src/Components/Pages/Dashboard/Workers/Workers.jsx
Site navigation
- Route application
src/main.jsx - Navbar and footer
src/Components/Routes/Routes.jsx - Landing and job discovery
src/Components/Pages/Home/Home.jsx
Other components
- Visitor
- Task creator
- Worker
- Administrator
- Marketplace API
Connections 41
- Visitor → Route application: opens
src/main.jsx - Route application → Navbar and footer: routes to
src/main.jsx - Route application → Landing and job discovery: routes to
src/main.jsx - Route application → Sign in: routes to
src/main.jsx - Route application → Registration and role choice: routes to
src/main.jsx - Route application → Authentication provider: provides auth
src/main.jsx - Authentication provider → Firebase auth config: uses
src/Components/AuthProvider/AuthProvider.jsx - Sign in → Authentication provider: uses auth
src/Components/Pages/Authentication/SingIn/SingIn.jsx - Registration and role choice → Authentication provider: uses auth
src/Components/Pages/Authentication/SingUp/SingUp.jsx - Route application → Private route guard: guards dashboard
src/main.jsx - Private route guard → Role-based dashboard: renders
src/main.jsx - Route application → Creator dashboard: routes to
src/main.jsx - Route application → Admin dashboard: routes to
src/main.jsx - Route application → Worker dashboard: routes to
src/main.jsx - Route application → Create task: routes to
src/main.jsx - Route application → Manage creator tasks: routes to
src/main.jsx - Route application → Browse task list: routes to
src/main.jsx - Route application → Task details and completion: routes to
src/main.jsx - Route application → Worker submissions: routes to
src/main.jsx - Route application → Purchase coins: routes to
src/main.jsx - Route application → Payment history: routes to
src/main.jsx - Route application → Manage users and tasks: routes to
src/main.jsx - Route application → Worker withdrawals: routes to
src/main.jsx - Task creator → Create task: creates
README.md - Create task → Marketplace API: posts task
- Task creator → Manage creator tasks: manages
src/Components/Pages/Dashboard/TaskCreator/MyTasks/MyTasks.jsx - Manage creator tasks → Marketplace API: reads and updates
src/Components/Pages/Dashboard/TaskCreator/MyTasks/MyTasks.jsx - Worker → Browse task list: finds tasks
- Browse task list → Task details and completion: opens task
src/main.jsx - Worker → Worker submissions: views submissions
- Create task → Coin balance: reduces balance
README.md - Task details and completion → Coin balance: credits completion
README.md - Purchase coins → Card checkout: starts checkout
- Card checkout → Stripe payments: confirms card payment
src/Components/CheckoutForm/CheckoutForm.jsx - Card checkout → Marketplace API: records payment
src/Components/CheckoutForm/CheckoutForm.jsx - Card checkout → Marketplace API: adds coin balance
src/Components/CheckoutForm/CheckoutForm.jsx - Payment history → Marketplace API: reads history
- Worker → Worker withdrawals: requests withdrawal
- Worker withdrawals → Marketplace API: submits request
- Administrator → Manage users and tasks: manages accounts
- Manage users and tasks → Marketplace API: loads users and tasks
src/Components/Pages/Dashboard/Admin/ManageUsers/ManageUsers.jsx