How richardadeniji/kre8new works
KRE8 is a freelancer and creator marketplace. Users authenticate, build profiles and portfolios, discover or post gigs, apply and manage applications, then communicate and receive updates; admins oversee users and platform metrics. The React app routes users to these experiences, while the shared API client and Express backend connect them to marketplace services and PostgreSQL. The README documents further portfolio, real-time messaging, analytics and OAuth capabilities; sampled code confirms the routing, API methods, server entry point and file-storage integration, but not all wiring or implementation details.
Main entry points: server.js Express API server · App.js React app router · client.js Shared API client · auth.js Authentication API
Components 26
Web experience
- React app router
src/App.js - Sign in and signup
src/pages/AuthPage.jsx - Profile and portfolio
src/pages/Profile.js - Browse gigs
src/pages/GigsPage.js - Gig details
src/pages/GigDetails.js - Create gig
src/pages/CreateGigPage.js - Application management
src/pages/ApplicationManagement.js - Admin dashboard
src/pages/AdminDashboard.js
Accounts and profiles
- User state
src/context/UserContext.js - Authentication API
backend/routes/auth.js - User and profile API
backend/routes/users.js
Gig marketplace
- Gig and application API
backend/routes/gigs.js - Saved gigs API
backend/routes/savedGigs.js
Collaboration
- Messaging API
backend/routes/messages.js - Notifications API
backend/routes/notifications.js - Notification state
src/context/NotificationContext.js
Platform services
- Administration API
backend/routes/admin.js - Metrics API
backend/routes/stats.js - Express API server
backend/server.js - Shared API client
shared/api/client.js - PostgreSQL
- Cloudflare R2
- File storage service
backend/services/storage.js
Other components
- Creators and clients
- Google OAuth
- Resend email
Connections 37
- Creators and clients → React app router: use marketplace
- React app router → Sign in and signup: routes to
- React app router → Profile and portfolio: routes to
- React app router → Browse gigs: routes to
- React app router → Gig details: routes to
- React app router → Create gig: routes to
- React app router → Application management: routes to
- React app router → Admin dashboard: routes to
- Sign in and signup → User state: updates account state
- Profile and portfolio → Shared API client: requests profile data
- Browse gigs → Shared API client: requests gigs
- Gig details → Shared API client: requests gig details
- Create gig → Shared API client: submits gig
- Application management → Shared API client: manages applications
- Admin dashboard → Shared API client: requests admin data
- Shared API client → Express API server: sends API requests
- Express API server → Authentication API: dispatches auth
- Express API server → User and profile API: dispatches users
- Express API server → Gig and application API: dispatches gigs
- Express API server → Saved gigs API: dispatches saved gigs
- Express API server → Messaging API: dispatches messages
- Express API server → Notifications API: dispatches notifications
- Express API server → Administration API: dispatches admin
- Express API server → Metrics API: dispatches metrics
- Authentication API → PostgreSQL: reads and writes
- User and profile API → PostgreSQL: reads and writes
- Gig and application API → PostgreSQL: reads and writes
- Saved gigs API → PostgreSQL: reads and writes
- Messaging API → PostgreSQL: reads and writes
- Notifications API → PostgreSQL: reads and writes
- Administration API → PostgreSQL: reads and writes
- Metrics API → PostgreSQL: queries metrics
- Authentication API → Google OAuth: OAuth authentication
- User and profile API → File storage service: uploads profile files
- File storage service → Cloudflare R2: uploads and deletes
- Notification state → Shared API client: loads notifications
- Notifications API → Resend email: sends email