feat: full studio build -- light theme, canvas thumbnails, i18n (fa/en)
This commit is contained in:
+23
-2
@@ -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)
|
||||
Reference in New Issue
Block a user