Add deployment and content documentation

This commit is contained in:
MoreminiMore
2026-04-22 06:57:23 +07:00
parent 1f12c8de60
commit f3ef4ab858
3 changed files with 339 additions and 0 deletions

98
CHECKLIST.md Normal file
View File

@@ -0,0 +1,98 @@
# Website Launch Checklist - MoreminiMore
## Pre-Launch
### Code & Build
- [x] Astro 6 project created
- [x] All pages designed and implemented
- [x] Content migrated from old website
- [x] Images generated for all pages
- [x] Dependencies installed and verified
- [x] Build successful (`npm run build`)
- [x] Code pushed to Gitea
### Functionality
- [ ] Test contact form submission
- [ ] Verify cookie consent works
- [ ] Check all internal links
- [ ] Verify blog post images load
- [ ] Test mobile responsive layout
### SEO
- [ ] Sitemap generated
- [ ] robots.txt configured
- [ ] Meta descriptions on all pages
- [ ] OG images set (if using social sharing)
## Deployment
### Easypanel
- [x] Service created
- [x] Git repository connected
- [x] Build configuration set
- [ ] Deployment successful (blocked - Docker issue)
- [ ] Domain configured (if applicable)
- [ ] SSL certificate active (if applicable)
### Post-Deploy Verification
- [ ] Site accessible at deployment URL
- [ ] All pages load correctly
- [ ] Images display properly
- [ ] Forms work (contact)
- [ ] Cookie consent appears
- [ ] Mobile experience tested
## Legal Compliance (PDPA)
- [x] Privacy Policy page created
- [x] Terms of Service page created
- [x] Cookie consent mechanism implemented
- [ ] Consent logs page accessible at `/admin/consent-logs`
- [ ] Privacy policy reviewed by legal team
- [ ] Terms of service reviewed by legal team
## Analytics
- [ ] Umami tracking code installed
- [ ] Analytics verified working
- [ ] Dashboard accessible
## Post-Launch
### Monitoring
- [ ] Set up uptime monitoring
- [ ] Configure error tracking
- [ ] Check analytics data after 24 hours
### Backup & Maintenance
- [ ] Regular backup schedule configured
- [ ] Update schedule established
- [ ] Monitoring alerts set up
## Team Access
- [ ] Developer access to Easypanel
- [ ] Developer access to Gitea
- [ ] Access to analytics dashboard
- [ ] Contact information updated
## Emergency Contacts
| Role | Contact | Notes |
|------|---------|-------|
| Server Admin | Internal | Easypanel issues |
| Developer | Current team | Code/build issues |
| Legal | TBD | PDPA compliance |
## Quick Links
- **Gitea Repository**: https://git.moreminimore.com/kunthawat/moreminimore-new
- **Easypanel**: http://110.164.146.47:3000
- **Project**: moreminimore-newastro
- **Service**: moreminimore-newastro
## Notes
- Deployment is currently blocked by Docker infrastructure issues on Easypanel
- Local build is verified working
- Code is pushed to Gitea and ready for deployment

157
CONTENT-GUIDE.md Normal file
View File

