feat: add ESP32 DIY platform Phase 1 (marketplace scaffold)

- Docker Compose with Postgres, Redis, MinIO, backend, frontend (port 3200/3201)
- Prisma schema: User, Project, ProjectFile, Product, Order, FlashToken, Review, AuditLog
- Backend: JWT auth, project CRUD + file upload (MinIO + sharp WebP), admin approval flow
- Frontend: React + Vite SPA with auth, project/shop browse, seller dashboard, admin panel
- Admin: pending approval queue, user management, audit log viewer, stats dashboard
- Audit logging middleware for legal compliance
- Admin init script: createAdmin.js
- Full design document in PLATFORM_DESIGN.md

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
root
2026-05-20 06:05:46 +09:00
parent bc5dd5dba7
commit bdef4b7ae0
46 changed files with 4372 additions and 0 deletions

19
platform/.env.example Normal file
View File

@@ -0,0 +1,19 @@
# PostgreSQL
DB_PASSWORD=change_this_strong_password
# MinIO (로컬 S3 스토리지)
MINIO_USER=minioadmin
MINIO_PASSWORD=change_this_strong_password
# JWT (openssl rand -hex 64 로 생성 권장)
JWT_SECRET=change_this_very_long_random_secret_string
# 배포 URL (DNS 설정 후 변경)
BASE_URL=http://localhost:3200
# 토스페이먼츠 (https://developers.tosspayments.com 에서 발급)
TOSS_CLIENT_KEY=test_ck_YOUR_KEY
TOSS_SECRET_KEY=test_sk_YOUR_KEY
# webflash 연동 내부 토큰 (임의 UUID)
WEBFLASH_INTERNAL_TOKEN=change_this_token