# Development & Deployment Checklist

## Pre-Development

- [ ] Design approved
- [ ] Branding assets collected (logo, favicon, colors)
- [ ] Content strategy defined
- [ ] URL structure mapped

## Development

### Setup
- [ ] Astro project initialized
- [ ] Tailwind CSS configured
- [ ] Brand colors added to theme
- [ ] Fonts configured (Noto Sans Thai, Kanit)
- [ ] Layout component created

### Pages
- [ ] Homepage created
- [ ] Service pages created (5 pages)
- [ ] About page created
- [ ] Contact page created
- [ ] Blog listing created
- [ ] Legal pages created (Terms, Privacy)

### Features
- [ ] Responsive design (mobile, tablet, desktop)
- [ ] Dark mode support (if applicable)
- [ ] Navigation working
- [ ] Footer working
- [ ] Social links working
- [ ] Contact form/embed working

### Content
- [ ] All content migrated from old site
- [ ] Images optimized
- [ ] Meta tags set for all pages
- [ ] Thai language content correct

### Testing
- [ ] Build succeeds: `npm run build`
- [ ] Docker build succeeds
- [ ] All pages load correctly
- [ ] Links work (no 404s)
- [ ] Mobile responsive
- [ ] Cross-browser tested

## Deployment Setup

### Docker
- [ ] Dockerfile created
- [ ] Multi-stage build configured
- [ ] Port 4321 exposed
- [ ] Image builds locally
- [ ] Container runs successfully

### Gitea
- [ ] Repository created on gitea.moreminimore.com
- [ ] Initial code pushed
- [ ] `.gitignore` configured
- [ ] Branch protection set (main)

### Easypanel
- [ ] Project created
- [ ] Service configured
- [ ] Gitea repository connected
- [ ] Docker settings correct
- [ ] Auto-deploy enabled
- [ ] Environment variables set (if any)

### SSL/DNS
- [ ] SSL certificate provisioned
- [ ] DNS configured
- [ ] HTTPS working
- [ ] HTTP redirects to HTTPS

## Post-Deployment

### Verification
- [ ] Website accessible via URL
- [ ] All pages load
- [ ] No console errors
- [ ] Images load correctly
- [ ] Forms work (if applicable)

### Performance
- [ ] Page load time < 3s
- [ ] Lighthouse score > 90
- [ ] Images optimized
- [ ] No unnecessary JavaScript

### SEO
- [ ] Meta titles unique per page
- [ ] Meta descriptions set
- [ ] Open Graph tags working
- [ ] Sitemap generated (if applicable)
- [ ] robots.txt configured

### Monitoring
- [ ] Analytics installed
- [ ] Error tracking configured (if applicable)
- [ ] Uptime monitoring set up

## Maintenance

### Regular Updates
- [ ] Dependencies updated monthly
- [ ] Security patches applied
- [ ] Content updated as needed
- [ ] Broken links checked quarterly

### Backups
- [ ] Content backed up
- [ ] Database backed up (if applicable)
- [ ] Configuration backed up

### Rollback Plan
- [ ] Previous versions documented
- [ ] Rollback procedure tested
- [ ] Team knows rollback process

## Documentation

- [ ] DEPLOYMENT.md created
- [ ] CONTENT-GUIDE.md created
- [ ] CHECKLIST.md created
- [ ] README.md updated

## Handoff

- [ ] Client trained on content updates
- [ ] Credentials shared securely
- [ ] Support contacts provided
- [ ] Maintenance plan agreed

---

## Quick Deploy Checklist

For routine updates:

- [ ] Changes tested locally
- [ ] `npm run build` succeeds
- [ ] Commit with clear message
- [ ] Push to `main`
- [ ] Monitor Easypanel build logs
- [ ] Verify on production
- [ ] Report any issues

---

**Last Updated**: 2026-03-03  
**Project**: MoreminiMore Redesign  
**Status**: ✅ Ready for deployment
