chore: update infrastructure configs, audit docs, and env template

- Update Docker Compose configs for Redis, Typesense, and MinIO services
- Update GitHub Actions deploy workflow with improved caching and steps
- Extend .env.example with Stringee, Zalo OA, and FCM config keys
- Update audit documentation with latest findings and recommendations
- Update CHANGELOG and README with recent feature additions

Co-Authored-By: Paperclip <noreply@paperclip.ing>
This commit is contained in:
Ho Ngoc Hai
2026-04-16 05:16:42 +07:00
parent 53c33a1c50
commit e78d706b42
26 changed files with 150 additions and 55 deletions

View File

@@ -1,6 +1,6 @@
# GoodGo Platform Frontend - Comprehensive Accessibility Audit Report
**Date:** April 10, 2026
**Audited:** apps/web (Next.js 14)
**Audited:** apps/web (Next.js 15)
**Total Files Analyzed:** 90+ TSX/JSX files
**ARIA Attributes Found:** 75 instances across 14 files
@@ -1538,7 +1538,7 @@ function Dialog({ open, onOpenChange, children }: DialogProps) {
**Generated:** April 10, 2026
**Auditor:** Accessibility Compliance Team
**Codebase:** GoodGo Platform (apps/web)
**Framework:** Next.js 14
**Framework:** Next.js 15
**Language:** Vietnamese (Primary) & English
**Distribution:**

View File

@@ -2,7 +2,7 @@
**Audit Date:** April 10, 2026
**Platform:** GoodGo Real Estate Platform (Vietnam)
**Framework:** Next.js 14
**Framework:** Next.js 15
**Scope:** apps/web (Frontend)
---
@@ -290,7 +290,7 @@ Good Practice Examples:
|-------|-------|
| Audit Date | April 10, 2026 |
| Platform | GoodGo Real Estate |
| Framework | Next.js 14 |
| Framework | Next.js 15 |
| Scope | apps/web Frontend |
| Files Analyzed | 90+ TSX/JSX |
| ARIA Instances | 75 |

View File

@@ -303,7 +303,7 @@ aria-pressed={index === selectedIndex}
## 📝 Notes
**Audit Scope:** apps/web (Next.js 14 frontend)
**Audit Scope:** apps/web (Next.js 15 frontend)
**Files Analyzed:** 90+ TSX/JSX files
**Time to Achieve AA Compliance:** 4-6 days full-time
**Ongoing Maintenance:** Add to CI/CD, developer training recommended

View File

@@ -2,7 +2,7 @@
**Date:** April 11, 2026
**Scope:** Full stack exploration for implementing `/agents/[id]` public profile page
**Codebase:** GoodGo Platform (Next.js 14 + NestJS 10 + PostgreSQL + Prisma)
**Codebase:** GoodGo Platform (Next.js 15 + NestJS 10 + PostgreSQL + Prisma)
---
@@ -11,7 +11,7 @@
### File Structure
```
apps/web/
├── app/ # Next.js 14 App Router (Server Components)
├── app/ # Next.js 15 App Router (Server Components)
│ ├── [locale]/ # Internationalization (i18n) at root level
│ │ ├── (admin)/ # Admin routes (protected)
│ │ ├── (auth)/ # Auth routes (sign-in, etc.)

View File

@@ -100,7 +100,7 @@ New Endpoint: GET /api/v1/agents/:agentId/profile
└── Implementation: PrismaAgentRepository
```
### Frontend (Next.js 14)
### Frontend (Next.js 15)
```
Route: /agents/[id]

View File

@@ -206,7 +206,7 @@
## 🛠️ TECH STACK SUMMARY
**Backend:** NestJS 11 + Prisma 7 + PostgreSQL 16 + PostGIS 3.4
**Frontend:** Next.js 14 + React 18 + Tailwind CSS + Zustand
**Frontend:** Next.js 15 + React 18 + Tailwind CSS + Zustand
**Testing:** Vitest + Jest + Playwright
**DevOps:** GitHub Actions + Docker + Kubernetes
**Monitoring:** Prometheus + Grafana + Loki + Sentry

View File

@@ -188,7 +188,7 @@ Push → Lint (2m) → Typecheck (2m) → Test (4m) → Build (3m) → E2E (8m)
## TECH STACK HIGHLIGHTS
**Backend:** NestJS 11 + Prisma 7 + PostgreSQL 16 + PostGIS 3.4
**Frontend:** Next.js 14 + React 18 + Tailwind CSS + Zustand
**Frontend:** Next.js 15 + React 18 + Tailwind CSS + Zustand
**Testing:** Vitest + Jest + Playwright
**DevOps:** GitHub Actions + Docker + Kubernetes
**Monitoring:** Prometheus + Grafana + Loki + Sentry

View File

@@ -231,7 +231,7 @@ apps/web/
- **Unit Tests**: 6 spec files (limited coverage)
- **E2E Tests**: 15 Playwright tests
- **Technologies**:
- **Framework**: Next.js 14 with App Router
- **Framework**: Next.js 15 with App Router
- **Styling**: Tailwind CSS + class-variance-authority
- **State**: Zustand
- **Forms**: React Hook Form + Zod validation

View File

@@ -31,7 +31,7 @@ The **GoodGo Platform AI** is a well-architected Vietnamese real estate platform
goodgo-platform-ai/
├── apps/
│ ├── api/ # NestJS backend (3,001 files)
│ └── web/ # Next.js 14 frontend (864 files)
│ └── web/ # Next.js 15 frontend (864 files)
├── libs/
│ ├── ai-services/ # Python FastAPI services
│ └── mcp-servers/ # Model Context Protocol servers
@@ -199,7 +199,7 @@ pnpm test:e2e:web # Web-only E2E tests
---
## 3. FRONTEND STRUCTURE (Next.js 14)
## 3. FRONTEND STRUCTURE (Next.js 15)
### 3.1 Route Architecture (App Router)
@@ -1330,7 +1330,7 @@ Redis (Cache): ✅ Optional password
⚠️ Monitor large JSON fields (amenities, nearbyPOIs) for query slowness
**Frontend Optimization:**
✅ Next.js 14 with App Router
✅ Next.js 15 with App Router
✅ Tailwind CSS for minimal CSS
⚠️ Map component (Mapbox GL) could be lazy-loaded
@@ -1413,7 +1413,7 @@ Redis (Cache): ✅ Optional password
✅ HTTPS ready (Nginx reverse proxy)
✅ Frontend
✅ Modern framework (Next.js 14)
✅ Modern framework (Next.js 15)
✅ Responsive design (Tailwind CSS)
✅ Component library (Shadcn/Radix)
✅ State management (Zustand + React Query)
@@ -1650,7 +1650,7 @@ Architecture: Domain-Driven Design
### Frontend Stack
```
Framework: Next.js 14 (App Router)
Framework: Next.js 15 (App Router)
Language: TypeScript 5.4
UI Components: Shadcn/Radix UI
Styling: Tailwind CSS 3

View File

@@ -349,7 +349,7 @@
- ✅ Dynamic sitemap (`sitemap.ts`)
- ✅ robots.txt configuration
- ✅ i18n support (vi/en localization)
- ✅ Next.js 14.2 with optimizations
- ✅ Next.js 15.2 with optimizations
### Test Coverage ❌

View File

@@ -5,7 +5,7 @@
## 1. **App Structure** ✅
**Status**: GOOD - Next.js 14 App Router properly implemented
**Status**: GOOD - Next.js 15 App Router properly implemented
### Pages & Routes (22 pages total):
- **Public**: Landing (`/`), Search Results (`/search`), Listing Detail (`/listings/[id]`)

View File

@@ -12,7 +12,7 @@
The GoodGo Platform is a **sophisticated, production-ready monorepo** with comprehensive infrastructure, strong CI/CD pipelines, and excellent DevOps practices. The platform integrates:
- **Backend**: NestJS 11 + Prisma ORM + CQRS
- **Frontend**: Next.js 14 + React 18 + Tailwind CSS
- **Frontend**: Next.js 15 + React 18 + Tailwind CSS
- **Databases**: PostgreSQL 16 + PostGIS 3.4
- **Search**: Typesense 27
- **Cache/Async**: Redis 7

View File

@@ -1,4 +1,4 @@
# Next.js 14 → 15 Upgrade Risk Assessment
# Next.js 15 → 15 Upgrade Risk Assessment
**GoodGo Platform Web App**
**Assessment Date:** 2026-04-10
@@ -8,7 +8,7 @@
**Overall Risk Level: LOW**
This Next.js 14.2.35 application is well-positioned for a Next.js 15 upgrade with minimal friction. The codebase follows modern Next.js patterns (App Router exclusively) and has no deprecated features. The main upgrade path is straightforward with only minor library version compatibility checks needed.
This Next.js 15.2.35 application is well-positioned for a Next.js 15 upgrade with minimal friction. The codebase follows modern Next.js patterns (App Router exclusively) and has no deprecated features. The main upgrade path is straightforward with only minor library version compatibility checks needed.
---

View File

@@ -1,4 +1,4 @@
# Next.js 14.2.35 → 15 Upgrade Checklist
# Next.js 15.2.35 → 15 Upgrade Checklist
## ✅ Pre-Upgrade Verification