@@ -0,0 +1,157 @@
# Content Guide - MoreminiMore Website
## Overview
This website uses Astro 6 with Content Collections for managing blog posts and pages.
## Content Structure
```
src/content/
├── blog/
│ ├── post-1.md
│ ├── post-2.md
│ └── ...
└── config.ts # Content collection definitions
```
## Adding New Blog Posts
1. Create a new `.md` file in `src/content/blog/`
2. Use the frontmatter template below:
```markdown
---
title: "Your Post Title"
description: "SEO description for this post"
pubDate: 2026-04-22
image: "/images/blog/your-image.jpg"
tags: ["tag1", "tag2"]
---
Your content here...
```
## Frontmatter Fields
| Field | Type | Required | Description |
|-------|------|----------|-------------|
| `title` | string | Yes | Post title |
| `description` | string | Yes | SEO meta description |
| `pubDate` | Date | Yes | Publication date |
| `image` | string | Yes | Hero image path (16:9 recommended) |
| `tags` | string[] | No | Tags for categorization |
## Images
### Blog Post Images
- Location: `public/images/blog/`
- Aspect ratio: 16:9
- Recommended size: 1200x675px or larger
- Formats: JPG, PNG, WebP
### Service Page Images
- Location: `public/images/services/`
- Each service has dedicated images:
- `hero.jpg` - Hero section
- `about.jpg` - About section
- `feature-1.jpg`, `feature-2.jpg`, etc.
### Homepage Images
- Location: `public/images/`
- `hero-home.jpg` - Main hero
- `about-home.jpg` - About section
- `contact-home.jpg` - Contact section
## Page Structure
### Static Pages
- `src/pages/index.astro` - Homepage
- `src/pages/about-us.astro` - About page
- `src/pages/contact-us.astro` - Contact page
- `src/pages/faq.astro` - FAQ page
- `src/pages/portfolio.astro` - Portfolio page
### Service Pages
- `src/pages/web-development.astro`
- `src/pages/marketing-automation.astro`
- `src/pages/ai-automation.astro`
- `src/pages/tech-consult.astro`
### Blog
- `src/pages/blog/index.astro` - Blog listing
- `src/pages/blog/[slug].astro` - Individual post (dynamic)
### Legal
- `src/pages/privacy-policy.astro`
- `src/pages/terms-and-conditions.astro`
### Admin
- `src/pages/admin/consent-logs.astro` - Cookie consent logs
## Content Collections (Astro DB)
### Blog Collection
```typescript
const blogCollection = defineCollection({
type: 'content',
schema: z.object({
title: z.string(),
description: z.string(),
pubDate: z.date(),
image: z.string(),
tags: z.array(z.string()).optional(),
}),
});
```
## Adding New Pages
1. Create `.astro` file in `src/pages/`
2. Import and use Layout:
```astro
---
import Layout from '../layouts/Layout.astro';
---
<Layout title="Page Title" description="SEO description">
<main>
<!-- Your content -->
</main>
</Layout>
```
## SEO Best Practices
1. **Title**: Keep under 60 characters
2. **Description**: Keep under 160 characters
3. **Images**: Always include alt text
4. **Headings**: Use proper heading hierarchy (h1 → h2 → h3)
## Thai Content
All content is in Thai language. When adding new content:
- Use Thai characters
- Follow Thai writing conventions
- Include Thai punctuation
## Testing Content
```bash
# Run development server
npm run dev
# Build for production
npm run build
# Preview production build
npm run preview
```
## Content Review Checklist
Before publishing:
- [ ] Proofread Thai content
- [ ] Check all images load correctly
- [ ] Verify links work
- [ ] Test on mobile view
- [ ] Check page titles and descriptions

84
DEPLOYMENT.md Normal file
View File

@@ -0,0 +1,84 @@
# Deployment Guide - MoreminiMore New Website
## Quick Deploy
### Prerequisites
- Easypanel server running at `http://110.164.146.47:3000`
- Gitea repository: https://git.moreminimore.com/kunthawat/moreminimore-new
### Deployment Steps
1. **Open Easypanel Dashboard**
URL: http://110.164.146.47:3000
2. **Navigate to Project**
- Project: `moreminimore-newastro`
- Service: `moreminimore-newastro`
3. **Trigger Deployment**
- Click "Deploy" button in the dashboard
- Or use API:
```bash
curl -X POST "http://110.164.146.47:3000/api/trpc/services.app.deployService" \
-H "Authorization: Bearer YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{"json":{"projectName":"moreminimore-newastro","serviceName":"moreminimore-newastro","forceRebuild":true}}'
```
4. **Monitor Deployment**
- Check logs in Easypanel dashboard
- Build takes ~2-3 minutes
## Build Configuration
- **Build Type**: Nixpacks (Astro detection)
- **Node Version**: 20-alpine (via nixpacks)
- **Port**: 4321 (Astro default)
- **Build Command**: `npm run build`
- **Output Directory**: `dist/`
## Environment Variables
The following are set automatically by Nixpacks:
- `PORT=4321`
- `NODE_ENV=production`
No additional environment variables required.
## Troubleshooting
### Docker Build Failing
If you see `docker buildx build` errors:
1. Check Easypanel server Docker daemon is running
2. Try redeploying after a few minutes
3. Contact server administrator if issue persists
### Build Timeout
- Nixpacks build timeout: 15 minutes
- If build takes longer, check npm dependencies
### Port Issues
- Default Astro port: 4321
- If 4321 is in use, set `PORT` env var
## Manual Build (Alternative)
If Easypanel deployment fails, build locally:
```bash
cd /Users/kunthawatgreethong/Gitea/moreminimore-new
npm run build
```
Then deploy the `dist/` folder manually via SFTP or other method.
## Service Details
| Property | Value |
|----------|-------|
| Project | moreminimore-newastro |
| Service | moreminimore-newastro |
| Type | app |
| Build | nixpacks |
| Git | https://git.moreminimore.com/kunthawat/moreminimore-new |
| Branch | main |