summaryrefslogtreecommitdiff
path: root/apps/web/src/rendering/NOTES.md
diff options
context:
space:
mode:
authorMaze Winther <mazewinther@gmail.com>2026-05-02 16:44:19 +0200
committerMaze Winther <mazewinther@gmail.com>2026-05-02 16:46:13 +0200
commit19f1086492a7932c7a9d4030f3fc01fe39da58ef (patch)
tree44b7e97fa01b021f10c3858335324431c45bc47a /apps/web/src/rendering/NOTES.md
parent6423b352d6600791e6921f78af891dcb3db8d22b (diff)
parent8ab3aeba7c99cb634254d5c1f52fab3f5f4811b1 (diff)
downloadopencut-19f1086492a7932c7a9d4030f3fc01fe39da58ef.tar.gz
Merge branch 'domain-import'
Diffstat (limited to 'apps/web/src/rendering/NOTES.md')
-rw-r--r--apps/web/src/rendering/NOTES.md27
1 files changed, 0 insertions, 27 deletions
diff --git a/apps/web/src/rendering/NOTES.md b/apps/web/src/rendering/NOTES.md
deleted file mode 100644
index 38055c14..00000000
--- a/apps/web/src/rendering/NOTES.md
+++ /dev/null
@@ -1,27 +0,0 @@
-# Notes
-
-## `Transform` is misplaced
-
-`Transform` is currently defined in `apps/web/src/rendering/index.ts`. It's
-exported from the rendering domain because rendering happens to be one of its
-consumers — but every other domain that touches scene geometry consumes it too
-(`@/timeline`, `@/preview`, `@/animation/values`, `@/text`, etc.). It's not
-"of" rendering any more than `Vector2` would be "of" math.
-
-`Transform` is closer to a primitive than a domain concept. It's infrastructure:
-a small value type with no behavior, no dependencies, no domain-specific
-invariants. Anything that wants to position something on a 2D canvas needs it.
-
-The codebase should be refactored so it's defined lower-level, rather than
-sitting in a domain. Candidate homes:
-
-- `apps/web/src/primitives/transform.ts` (new dir for these value types)
-- `apps/web/src/geometry/transform.ts` if `Vector2` and friends end up there
-- `apps/web/src/rendering/transform.ts` is acceptable only if `@/rendering`
-becomes a primitives folder rather than a domain (it's borderline today —
-it also exports `BlendMode`, which has the same problem).
-
-Side effect of fixing this: `@/rendering/animation-values.ts` (which exists
-only because `Transform` lives next to it) can move into `@/animation/values.ts`
-alongside the other resolve-at-time helpers, since `Transform` would no longer
-pull in a domain dependency. \ No newline at end of file