feat: full studio build -- light theme, canvas thumbnails, i18n (fa/en)

This commit is contained in:
Soroush.Asadi
2026-05-24 17:37:21 +03:30
parent d962483359
commit c61f587767
295 changed files with 29797 additions and 265 deletions
+23 -2
View File
@@ -1,6 +1,15 @@
# Project: CreatorStudio
# Project: FlatRender
# A Renderforest-style platform with Video Maker and Image Maker products.
## 🧠 Project Memory — READ THIS FIRST
# Before starting ANY task, read PROJECT_MEMORY.md at the project root.
# It contains: completed features, backlog, known bugs, architecture decisions,
# environment variable status, and the full file map.
# After completing a task, update PROJECT_MEMORY.md:
# - Move item from Backlog → Completed
# - Add any new bugs to Known Issues
# - Add a row to the Session Log with today's date and what changed
## Stack
- Next.js 14 App Router (never use pages/ directory)
- TypeScript (strict mode, no `any`)
@@ -55,4 +64,16 @@
- Never install axios — use native fetch
- Never add console.log to committed code
- Never create a component larger than 150 lines — split it
- Never skip TypeScript types on props — always define an interface
- Never skip TypeScript types on props — always define an interface
## Studio Modules
- Canvas editor uses React-Konva (never plain HTML5 canvas API)
- All canvas state lives in Zustand studio-store.ts
- ffmpeg.wasm runs in a Web Worker only (never on main thread)
- Studio pages are "use client" — they are 100% client components
- Timeline px-per-second default: 60 (1 second = 60px wide)
- Konva Stage base size: 1280x720 (scaled to container)
- Image editor and Video Studio share the same Layer type interface
- Server render API uses nexrender for After Effects pipeline
- Never block UI during ffmpeg processing — always show progress
- All studio panels are dark theme (bg-gray-900, text-white)