# Soodogrowth — Phase 2 Plan: Admin Dashboard, CMS, Blog & Support Tickets

## Why this is a separate phase

Everything built so far is a **static marketing site** — pages that render
the same content for everyone, no login, no database. What's being scoped
here is a genuinely different kind of application: an **authenticated admin
area backed by a database**. That's not an extension of the current
codebase, it's a new layer underneath it. Worth being upfront about that
before committing time to it.

## What it needs, piece by piece

### 1. A database
Every feature below (blog posts, reviews, support tickets, portfolio items)
needs somewhere to live permanently. Recommended: **MySQL**, since Namecheap
cPanel includes MySQL databases at no extra cost — no new hosting bill.
Accessed via an ORM (Prisma) for type safety.

### 2. Admin authentication
A login screen only you and your partner can access. Not the same as a
"contact form" — this needs secure password hashing, session handling, and
protecting every admin route so the public can never reach it.

### 3. Blog + CMS
- Database table for posts (title, slug, body, cover image, published date, SEO metadata)
- Admin screens to create/edit/publish posts
- Public-facing `/blog` and `/blog/[slug]` pages, built for SEO (this is the
  part that can genuinely drive organic traffic over time — but it compounds
  over months of consistent publishing, not weeks)

### 4. Review moderation
- Public review submission form
- Admin screen to approve/reject before anything goes live on the site
  (this is what keeps the review section honest — nothing posts without
  your review)

### 5. Support tickets
- Contact/support form writes to a database instead of just emailing
- Admin inbox view to see and respond to messages
- This is a distinct feature from live chat (Tawk.to handles the *instant*
  conversations; this handles anything that comes in when no one's online)

### 6. Portfolio/project uploads
- Admin screen to add a project: title, description, images, tech stack, link
- Replaces manually editing code every time a new project is added

## Suggested build order

1. Database + admin login (foundation everything else sits on)
2. Blog + CMS (highest business value — this is the SEO engine)
3. Portfolio uploads (needed once real case studies are ready)
4. Review moderation
5. Support ticket inbox

## Honest scope estimate

This is realistically **several distinct builds**, not one sitting. Blog +
CMS alone is comparable in size to everything built so far combined. Good
approach: tackle it one numbered item at a time, fully working and tested,
before moving to the next — rather than trying to ship all five at once.

## What happens to Featured Projects and Reviews in the meantime

Until portfolio uploads exist, new projects get added the same way they have
been — as code, by hand. Until review moderation exists, real reviews (once
you have them) get added the same way. Neither is blocked on Phase 2 — Phase
2 just makes them self-service instead of requiring a code change each time.
