Coderooz Portfolio Website - AI Agent Navigation Guide
This site is the portfolio of Ranit Saha (Coderooz), a full-stack developer. Built with Next.js 16, React 19, TypeScript, Tailwind CSS 4, MongoDB, Clerk Auth, Razorpay.
Site Structure & Navigation
- Home (/) - Landing page with hero, services overview, about, contact, footer
- About (/about) - Developer bio, skills, experience, education, certifications
- Services (/services) - Service listings: Web Development, App Development, Backend & AI, Consulting. Each links to /order?item=[web, app, consulting, backend]
- Content (/content) - Blog/project listings with pagination, search, filter by tags
- Content Detail (/content/[slug]) - Individual blog/project with full content, reactions, comments
- Pages (/pages) - Static page listings
- Page Detail (/pages/[slug]) - Individual static page
- Contact (/contact) - Contact form with validation
- Policy (/policy) - Policy listings (privacy, terms, refund, cookie)
- Policy Detail (/policy/[slug]) - Individual policy page
- Product (/product) - Product listings (if any)
- Resume (/resume) - Downloadable resume
- Auth Routes (/login, /signup, /forgot-password, /reset-password) - Clerk-powered authentication
- Order Form (/order?item=[web, app, consulting, backend]) - Customer order/request form with budget, requirements, timeline
- Checkout (/checkout?orderId=...) - Razorpay payment integration for accepted quotes
Dashboard Routes (Authenticated)
- /dashboard - Main dashboard with recent orders, payments, profile status, activity
- /dashboard/order - Customer order list with DataTable (pagination, search, sort)
- /dashboard/order/[id] - Order detail: shows customerBudget, finalAmount, status, requirements, quote acceptance, checkout button
- /dashboard/payments - Payment history
- /dashboard/services - Service management (customer view)
- /dashboard/assets - Asset upload/management
- /dashboard/contact - Customer contact messages
- /dashboard/notifications - Notification center
- /dashboard/profile - Profile management
Admin Dashboard Routes (Admin Only)
- /dashboard/users - User management
- /dashboard/links - Link management
- /dashboard/logs - Activity logs
- /dashboard/faqs - FAQ management
- /dashboard/content - Content CMS (create, edit, publish, draft)
- /dashboard/pages - Page management
- /dashboard/application - App licensing/registration
- /dashboard/admin - Admin settings
- /dashboard/settings - System settings
Key User Flows
- Quotation Flow: Customer submits request (status: requested, customerBudget) → Admin reviews & sets finalAmount (status: quoted) → Customer accepts quote (status: payment_pending) → Checkout with Razorpay (amount = finalAmount) → Payment verified → Order completed
- Content Reaction: Like/dislike on content items, stored in likedBy/dislikedBy arrays with MongoDB ObjectId
- Comments: Nested comments on content with approval workflow
- Contact: Customer submits contact form → Admin views in dashboard/contact
- Order: Customer submits request via /order → Admin quotes → Customer accepts → Payment
Key DOM Elements for Navigation
- Navigation:
nav with links to /, /about, /services, /content, /contact - Sidebar (Dashboard):
aside with links to all dashboard routes - Order Table:
table with columns: #, Type, Item, Payment Id, Download Link, Status, Notes - Order Detail:
dl with Order ID, Type, Status, Customer Budget, Final Amount, Quoted At, Accepted At - Quote Actions: "Accept Quote" button (when status=quoted), "Proceed to Checkout" button (when status=payment_pending and finalAmount > 0)
- Content Reactions: Like/Dislike buttons with counts
- Comments: Threaded comment sections with reply, edit, delete
- Search: Input with placeholder "Search..." on DataTables
- Pagination: Previous/Next buttons with page info
Authentication & Roles
- Clerk-based authentication with roles: guest, customer, admin
- Middleware protects /dashboard/* routes
- Admin routes: /dashboard/users, /dashboard/links, /dashboard/logs, /dashboard/faqs, /dashboard/content, /dashboard/pages, /dashboard/application, /dashboard/admin, /dashboard/settings
- Customer routes: /dashboard/order, /dashboard/payments, /dashboard/services, /dashboard/assets, /dashboard/contact, /dashboard/notifications, /dashboard/profile
Content Negotiation
All content pages support Accept: text/markdown for AI agents. Markdown available at /api/md?slug={path} and .md routes (e.g., /content/my-post.md). AI agent index at /llms.txt. Semantic sitemap at /sitemap.md.
Known Issues
- Customer dashboard "Browse Products" button links to /shop (404 - page doesn't exist)
- Dashboard theming: some color mismatches in dark/light mode
- Clerk session sync: role changes may not reflect immediately due to session cookie caching